当Linux中系统中磁盘空间不足时需要对磁盘进行扩充或者挂载新的磁盘,但是当没有多余磁盘挂载时,可以通过将磁盘空间充裕的分区进行压缩,将多余出的空间分配给需要扩充的分区,本篇完成了将/home空间分配给根目录。
1. 检查当前磁盘状态
df -h
可以看到根目录才50G已经用完了,但是/home共144G才使用33M。所以计划从/home压缩130G分配给根目录,剩下的留给/home
2. 备份/home
在操作之前先将/home进行备份,由于占用空间大,这里将备份文件先放到/run下。。
tar cvf /run/home.tar /home
3. 卸载/home
这个操作是 卸载 /home
文件系统 ,不会删除数据。
umount /home
4. 删除/home所在的逻辑卷
这个操作是删除逻辑卷,会导致逻辑卷上的所有数据丢失,并且释放该逻辑卷占用的磁盘空间 ,执行前务必将数据进行过备份。
lvremove /dev/mapper/centos-home
5. 扩充根目录逻辑卷大小
lvextend -L +130G /dev/mapper/centos-root
6. 扩充 XFS文件系统 根目录的大小
xfs_growfs /dev/mapper/centos-root
7. 创建/home逻辑卷
lvcreate -L 14G -n /dev/mapper/centos-home
提示剩余空间不足,查阅了下资料,物理扩展PE是 LVM 中用于分配逻辑卷空间的基本单位 ,默认一个PE是 4MB,因此还剩下 13G
重新执行
8. 创建/home文件系统
mkfs.xfs /dev/mapper/centos-home
9. 挂载/home
mount /dev/mapper/centos-home
10. 恢复/home备份文件
tar xvf /run/home.tar -C /
11. 检查当前磁盘空间
df -h
到此为止就扩充成功了~
评论区