如果我们在安装系统是采用自定义分区的话,就可以提前规划好这个事情。但是如果平常没注意就直接采用默认安装的方式的话。一旦 根目录的容量耗尽,将会影响业务的运行。今天我们来扩容逻辑卷。
默认安装的话会给home目录分比较多的空间,我们可以把home的容量进行缩容,以扩容给根目录使用。
1. 通过df -Th命令,查看分区使用情况
通过上面我们可以发现根分区和home分区产生极大的不合理性,home分区太大了,所以这里我们将对home分区缩小存储空间并把压缩的存储空间添加到root下面
2. 将/dev/mapper/centos-home缩容
XFS 是 centos7 预装的操作系统,XFS 只能扩大不能缩小。所以需要利用 xfsdump 、xfsrestore 工具在必须缩小 lvm 的情况下,备份与还原资料。即将其他目录备份后,然后进行一个缩容和格式化,然后再进行还原。
由于是使用 centos 系统,基本都是使用 root 用户操作,但是 centos 默认给根目录分配得较小,home
目录空间比较大。本教程的效果是缩减 /dev/mapper/centos-home
的空间 ,将 home
分出来的空间分给/dev/mapper/centos-root
。
1、备份/home 数据
2、卸载/ home。 umount /home
3、移除/ home所在的lv lvremove /dev/mapper/centos-home
3. 扩展 /dev/mapper/centos-root 的大小,增加500G
lvresize -L +500G /dev/mapper/centos-root
4. 验证添加是否成功
发现还是没有成功,是因为没有同步到文件系统
5. 更新到文件系统
xfs_growfs /dev/mapper/centos-root
再次查看已经正常显示
6. 还原 home 目录
# 格式化 home 的 lvm
mkfs.xfs -f /dev/mapper/centos-home
# 挂载 /home
mount /dev/mapper/centos-home /home
# 还原备份资料到 /home
xfsrestore -f /home.xfsdump /home
请务必小心执行每一步,并在操作前做好数据备份。
注意:
1. 使用LVM方式扩容磁盘报错:Couldn‘t create temporary archive name.
解决:因为磁盘太满了,将日志文件删除一些即可。
2. 寻找是哪些文件占用比较高
解决:使用du -h -x --max-depth=1 查看哪个目录占用过高
du -h -x --max-depth=1 /
通过分析我们发现是/usr占用比较大,继续命令走起
du -h -x --max-depth=1 /usr
删除暂用较高的不需要的文件,问题解决。