####1.lvm#####
pv ##物理卷
被lv命令处理过的物理分区
vg ##物理卷组
被组装到一起的物理卷
pe ##图里扩展
lvm设备的最小储存单元lvm时pe的整数倍
lvm ##逻辑卷
直接使用的设备,可以增大缩减并保存原有数据不变
##2.lvm建立##
1.分区并设定分区标签为8e
pvcreate /dev/vdb1 ##把物理分区做成物理卷
vgcreate vg0 /dev/vdb1 ##用制作好的/dev/vdb1这个物理卷制作一个物理卷组vg0
lvcreate -L 20M -n lv0 vg0 ##在vg0这个组中建立出lv0设备 -L 指定设备大小 -n 指定设备名字
mkfs.xfs /dev/vg0/lv0
mount /dev/vg0/lv0 /mnt
df -H /mnt
##3.lvm的拉伸###
lvm支持热拉伸
1.当vg中的剩余容量充足情况
lvextend -L 176M /dev/vg0/lv0 ##扩大lvm设备到176M
xfs_growfs /dev/vg0/lv0 ##扩大xfs文件系统到设备大小
2.当vg中的容量不足时
再次建立分区并修改标签8e
pvcreate /dev/vdb2 ##在pv中增加一块设备/dev/vdb2
vgextend vg0 /dev/vdb2 ##把新建立的/dev/vdb2添加到vg0中
lvextend -L 200M /dev/vg0/vg0
xfs_growfs /dev/vg0/lv0
3.针对ext文件系统的设备的拉伸和缩减
umount /mnt ##卸载设备,因为文件系统缩减不支持在线操作
mkfs.ext4 /dev/vg0/lv0
mount /dev/vg0/lv0 /mnt
lvextend -L 250M /dev/vg0/lv0
resize2fs /dev/vg0/lv0 ### 设定文件系统大小和设备同步
##拉伸
lvextend -L 250M /dev/vg0/lv0 ##扩大lvm设备到250M
resize2fs /dev/vg0/lv0 ##设定文件系统大小和设备同步
##缩减
##缩减lvm
umount /dev/vg0/lv0 ##卸载设备,因为文件系统缩减不支持在线操作
e2fsck -f /dev/vg0/lv0 ##检测文件系统,确定文件系统中已有数据大小防止过度缩减
resize2fs /dev/vg0/lv0 100M ##把文件系统缩减到100M
lvreduce -L 100M /dev/vg0/lv0 ##设备缩减到100M
mount /dev/vg0/lv0 /mnt/
#缩减vg
在vg缩减时只能缩减没有被占用的设备
移除空间pv
vgreduce vg0 /dev/vdb2 ##移除/dev/vdb2 物理卷组vg
移除含有数据的设备
pvmove /dev/vdb1 /dev/vdb2 ##先将/dev/vdb1的数据移到/dev/vdb2中
vgreduce vg0 /dev/vdb1 ##移除/dev/vdb1 物理卷组vg
pvremove /dev/vdb1 ##移除/dev/vdb1 物理卷pv
##lvm快照###
lvcreate -L 40M -n lv0-backup -s /dev/vg0/lv0 ##给/dev/vg0/lv0建立快照,-L 指定快照大小,-n指定快照名字 -s指定快照模板设备当快照设备里的数据被更改,如果想还原,删除快照设备,在重新建立快照即可
mount /dev/vg0/lv0-backup /mnt
rm -rf /mnt/*
umount /mnt
lvremove /dev/vg0/lv0-backup
lvcreate -L 40M -n lv0-backup -s /dev/vg0/lv0
mount /dev/vg0/lv0-backup /mnt
##4.lvm的删除###
lvremove—->vgremove—–>pvremove
lvremove /dev/vg0/lv0-backup
lvremove /dev/vg0/lv0
vgremove vg0
pvremove /dev/vdb2