扩展/dev/sdb后,如何使/dev/sdb1文件系统容量在/store生效?
解决ext4分区扩容后文件系统容量未更新的问题
问题背景
- 文件系统现状:
df -kh /store显示/dev/sdb1挂载于/store,容量50G,已用45G,可用1.9G,使用率97% - 已完成操作:将
/dev/sdb扩容20G,通过删除重建分区将空间加入/dev/sdb1,当前/dev/sdb总容量70G,/dev/sdb1分区容量70G - 异常:
/store未显示扩容后容量,pvresize提示无物理卷,vgs/vgdisplay无卷组信息,fstab配置为/dev/sdb1 /store/ ext4 defaults 0 0
原因分析
你使用的是直接挂载的ext4分区,而非LVM逻辑卷,因此LVM相关命令(pvresize、vgs等)完全不适用。分区扩容后,需要手动扩展文件系统本身,让它识别新的分区容量。
解决步骤
1. 确认分区容量
先验证/dev/sdb1的实际分区大小是否为70G:
lsblk /dev/sdb # 或者 fdisk -l /dev/sdb
输出中应看到/dev/sdb1的SIZE字段为70G。
2. 检查并修复文件系统错误
扩容前必须确保文件系统无损坏,优先卸载分区(如果业务允许):
umount /store
若无法卸载(提示设备忙),可先检查占用进程:
lsof /store
结束相关进程后再卸载,或使用强制卸载(谨慎操作):
umount -l /store
执行文件系统检查:
e2fsck -f /dev/sdb1
按提示输入y确认修复。如果无法卸载,可执行只读检查(仅排查错误,不修复):
e2fsck -n /dev/sdb1
3. 扩展ext4文件系统
- 若分区已卸载:
resize2fs /dev/sdb1
- 若分区无法卸载(ext4支持在线扩容):
resize2fs /dev/sdb1
该命令会自动将文件系统扩展到整个分区的可用空间。
4. 验证结果
重新挂载分区(如果之前卸载过):
mount /store
执行df -kh /store查看容量,此时/store的总容量应显示为70G左右,可用空间相应增加。
内容的提问来源于stack exchange,提问作者Abhishek Anand
相关产品推荐
相关产品推荐

