Lvm
一、pv vg pe lvm 的介绍
1.pv 物理卷 被lv命令处理过的物理分区
2.vg 物理卷组 被组装到一起的物理卷
3.pe 物理扩展 lvm 设备的最小存储单元 ,lvm 是pe 的整数倍
4.lvm 逻辑卷 直接使用的设备,可以增大缩减并保持原有数据不变
二、lvm 建立
1.分区并定时分区标签为 8e
2.pvcreate /dev/vdb1 创建物理卷
3.vgcreate vg0 /dev/vdb1 创建物理卷组
二、支持在线热拉伸
监控 watch -n 1 'pvs;vgs;lvs;df -h /mnt'
1.当vg 中剩余容量充足情况
lvextend -L 80M -n lv0 vg0 将设备拉伸80M
mkfs.xfs /dev/vg0/lv0 格式化
mount /dev/vg0/lv0 /mnt 挂载
xfs_growfs /dev/vg0/lv0 拉伸文件系统
2.当vg 中容量不足时
再次建立分区并修改标签8e
fdisk /dev/vdb
partprobe 更新分盘表
pvcreate /dev/vdb2 创建物理卷
vgextend vgo /dev/vdb2 创建物理卷组
lvextend -L 200M /dev/vg0/lv0 将设备拉伸200M
xfs_growfs /dev/vg0/lv0 格式化
三、针对ext文件系统设备的拉伸和缩减
1.拉伸
umont /mnt 卸载
mkfs.ext4 /dev/vg0/lv0 格式化
blkid
lvextend -L 250M /dev/vg0/lv0 将设备拉伸250M
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 将设备缩减100M
mount /dev/vg0/lv0 /mnt
3.缩减vg
1)移除空闲pv
vgreduce vg0 /dev/vdb2 移除物理卷组
2)移出含有数据的设备
vgextend vg0 /dev/vdb2
pvmove /dev/vdb1 /dev/vdb2 移除/dev/vdb1的数据
vgreduce vg0 /dev/vdb1 移除/dev/vdb1的vg0
pvremove /dev/vdb1 移除/dev/vdb1
四、lvm快照
1.创建快照
lvcreate -L 10M -n lv0-backup -s /dev/vg0/lv0 快照
mount /dev/vg0/lv0-backup /mnt
rm -fr /mnt/*
2.恢复坏掉的快照
umount /mnt
lvremove /dev/vg0/lv0-backup 删除快照
lvcreate -L 10M -n lv0-backup -s /dev/vg0/lv0 快照
mount /dev/vg0/lv0-backup /mnt 挂载
五、删除lvm
umount /mnt
lvremove /dev/vg0/lv0-backup 删除快照
lvremove /dev/vg0/lv0 删除/dev/vg0/lv0
vgremove vg0
pvremove /dev/vdb2 移除/dev/vdb2
pvs 查看是否删除