Linux安装的centos虚拟机,其中/dev/mapper/centos-root磁盘占满问题
1、首先查看当前的磁盘空间
[root@localhost /]# df -h
这个图为重新分配容量后的截图,初始/dev/mapper/centos-root的空间为50G,100%使用,初始/dev/mapper/centos-home的空间为143G
2、确定解决方案
删除/dev/mapper/centos-home,给/dev/mapper/centos-root增加容量,重新创建小容量的/dev/mapper/centos-home。
操作步骤
1、首先备份根路径下的home文件
由于/dev/mapper/centos-root空间100%占用,发现没有足够的空间存储home的备份文件。
- 查看当前根路径下哪个文件有足够容纳备份文件的空间
[root@localhost /]# du -sh * | sort -nr
- 发现只有这个文件下有足够的空间,于是我先把这个虚拟机备份一份
- 然后将当前datafs文件夹清空,将home备份到datafs文件夹下
[root@localhost /]# tar cvf /datafs/home.tar /home
- 再将home.tar上传到本地先保存起来
- 最后删除当前虚拟机,将备份的虚拟机解压并启动。
2、备份好后,卸载/home
[root@localhost /]# umount /home
可能会卸载失败,则先强行终止再进行卸载
[root@localhost /]# fuser -km /home/
[root@localhost /]# umount /home
3、删除centos-home(腾出143G空间)
[root@localhost /]# lvremove /dev/mapper/centos-home
4、扩展centos-root逻辑卷(这里我只增加了50G)
[root@localhost /]# lvextend -L +50G /dev/mapper/centos-root
5、扩展root文件系统
[root@localhost /]# xfs_growfs /dev/mapper/centos-root
6、重新创建/dev/mapper/centos-home(原来的143G用了50G,还有93G,这边预留了3G,只用了90G)
[root@localhost /]# lvcreate -L 90G -n /dev/mapper/centos-home
这里可能会出volume group mapper not found,可以换一种命令执行(使用默认卷组名进行创建)
[root@localhost /]# lvcreate -L 90G -n home centos
7、创建home文件系统
[root@localhost /]# mkfs.xfs /dev/mapper/centos-home
8、挂在到home上
[root@localhost /]# mount /dev/mapper/centos-home
9、由于对root系统进行了扩展,所以当前空间足够再容纳之前备份的home.tar包,远程上传opt文件夹后
[root@localhost /]# tar xvf /opt/home.tar -C /home/
解压后可能会存在多级目录/home/home的问题,执行移动文件夹命令
[root@localhost /]# cd /home/home
[root@localhost /]# mv * ./home
10、此时,输入命令查看
[root@localhost /]# df-h
已成功对/dev/mapper/centos-root进行了扩展