lvm
1.lvm构成
pv ##物理卷
被lv命令处理过的物理分区
vg ##物理卷组
被组装到一起的物理卷
pe ##扩展
lvm设备的最小存储单元lvm是pe的整数倍
lvm ##逻辑卷
直接使用的设备,可以增大缩减并保持原有数据不变
查看命令: pvs;echo ===;vgs;echo ===;lvs;echo ===;df -h /mnt
2.lvm的建立
pvcreate /dev/vdb1 ##添加物理分区vdb1
vgcreate vg0 /dev/vdb1 ##将物理分区vdb1组装到物理卷vg0中
lvcreate -L 20M -n lv0 vg0 ##给逻辑分区lv0分配物理卷vg0的20M内存
mkfs.xfs /dev/vg0/lv0 ##格式化逻辑分区
mount /dev/vg0/lv0 /mnt ##挂载逻辑卷
df -H /mnt ##用挂载查看逻辑卷的大小
3.lvm的拉伸
lvm的扩展(xfs和ext4文件类型都支持)
文件系统(Filesystem)的拉伸取决于文件的本身特性(xfs)
lvextend -L 350M /dev/vg0/lv0 ##根据vg0的剩余空间,扩展那lv0
xfs_growfs /dev/vg0/lv0 ##刷新文件系统查看当前的大小
pvcreate /dev/vdb3 ##为pv再加一块硬盘设备
vgextend vg0 /dev/vdb3 ##根据pv中的vdb8给vg0扩展
lvextend -L 500M /dev/vg0/lv0 ##根据扩展后的vg0给lv0扩展
xfs_growfs /dev/vg0/lv0 ##刷新文件系统查看扩展后的大小
lvm的缩减(ext4文件类型支持)
umount /mnt/ ##卸载
e2fsck -f /dev/vg0/lv0 ##格式化文件类型为ext4
resize2fs /dev/vg0/lv0 800M ##更改文件大小为800m
mount /dev/vg0/lv0 /mnt ##挂载
lvreduce -L 1000M /dev/vg0/lv0 ##缩减lv到500M的空间
lvm的快照
lvcreate -L 50M -n /dev/vg0/lv0_snap -s /dev/vg0/lv0 ##快照lv0
mount /dev/vg0/lv0_snap /mnt ##挂载快照
ls /mnt ##查看文件内容
rm -fr /mnt/* ##利用快照的挂载对文件内容进行删除操作
umount /mnt ##卸载
lvremove /dev/vg0/lv0_snap ##删除快照(因为快照对母盘进行了错误的操作)
lvcreate -L 50M -n /dev/vg0/lv0_snap -s /dev/vg0/lv0##重新快照lv0
mount /dev/vg0/lv0——snap /mnt ##重新挂载快照
ls /mnt/ ##查看文件内容,发现上一个快照的挂载操作生效,文件又恢复了
lvm的删除
umount /mnt ##卸载
lvremove /dev/vg0/lv0_snap ##删除lv
lvremove /dev/vg0/lv0
vgremove bg0 ##删除lv所对应的vg
pvremove /dev/vdb6
pvremove /dev/vdb8 ##删除vg所对应的pv
fdisk /dev/vdb
d
6 ##删除pv的设备
partprobe ##更改