Expand CentOS-Root Section
在服务器上装 CentOS 的时候,选择了让安装程序自动为磁盘进行分区,结果 2T 的硬盘只给 centos-root
分了 50 个 G。调研了一下,即使不重装系统也能重新进行分区,记录如下。
Environment:CentOS 7.6.1810
1. Procedure
首先对 centos-home
进行备份,并卸载分区:
$ tar cvf /tmp/home.tar /home # 备份home分区
$ fuser -km /home/ # 杀死正在使用home分区的进程
$ umount /home/ # 卸载home目录
$ lvremove /dev/mapper/centos-home # 卸载centos-home分区
接下来往 centos-root
上新增 500G 的空间(具体看物理机的磁盘大小),并扩展 centos-root
文件系统:
$ lvextend -L +500G /dev/mapper/centos-root # 追加空间到centos-root
$ xfs_growfs /dev/mapper/centos-root # 扩展centos-root
扩展完 centos-root
后,对 centos-home
进行重新分配以及挂载,最后将原来备份的数据进行恢复:
$ lvcreate -l +100%FREE -n /dev/mapper/centos-home # 将磁盘剩余空间全部分配给centos-home
$ mkfs.xfs /dev/mapper/centos-home # 创建文件系统
$ mount /dev/mapper/centos-home # 挂载centos-home
$ tar xvf /tmp/home.tar -C /home/ # 解压备份数据
$ cd /home/home/ && mv * ../ # 解压后多了一层home目录,需要额外处理
最后查看磁盘分区情况,已经重新分配完毕,可以正常使用了:
$ df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 63G 0 63G 0% /dev
tmpfs 63G 29M 63G 1% /dev/shm
tmpfs 63G 20M 63G 1% /run
tmpfs 63G 0 63G 0% /sys/fs/cgroup
/dev/mapper/centos-root 550G 56G 495G 11% /
/dev/sda2 1014M 210M 805M 21% /boot
/dev/sda1 200M 12M 189M 6% /boot/efi
tmpfs 13G 8.0K 13G 1% /run/user/42
tmpfs 13G 0 13G 0% /run/user/0
/dev/mapper/centos-home 1.3T 5.4G 1.3T 1% /home
tmpfs 13G 20K 13G 1% /run/user/1000
2. References
linux 使用–根目录空间不足,追加空间到根目录下 - 拓荒者
4 lvcreate Command Examples on Linux - skytech