lvm逻辑卷扩容分三步:先检查卷组空闲空间,再扩展逻辑卷,最后调整文件系统;可在线完成。卷组有空闲时直接lvextend加resize2fs或xfs_growfs;无空闲则需新增物理盘并vgextend;磁盘扩容后须pvresize同步。

扩展 LVM 逻辑卷的存储空间,核心是三步:先确保卷组有空闲空间,再扩大逻辑卷本身,最后让文件系统“感知”到新空间。整个过程可在线完成,无需重启或卸载。
确认当前空间状态
先看清“家底”,避免盲目操作:
- 运行 df -h 查看哪个挂载点空间紧张(比如
/home或/var) - 用 lsblk 或 lvdisplay 找出对应逻辑卷路径(如
/dev/vg0/lv_home) - 执行 vgdisplay vg0(把
vg0换成你的卷组名),重点看Free PE / Size—— 这是你能直接分配的余量
卷组有空闲空间:直接扩 LV + 文件系统
如果上一步看到 Free PE > 0,说明 VG 里还有“存货”,直接加给 LV:
- 扩展逻辑卷: lvextend -l +100%FREE /dev/vg0/lv_home(全部用完空闲空间) 或 lvextend -L +5G /dev/vg0/lv_home(只加 5GB)
- 同步刷新文件系统:
• ext4/xfs 等常见格式必须跟一步,否则
df -h不会变大 • ext4:运行 resize2fs /dev/vg0/lv_home • xfs:运行 xfs_growfs /home(注意:这里填挂载点,不是设备路径)
卷组没空闲空间:先加物理盘再扩容
当 vgdisplay 显示 Free PE 为 0,就得往 VG “仓库”里进货:
- 接入新硬盘(如
/dev/sdb),用 fdisk /dev/sdb 创建一个分区(如sdb1),类型设为8e(Linux LVM) - 执行 partprobe 刷新内核分区表,确保
/dev/sdb1可见 - 初始化为物理卷:pvcreate /dev/sdb1
- 加入现有卷组:vgextend vg0 /dev/sdb1
- 再次 vgdisplay vg0,确认 Free PE 已增加,之后回到上一步扩 LV
特殊情况:已有磁盘扩容后需同步 PV
如果是虚拟机热添加磁盘容量(比如从 20G 扩到 30G),或物理盘扩容了但 LVM 还不知道:
- 先用 fdisk -l /dev/sdb 确认底层设备容量已更新
- 运行 pvresize /dev/sdb(注意:这里是整块盘,不是分区)—— 它会让 PV 自动吸收新增容量
- 后续步骤同“卷组有空闲空间”处理











