linux在线扩容磁盘需满足 LVM 管理逻辑卷且文件系统为 ext4 或 XFS;先用 df -hT、lsblk、vgs&&lvs确认条件,再按卷组有空闲空间或需添加新 硬盘 两种情况执行 lvextend 及对应文件系统扩展命令。

linux 系统 在线扩容磁盘,核心前提是:使用 LVM 管理逻辑卷 + 文件系统支持在线扩展(如 ext4、XFS)。只要满足这两点,就无需关机、无需卸载分区,全程可热操作。
确认当前是否具备在线扩容条件
先执行三组命令快速判断:
- df -hT:查看目标挂载点(如 /home)的文件系统类型(ext4 或xfs均可在线扩)和当前使用率
- lsblk:观察是否有未使用的物理磁盘(如 /dev/sdb)或卷组中剩余空间(VG Free 非 0)
- vgs && lvs:确认卷组(VG)有空闲 PE,且目标逻辑卷(LV)属于该 VG(如/dev/vgroot/lvhome)
情况一:卷组已有空闲空间 → 直接扩展 LV+FS
适用于 VG 里还有 Free PE(比如 vgs 显示VFree 500.00g):
- 扩展逻辑卷:lvextend -L +200G /dev/vgroot/lvhome(加 200GB)
- 刷新文件系统:
• ext4/ext3:resize2fs /dev/vgroot/lvhome
• XFS:xfs_growfs /home(注意:填挂载点,不是设备路径)
情况二:需添加新 硬盘 → 先纳管再扩容
当只有新物理盘(如/dev/sdb)但尚未加入 LVM 时:
- 初始化为物理卷:pvcreate /dev/sdb
- 加入现有卷组:vgextend vgroot /dev/sdb(vgroot 替换成你自己的 VG 名)
- 验证扩容结果:vgs 看 Free 是否增加
- 后续同“情况一”,执行 lvextend 和对应文件系统刷新命令
关键注意事项
- 所有命令均以 root 权限运行;建议操作前用 df -h 和lsblk截图留档
- XFS 必须用xfs_growfs 挂载点(如/home),不能写设备路径,否则报错
- ext4 的 resize2fs 可对已挂载分区操作,但不建议在高 IO 时段执行
- 若原分区非 LVM(如直接/dev/sda1),则无法在线扩——必须转 LVM 或重建分区(需停机)