结论与总体说明
Ubuntu 支持在不中断业务的前提下对磁盘与分区进行在线扩容,但“是否可动态扩展”取决于你使用的方案:使用 LVM 或支持在线扩容的 ext4/xfs/btrfs 文件系统最灵活;传统静态分区也可扩容,但通常需要卸载或在救援环境中操作,复杂度更高。云盘或虚拟化场景下,先扩容底层磁盘,再扩展分区与文件系统即可完成在线扩容。
常见场景与做法
关键限制与注意事项
- 在线 vs 离线:LVM 与 ext4/xfs/btrfs 支持在线扩容;传统分区扩容常需卸载或在救援环境进行,生产环境应谨慎规划停机窗口。
- 收缩限制:多数文件系统对“在线收缩”支持受限或不支持,通常只能“先备份 → 离线收缩 → 再扩展”,务必先做完整备份。
- 文件系统差异:ext4 与 xfs 的扩容工具不同(resize2fs vs xfs_growfs),且 xfs_growfs 一般针对已挂载路径执行;btrfs 可用 btrfs filesystem resize 在线调整。
- 云与虚拟化:先扩容云盘/虚拟磁盘,再按分区与文件系统步骤扩容;确保底层存储与平台支持在线容量变更。
- 数据安全:任何扩容操作都有数据风险,务必先备份关键数据,并在变更窗口内执行。
快速判断与常用命令
- 判断是否有 LVM:lsblk 查看是否存在 /dev/mapper/*;pvs/vgs/lvs 查看物理卷、卷组、逻辑卷信息。
- 常用检查与扩容命令:
- 查看:df -h(文件系统)、lsblk(块设备)、pvs/vgs/lvs(LVM 状态)
- LVM 扩容:lvextend -l +100%FREE <LV_PATH>;resize2fs <LV_PATH>(ext4)或 xfs_growfs <挂载点>(xfs)
- 非 LVM 扩容:growpart /dev/sda <PART_NUM>;resize2fs /dev/sda1(ext4)或 xfs_growfs <挂载点>(xfs)
- 云盘识别新大小:echo “- - -” | sudo tee /sys/block/sda/device/rescan
- 图形化工具:GParted 支持分区调整(LVM 内部细节建议用命令行确认)。