XFS是centos7 预装的操作系统,XFS只能扩大不能缩小,所以需要利用xfsdump / xfsrestore 工具在必须缩小lvm 的情况下,备份与还原资料。
本实验的效果是:
1,/dev/mapper/centos-home仅仅保留5G;
2,将/home分出来的空间分给/dev/mapper/centos-root。
原始空间大小如下图示:
# df -hT
文件系统 类型 容量 已用 可用 已用% 挂载点
devtmpfs devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs tmpfs 1.9G 13M 1.9G 1% /run
tmpfs tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/mapper/centos-root xfs 50G 4.0G 47G 8% /
/dev/mapper/centos-home xfs 845G 33M 845G 1% /home
/dev/sda1 xfs 1014M 167M 848M 17% /boot
tmpfs tmpfs 378M 60K 378M 1% /run/user/0
step1:安裝 xfsdump 套件
yum -y install xfsdump
step2:备份 /home
xfsdump -f /home.xfsdump /home
please enter label for this dump session (timeout in 300 sec)
-> home
please enter label for media in drive 0 (timeout in 300 sec)
-> home
step3:缩减/dev/mapper/centos-home大小
卸載 /home
# umount /home
將 /home 的 Logical Volume 縮減為 5GB
# lvreduce -L 5G /dev/mapper/centos-home
Do you really want to reduce home? [y/n]: y
step4:增加/dev/mapper/centos-root的空间大小
# lvextend -l +100%FREE /dev/centos/root
延展 xfs 空间
# xfs_growfs /dev/centos/root
step5:恢复/home的内容
格式化 /home 的 lvm
# mkfs.xfs -f /dev/mapper/centos-home
挂载 /home /dev/mapper/centos-home
# mount /home
还原备份资料到 /home
# xfsrestore -f /home.xfsdump /home
调整过后的空间大小如下图示:
# df -hT
文件系统 类型 容量 已用 可用 已用% 挂载点
devtmpfs devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs tmpfs 1.9G 13M 1.9G 1% /run
tmpfs tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/mapper/centos-root xfs 891G 4.0G 887G 1% /
/dev/sda1 xfs 1014M 167M 848M 17% /boot
tmpfs tmpfs 378M 60K 378M 1% /run/user/0
/dev/mapper/centos-home xfs 5.0G 33M 5.0G 1% /home