先用lsblk和df -h确认磁盘分区与挂载状态,再依云平台扩容磁盘并内核重扫描,接着用fdisk/gdisk扩展分区表,最后按ext4/xfs/lvm类型执行对应文件系统扩容命令并用df -h验证。

确认当前磁盘与分区状态
先用 lsblk 查看块设备整体布局,重点关注目标磁盘(如 /dev/vdb)是否已有未分配空间,或是否已挂载、是否有 LVM 结构。再用 df -h 看文件系统使用情况,明确要扩容的是哪个挂载点(比如 /data)。如果底层是 LVM,还需运行 pvdisplay、vgdisplay、lvdisplay 确认物理卷、卷组、逻辑卷的剩余空间和扩展能力。
扩展底层存储(云主机或虚拟机场景)
若磁盘本身容量未增加,需先在宿主机或云平台(如阿里云、AWS、VMware)中为该磁盘扩容。操作完成后,在 Linux 内部执行:
- echo 1 > /sys/class/block/vdb/device/rescan(替换 vdb 为实际磁盘名),强制内核重新识别磁盘大小
- 再次运行 lsblk,确认磁盘容量已更新(例如从 20G 变为 50G)
扩展分区表(如使用 MBR/GPT 分区)
若磁盘已有分区(如 /dev/vdb1),需扩展该分区以占用新增空间:
- 使用 fdisk /dev/vdb(MBR)或 gdisk /dev/vdb(GPT)删除旧分区并新建更大分区(注意:仅重写分区表,不格式化,起始扇区必须与原分区一致)
- 执行 partprobe /dev/vdb 或重启 udev,让系统识别新分区大小
- 验证:lsblk 中 vdb1 的 SIZE 应与磁盘总大小一致
扩展文件系统
根据文件系统类型选择对应命令,确保数据安全前提下在线扩容:
- ext4:运行 resize2fs /dev/vdb1(若挂载中可直接执行;若未挂载,需先 e2fsck -f /dev/vdb1 检查)
- xfs:必须已挂载,执行 xfs_growfs /data(填挂载点路径,非设备名)
- LVM 逻辑卷:先用 lvextend -l +100%FREE /dev/vgname/lvname 扩展 LV,再按上述对应文件系统命令扩容
最后用 df -h 确认挂载点容量已生效。










