由于本人的Centos7是安装时自动分区的,给根目录不多,/home 较大,根目录很容易满了,现在打算收回home的部分空间,扩容根目录。
(0)需求:
根目录磁盘满了,发现/home空间很足,几乎没用,如:
[root@S01 ~]# df -lh
Filesystem Size Used Avail Use% Mounted on
...
/dev/mapper/centos_s01-root 50G 50G 20K 100% /
...
/dev/mapper/centos_s01-home 198G 33M 197G 1% /home
[root@S01 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 256G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 255G 0 part
├─centos_s01-root 253:0 0 50G 0 lvm /
├─centos_s01-swap 253:1 0 7.9G 0 lvm [SWAP]
└─centos_s01-home 253:2 0 197.1G 0 lvm
sr0 11:0 1 973M 0 rom
(1)备份 /home:
xfsdump -f /tmp/u01.xfsdump /home
或者使用 tar进行备份:
tar -czvf /root/home.tgz -C /home .
-检测备份
tar -tvf /root/home.tgz
(2)缩减 /home 空间:
2.1 减少 /home 分区 150G 空间
lvreduce -L -150G /dev/mapper/centos_s01-home
2.2 重新格式化“centos_s01-home”:
mkfs.xfs -f /dev/mapper/centos_s01-home
2.3 挂载“centos_s01-home”:
mount /dev/mapper/centos_s01-home /home
(3)恢复 /home:
恢复/home数据:
xfsrestore -f /tmp/u01.xfsdump /home/
或
tar -xzvf /root/home.tgz -C /home
(4)扩容根目录 / 空间:
4.1 将上面收缩的 150G 划分 100G 给“/dev/mapper/centos_s01-root”:
lvextend -L +100G /dev/mapper/centos_s01-root
4.2 需要使用命令xfs_growfs,使生效:
xfs_growfs /dev/mapper/centos_s01-root
(5)检验:
查看一下是否满足需求了:
[root@S01 ~]# df -lh
Filesystem Size Used Avail Use% Mounted on
......
/dev/mapper/centos_s01-root 150G 17G 134G 12% /
......
/dev/mapper/centos_s01-home 48G 33M 48G 1% /home
[root@S01 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 256G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 255G 0 part
├─centos_s01-root 253:0 0 150G 0 lvm /
├─centos_s01-swap 253:1 0 7.9G 0 lvm [SWAP]
└─centos_s01-home 253:2 0 47.1G 0 lvm /home
sr0 11:0 1 973M 0 rom
大功告成~~