pv ##物理卷(被lv命令组过的物理分区)
vg ##物理卷组(被u组装到一起的物理卷)
pe ##物理扩展(lvm设备的最小单元,lvm是pe的整数倍)
lvm ##逻辑卷(直接使用的设备,可以增大缩减并保持原有数据)
##lvm的建立##
1.分区并指定标签为8e
- pvcreate /dev/vdb1 ##把物理分区做成物理卷
- pvs | pvdisplay ##查看物理卷
- vgcreate vg0 /dev/vdb1 ##用制作好的/dev/vdb1这个物理卷制作一个物理卷组vg0
- vgs | vgdisplay ##查看物理卷组
- lvcreate -L 200M -n lv0 vg0 ##在vg0这个组中建立出lv0设备 -L 指定设备大小 -n 指定设备名字
- lvs | lvdisplay ##对逻辑卷设备进行查看
- mkfs.xfs /dev/vg0/lv0
mount dev/vg0/lv0 /mnt
df -h /mnt (换算方式不同h:1024,H:1000)
##lvm拉伸##
lvm支持热拉伸(在线)
1.针对xfs文件系统(xfs文件系统只能扩大不能缩减)
(1)当vg中的剩余容量充足时
- lvextend -L 80M /dev/vg0/lv0 ##拉伸设备
- 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/lv0 ##拉伸物理卷组到200M
- xfs_growfs /dev/vg0/lv0 ##拉伸文件系统(扩大xfs文件系统到设备大小)
2.针对ext文件系统的设备的拉伸和缩减
umount /mnt
mkfs.ext4 /dev/vg0/lv0
mount /dev/vg0/lv0 /mnt
(1)lvm拉伸
- lvextend -L 150M /dev/vg0/lv0
- resize2fs /dev/vg0/lv0 ##设定文件系统大小和设备同步
(2)lvm缩减
- umount /dev/vg0/lv0 ##卸载设备,因为文件系统缩减不支持在线操作
- e2fsck -f /dev/vg0/lv0 ##检测文件系统,确定文件系统中已有数据大小防止过度缩减
- resize2fs /dev/vg0/lv0 100M ##缩减设备文件
- lvreduce -L 100M /dev/vg0/lv0 ##缩减设备
- mount dev/vg0/lv0 /mnt
(3)缩减vg(在vg缩减时只能缩减没有被占用的设备)
- vgreduce vg0 /dev/vdb2
- vgextend vg0 /dev/vdb2
(4)数据迁移
- pvmove 设备1 设备2 ##把设备1上的所有数据移动到设备2上
例如:pvmove /dev/vdb1 dev/vdb2 (等待自动退出,ctrl+c退出会损坏数据) - vgreduce vg0 /dev/vdb1 ##把vg0中的/dev/vdb1删除
- pvremove /dev/vdb1 ##把/dev/vdb1上的lvm管理信息删除
##lvm快照##
扫描二维码关注公众号,回复:
4191952 查看本文章
- lvcreate -L 40M -n lv0-backup -s /dev/vg0/lv0
##给/dev/vg0/lv0建立快照,-L 指定快照大小,-n指定快照名字 -s指定快照模板设备 - mount /dev/vg0/lv0-backup /mnt
如果截取数据大于40M,会损坏设备 dd if=/dev/zero
of=/mnt/file bs=1M count=60
会自动卸载掉lv0-backup,再次挂载会报错
umount /mnt
lvremove /dev/vg0/lv0-backup
lvcreate -L 40M -n lv0-backup -s /dev/vg0/lv0 ##相当于设备的reset
再次挂载可以查看到源设备的数据