警告!
本文为虚拟机环境,生产环境请务必在操作前优先备份重要数据!
再有,请确保所需扩充的分区为非进程占用分区
实验背景:当时规划系统分区时/(根)目录分配过小
实验目的 : 无损增大/(根)分区容量
方案:
一、所在卷组(vg)有空闲,直接将空闲空间分配给/(根)挂载的逻辑卷(LV);
二、所在卷组(vg)已全部分配,无空闲空间,可系统增加一块盘,做物理卷(pv)加入到卷组(vg),达到扩充卷组空间,再将空闲的卷组空间划分给/(根)挂载的逻辑卷(LV);
三、所在卷组(VG)已全部分配,无空闲空间,VG下有其他LV有多余空间可分配出来。将这部分空间转移到/(根)下。
下面实验就是用方案三做演示:
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-可爱的分隔符=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
可以看到/已经达到了75%,我们要将test下的空间转移一部分到/下,下面详细介绍从lv_test分区下取出10G的空间添加到lv_root分区上去。
查看卷组和逻辑卷
[root@swnode1 ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
lv_root vg_swnode1 -wi-ao---- 21.89g #/分区所在lv的空间
lv_test vg_swnode1 -wi-ao---- 19.99g #/test所在lv的空间
重新设定lv_test的大小(先调整文件系统大小)
[root@swnode1 ~]# resize2fs -p /dev/mapper/vg_swnode1-lv_test 10G //-p查看进度
提示先进行此命令检查
[root@swnode1 ~]# e2fsck -f /dev/mapper/vg_swnode1-lv_test
重新执行下文件系统缩容
mount下查看缩减后
将逻辑卷lv_test也减少到文件系统大小
[root@swnode1 ~]# lvreduce -L 9.8G /dev/mapper/vg_swnode1-lv_test
2、增加VG下可用空间到根目录(注:扩容时顺序和缩容相反,先扩lv再文件系统)
查看vg的空闲空间
[root@swnode1 ~]# vgdisplay
将空闲空间划分到/
[root@swnode1 ~]# lvextend -L +10.19G /dev/vg_swnode1/lv_root
现在设定分区文件系统大小
[root@swnode1 ~]# resize2fs -p /dev/vg_swnode1/lv_root
再次查看扩容结果
可能遇到的问题
1、在卸载/test目录的时候失败
可先执行如下fuser命令解除磁盘占用,然后再umount即可:
2、在设定lv_root的大小时,不要把Free PE / Size的空间全部都用上,这很可能会出现Free PE空间不足的现象,建议保留一点Free PE的空间。
3、重启后进入不到系统,提示文件损坏