AWS EC2卷扩容后20GiB空间缺失问题咨询
问题原因与解决方案
你遇到的情况很常见:底层EBS卷已经成功扩容到40GiB,但文件系统还没有跟上扩容操作,所以df命令只能识别到原来的20GiB空间。
为什么会这样?
lsblk显示的是块设备的物理容量,这里xvda1已经是40G,说明AWS那边的卷扩容已经生效了。df显示的是文件系统的可用空间,你的文件系统还停留在扩容前的20GiB,所以看不到新增的20GiB。
解决步骤
1. 确认文件系统类型
先执行以下命令查看根目录的文件系统类型:
df -T /
输出里的Type列会显示文件系统(EC2默认AMI大多是ext4,也可能是xfs)。
2. 扩容文件系统
根据文件系统类型选择对应的命令:
- 如果是ext4/ext3/ext2:
直接执行命令扩容文件系统到块设备的最大容量:sudo resize2fs /dev/xvda1 - 如果是XFS:
XFS需要指定挂载点(而非设备名),执行:sudo xfs_growfs /
3. 验证结果
执行以下命令确认空间已生效:
df -h --total
此时你应该能看到/dev/xvda1的Size变成40GiB了。
额外说明
这些操作都是在线完成的,不需要重启实例,也不会影响正在运行的服务(如果磁盘已经100%满,建议先清理少量临时空间再操作,避免扩容过程中出现异常)。
内容的提问来源于stack exchange,提问作者gilad s
相关产品推荐
相关产品推荐

