centos,是基于Red Hat Linux提供的可自由使用源代码的企业级Linux发行版本;是一个稳定,可预测,可管理和可复制的免费企业级计算平台。
最近在尝试通过物理机安装 CentOS,官方镜像默认安装时,如果没有手动分区,默认设置是会将 home 单独分区,系统分区默认为 50 GB,这里提供方法将 home 分区合并到 root 分区。
1.查看当前系统分区情况
输入命令:df -h
[root@192 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 3.8G 0 3.8G 0% /dev
tmpfs 3.8G 16K 3.8G 1% /dev/shm
tmpfs 3.8G 9.0M 3.8G 1% /run
tmpfs 3.8G 0 3.8G 0% /sys/fs/cgroup
/dev/mapper/centos-root 50G 2.2G 48G 5% /
/dev/sda2 1014M 144M 871M 15% /boot
/dev/sda1 200M 12M 189M 6% /boot/efi
/dev/mapper/centos-home 165G 33M 165G 1% /home
tmpfs 761M 0 761M 0% /run/user/0
2.备份home分区的文件
备份打包文件到/tmp/home.tar,如果home分区下没有文件,可以省略这一步。
tar cvf /tmp/home.tar /home
3.卸载home分区
umount /home
4.取消开机自检home目录
卸载home分区后,如果不做这一步,会在开机阶段卡住。
vi /etc/fstab
加#号注释掉这一行,避免开机自检:
# /dev/mapper/centos-home /home xfs defaults 0 0
提示:如果不会vi或vim操作,先按i键,然后移动光标输入#号注释掉上面这一行,再按Esc键,输入:,再输入wq,最后按Enter回车键即可。
5.删除home目录所在的lv
输入命令:lvremove /dev/mapper/centos-home
注意:centos-home替换成你自己的硬盘分区路径,参考第1步的命令df -h
如果 home 目录存在进程,使用命令fuser -m -v -i -k /home终止 home 下的进程
[root@192 ~]# lvremove /dev/mapper/centos-home
Do you really want to remove active logical volume centos/home? [y/n]: y
Logical volume "home" successfully removed
6.扩展root目录所在的lv将剩下全部可用大小都分配给root
lvextend -l 100%FREE /dev/mapper/centos-root
# 如果只加部分,可以指定大小,例如只增加1G大小:
lvextend -L +1G /dev/mapper/centos-root
7.扩展root目录文件系统
xfs_growfs /dev/mapper/centos-root
8.重新查看分区
输入命令:df -h,注意到分区已经改变了:
[root@192 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 3.8G 0 3.8G 0% /dev
tmpfs 3.8G 16K 3.8G 1% /dev/shm
tmpfs 3.8G 9.0M 3.8G 1% /run
tmpfs 3.8G 0 3.8G 0% /sys/fs/cgroup
/dev/mapper/centos-root 215G 2.2G 213G 1% /
/dev/sda2 1014M 144M 871M 15% /boot
/dev/sda1 200M 12M 189M 6% /boot/efi
tmpfs 761M 0 761M 0% /run/user/0
9.最后重启系统
reboot
前面第2步备份的文件还原到home目录中
tar -xvf home.tar -C /