有时候发现lvm中vg创建不合理,想要回收资源,例如创了两个vg,想要弄成一个。

备份数据

卸载文件系统

1
umount /data

删除lv

1
2
3
lvdisplay

lvremove /dev/sylink/data

删除vg

1
2
3
vgdisplay

vgremove sylink

删除pv

如果需要将原硬盘重新分区之类,可以继续删除pv,如果是和我一样保留pv,只是想加入别的vg,那这里就不需要删除pv

1
pvremove /dev/sdb1

pv加入其他vg

那这里后续步骤其实和磁盘扩容就一样了

1
2
3
4
5
6
# 查看现有vg,确认需要扩容的vg的VG name
vgdisplay

vgextend sylink /dev/sda1

lvcreate -n data -L 500G sylink

磁盘挂载

这里我还是将/data目录挂载到新创建的lv下

1
2
3
4
mount /dev/mapper/data /data

# 查看挂载
lsblk

挂载不上处理

这里发现mount命令正常执行,无报错,但是实际并未正确挂载,查看/var/log/message,发现报错Unit backup.mount is bound to inactive unit dev-vg_data-lv_backup.device. Stopping, too ,这是因为/data目录已经被挂载绑定,解决方案很简单

1
2
3
4
5
6
7
8
systemctl daemon-reload

#重新挂载
mount /dev/mapper/data /data

# 查看挂载,成功
lsblk