不同卷组中,LVM逻辑卷扩容和缩减
举例简述:新建一个虚拟机,根分区20G, /opt50G分别在两个不同的卷组。
1.缩减/opt到30G,将剩余的20G给根分区
2.opt数据不能丢失。
- 虚拟机安装
pv | vg | lv | Value |
---|---|---|---|
/dev/sda2 | unikylin0 | root | 20G |
/dev/sda3 | unikylin1 | opt | 50G |
开机后使用df -Th查看文件系统
- 查看命令
pvs或pvdisplay查看物理卷
vgs或vgdisplay查看逻辑卷
lvs或lvdisplay查看逻辑卷
解决思路:
1.备份/opt,cp拷贝或者tar压缩;
2.卸载/opt;
3.删除逻辑卷/opt、卷组unikylin1、物理卷;
4.重新规划分区/dev/sda3;
5.扩展卷组unikylin0、扩展逻辑卷、刷新文件系统;
6.创建新的卷组,加入/opt逻辑卷。
- 代码实现
备份:
tar -czvf 存放的位置 /opt
存放位置不能放在opt磁盘分区
卸载:
umount /opt
卸载后使用df -Th 查看
移除opt(顺序:逻辑卷、卷粗、物理卷)
lvremove /dev/unikylin1/opt
vgremove unikylin1
pvremove /dev/sda
重新配置磁盘分区Linux LVM:
/dev/sda3:20G
/dev/sda4:30G
磁盘分区后使用partprobe刷新一下再格式化(否则格式化报错)
partprobe
mkfs.ext4 /dev/sda3
mkfs.ext4 /dev/sda4
将新的分区创建新的物理卷
pvcreate /dev/sda3
pvcreate /dev/sda4
扩展root逻辑卷(扩展顺序:卷组、逻辑卷、刷新文件系统)
vgextend unikylin /dev/sda3
lvextend -l +100%FREE /dev/unikylin/root
resize2fs /dev/unikylin/root
扩展后用df -Th查看root分区增加了20G
新增opt分区(新增顺序:卷组、逻辑卷、格式化、刷新文件系统):
vgcreate unikylin1 /dev/sda4
create -n opt -l +100%FREE unikylin1
mkfs.ext4 /dev/unikylin1/opt
resize2fs /dev/unikylin1/opt
重新挂载mount /dev/unikylin1/opt /opt/
/opt 容量为30G
最后总结一下:虽然可以实现不同卷组的扩容与缩减,但是不够灵活失去LVM真实意义,如果卷组1中有较多的逻辑卷,工作量较大。希望能找到更好的方法实现。