CentOS系统中动态调整LVM分区大小
接上一篇文档,介绍了非LVM情况下压缩/根分区磁盘容量的操作
CentOS6下压缩/根分区磁盘容量的操作说明
那如何在LVM分区下实现动态调整分区大小呢,如下图所示

LVM分了三个区分别为/bak,/storage,/log,由于/bak分区空间只有9.8GB,由于不够用,目前想从/storage分区划分一部分空间给/bak分区,具体操作如下
1、先取消挂载/storage目录 umount /storage
如果提示设备忙,用lsof /storage查看 /storage目录被哪些进程使用,然后kill-9 杀掉这些进程,再重新卸载

2、这时可以看到df -Th查看确认/storage是否卸载成功

3、执行resize2fs -p /dev/mapper/vg_linuxserver-lv_storage 20G //将/storage分区缩小至20GB大小
这时会提示先运行e2fsck -f /dev/mapper/vg_linuxserver-lv_storage
输入e2fsck -f /dev/mapper/vg_linuxserver-lv_storage //进行分区检测
再执行这条命令resize2fs -p /dev/mapper/vg_linuxserver-lv_storage 20G

5、接下来执行lvreduce -L 20G /dev/mapper/vg_linuxserver-lv_storage //释放空间

6、释放空间之后记得重新挂载/storage目录,若有程序在分区上运行记得还原

7、接下来vgdisplay查看可用空间大小

8、将上面的Free PE/Size 的空间全部用于扩展lv_bak虚拟分区
lvextend -l 4880 /dev/mapper/vg_linuxserver-lv_bak

9、重设lv_bak分区大小
resize2fs -p /dev/mapper/vg_linuxserver-lv_bak

10、接下来df –Th查看调整后分区大小情况

可以看到/bak分区已经变为19.1G大小了
以上就是动态调整LVM分区大小的基本操作