https://www.ysidc.top/csr/lvm_auto_extend.sh
操作步骤
使用 f disk 创建新分区 (vda3), 重启系统使分区表生效
将新分区初始化为物理卷 (pvcreate)
将其加入现有卷组 (vgextend), 实现卷组空间扩展。
扩展逻辑卷 (lvextend)
扩容文件系统 (resize2fs 或 xfs_growfs)
使用 fdisk 在已有 磁盘上创建一个新的主分区 vda3, 并占用磁盘所有剩余空间, 为后续 LVM 扩容做准备。
完成分区操作后, 建议重启系统以使新分区表生效。重启后再继续进行 LVM 的后续操作。
查看逻辑卷与卷组信息
查看系统中的逻辑卷 (LV) 和卷组 (VG) 信息, 便于确认扩容目标。
lvdisplay
记下根目录的逻辑卷名。这里是 root
[root@server ~]# lvdisplay
--- Logical volume ---
LV Path /dev/rl_server/root
LV Name root
VG Name rl_server
LV UUID oi22tV-mRCx-3HAD-GLQI-HzjU-wH8Z-86Gnl3
LV Write Access read/write
LV Creation host, time server, 2025-09-24 00:01:11 +0800
LV Status available
# open 1
LV Size <3.00 GiB
Current LE 767
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
查看卷组 (VG) 信息
vgdisplay
记下 root 所使用的卷组名, 这里使用的是 rl_server
[root@server ~]# vgdisplay
--- Volume group ---
VG Name rl_server
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 2
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 1
Act PV 1
VG Size <3.00 GiB
PE Size 4.00 MiB
Total PE 767
Alloc PE / Size 767 / <3.00 GiB
Free PE / Size 0 / 0
VG UUID IqoFnK-lWT3-jLmP-4a0j-iRbS-6sRj-eRRAsr
创建物理卷
将 vda3 分区初始化为 LVM 可用的物理卷。
操作系统
[root@server ~]# pvcreate /dev/vda3
Physical volume "/dev/vda3" successfully created.
扩展卷组
将新建的物理卷 vda3 加入到目标卷组 rl_server 中, 扩展卷组容量。
[root@server ~]# vgextend rl_server /dev/vda3
Volume group "rl_server" successfully extended
查看卷组剩余空间
确认卷组扩容后剩余的可用空间。
[root@server ~]# vgdisplay
--- Volume group ---
VG Name rl_server
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 2
Act PV 2
VG Size 49.49 GiB
PE Size 4.00 MiB
Total PE 12670
Alloc PE / Size 767 / <3.00 GiB
Free PE / Size 11903 / <46.50 GiB
VG UUID IqoFnK-lWT3-jLmP-4a0j-iRbS-6sRj-eRRAsr
可以看到现在 rl_server 多出了 46.50 GiB 的可使用空间
计算机驱动器和存储设备
此时卷组已拥有全部新空间, 可以选择全部分配给根分区, 也可以预留部分空间用于新建 swap 分区等。
扩展逻辑卷与文件系统
扩展逻辑卷 (LV) 并扩容文件系统, 使新增空间可被操作系统使用。
扩展逻辑卷
将卷组中的空闲空间分配给目标逻辑卷。
# lvextend -L 扩展后逻辑卷该有的大小 /dev/卷组名/逻辑卷名 [-r]
[root@server ~]# lvextend -l +100%FREE /dev/rl_server/root
Size of logical volume rl_server/root changed from <3.00 GiB (767 extents) to 49.49 GiB (12670 extents).
Logical volume rl_server/root successfully resized.
扩展文件系统
扩展文件系统以识别并使用逻辑卷新增的空间。
提示: 部分发行版支持在 lvextend 时直接加 -r 参数自动扩容文件系统。
ext4 文件系统
resize2fs -p /dev/rl_server/root
xfs 文件系统
xfs 文件系统, 扩容命令如下:
xfs_growfs /dev/rl_server/root
本镜像使用 xfs 文件系统, 扩容命令如下
Linux 与 Unix
[root@server ~]# xfs_growfs /dev/rl_server/root
meta-data=/dev/mapper/rl_server-root isize=512 agcount=4, agsize=196352 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=0
= reflink=1 bigtime=1 inobtcount=1 nrext64=0
data = bsize=4096 blocks=785408, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=16384, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 785408 to 12974080
至此, 系统分区已成功扩容
验证扩容结果
你可以通过 df -h 命令确认根分区已成功扩容。
[root@server ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 982M 0 982M 0% /dev/shm
tmpfs 393M 5.4M 388M 2% /run
/dev/mapper/rl_server-root 50G 2.0G 48G 5% /
/dev/vda1 448M 231M 218M 52% /boot
tmpfs 197M 0 197M 0% /run/user/0







