【rockylinux】rockylinux下xfs格式缩小扩容其他目录大小
比如我们安装好系统后,发现/home目录下空间很大,但是/目录下却很小,所以可以缩小/home空间,扩容/目录,这里以rockylinux为例,其他linux系统也类似。
查看挂载点使用情况,这里重点关注/目录和/home目录以及/dev/mapper/rl-root和/dev/mapper/rl-home
[guest@localhost ~]$ df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 3.7G 84K 3.7G 1% /dev/shm
tmpfs 1.5G 13M 1.5G 1% /run
efivarfs 192K 87K 101K 46% /sys/firmware/efi/efivars
/dev/mapper/rl-root 70G 7.4G 63G 11% /
/dev/mapper/rl-home 160G 1.2G 159G 1% /home
/dev/nvme0n1p2 960M 460M 501M 48% /boot
/dev/nvme0n1p1 599M 7.1M 592M 2% /boot/efi
tmpfs 746M 108K 746M 1% /run/user/1000
查看两个目录是什么格式的,这里可以看到是rl-root xfs和rl-home xfs
[guest@localhost ~]$ lsblk -f
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS
nvme0n1
├─nvme0n1p1 vfat FAT32 DFE3-22BA 591.8M 1% /boot/efi
├─nvme0n1p2 xfs 364ab21f-2f5c-4767-a86b-c3e2fc9e030c 500.1M 48% /boot
└─nvme0n1p3 LVM2_member LVM2 001 NfBi96-blrg-tIjC-44Xm-gDhb-JMf4-Ap64Jw
├─rl-root xfs 828ab670-ee5e-45a6-b552-40518572a8e8 62.6G 11% /
├─rl-swap swap 1 41b5eddb-08ca-4e10-89e3-9b8a7ab66afd [SWAP]
└─rl-home xfs 2a47cfef-84e8-4008-83a2-17f121b0287c 158G 1% /home
查看卷组(硬盘)剩余空间
[root@localhost guest]# vgdisplay
--- Volume group ---
VG Name rl
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 4
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 3
Max PV 0
Cur PV 1
Act PV 1
VG Size <236.89 GiB
PE Size 4.00 MiB
Total PE 60643
Alloc PE / Size 60643 / <236.89 GiB
Free PE / Size 0 / 0
VG UUID 0bDsb4-erz2-9w6p-uVM0-FPC3-betm-hMvVaD
确认/home和/对应的逻辑卷名称(这里是:/dev/rl/home和/dev/rl/root)
[root@localhost guest]# lvdisplay
--- Logical volume ---
LV Path /dev/rl/swap
LV Name swap
VG Name rl
LV UUID 7qcKdi-D240-M0iz-UGIw-KxsT-jJ1E-lqjpyJ
LV Write Access read/write
LV Creation host, time localhost.localdomain, 2025-09-11 14:36:45 +0800
LV Status available
# open 2
LV Size <7.66 GiB
Current LE 1960
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:1
--- Logical volume ---
LV Path /dev/rl/home
LV Name home
VG Name rl
LV UUID QhxX3T-kfiC-BBIT-9daL-RPcO-aGX6-nCVfsn
LV Write Access read/write
LV Creation host, time localhost.localdomain, 2025-09-11 14:36:45 +0800
LV Status available
# open 1
LV Size 159.23 GiB
Current LE 40763
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:2
--- Logical volume ---
LV Path /dev/rl/root
LV Name root
VG Name rl
LV UUID DJoJnG-PJIp-g2rr-ILmj-4woG-5qyZ-PLz2j7
LV Write Access read/write
LV Creation host, time localhost.localdomain, 2025-09-11 14:36:45 +0800
LV Status available
# open 1
LV Size 70.00 GiB
Current LE 17920
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
备份/home目录下的文件
mkdir /home_bak
mv /home/* /home_bak
取消挂载/home,这里建议直接用root用户
umount /home
#### 如果提示进程忙,不让取消挂载,需要安装库,然后结束正在使用/home的进程
yum install psmisc
fuser -m /home
# 这里是得到进程id,如果有多个,需要全部kill
kill -9 3174
### 可以再次确认,强制检查文件系统(xfs)
e2fsck -f /dev/mapper/rl-home
执行删除逻辑卷
lvremove /dev/mapper/rl-home
创建卷,home目录,卷名为rl,50G为home目录分配的空间,可自行修改
# 这里说明,是给了50G,所以该大小必须是大于之前/home目录的所有文件大小,也就是以后/home一共只有50G
lvcreate -L 50G -n home rl
格式化文件系统以及重新挂载目录
mkfs -t xfs /dev/mapper/rl-home
# 挂载
mount /dev/mapper/rl-home /home
扩展根目录逻辑卷以及扩展根目录文件系统,增加/目录下的大小
lvextend -l +100%FREE /dev/mapper/rl-root
xfs_growfs /dev/mapper/rl-root
还原之前备份的/home下的数据,因为重新创建以及挂载了
mv /home_bak/* /home
rm -rf /home_bak/*
最后可以看到扩容成功
[root@localhost ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 3.7G 0 3.7G 0% /dev/shm
tmpfs 1.5G 11M 1.5G 1% /run
efivarfs 192K 87K 101K 46% /sys/firmware/efi/efivars
/dev/nvme0n1p2 960M 504M 457M 53% /boot
/dev/nvme0n1p1 599M 7.1M 592M 2% /boot/efi
tmpfs 746M 52K 746M 1% /run/user/42
overlay 180G 7.9G 172G 5% /var/lib/docker/overlay2/af3517cbeede7b7bb3f848c595eea54815bc0cc6b2cda5f0891f69c96ed408ac/merged
tmpfs 746M 36K 746M 1% /run/user/0
/dev/mapper/rl-home 50G 397M 50G 1% /home
/dev/mapper/rl-root 180G 7.9G 172G 5% /