You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS EC2 Linux实例/dev/xvda1显示100%占用,du统计根目录仅用9.2G

AWS EC2 Linux实例根分区空间异常排查方案

1. 排查已删除但未释放的孤儿文件

进程打开的文件被删除后,磁盘空间不会立即释放,df会统计为已占用,但du无法检测到这类文件。

  • 执行命令查找:
    sudo lsof | grep deleted
    
  • 处理方式:找到输出中对应的进程,优先重启该进程;若无法重启,可终止进程释放空间。注意:核心服务进程(如数据库、Web服务)需谨慎操作,提前备份数据。

2. 检查挂载点下的隐藏文件

若在挂载其他分区前,根分区的挂载点目录(如/mnt、/media)已写入文件,挂载后这些文件会被隐藏,du -x会跳过挂载点导致统计遗漏。

  • 临时卸载挂载点(确保挂载点无正在使用的文件)后查看:
    sudo umount /mnt
    du -sh /mnt
    
  • 或直接查找根分区内的大文件(限制仅扫描当前分区):
    find / -xdev -type f -size +1G | sort -h
    
  • 处理方式:备份隐藏文件后删除,重新挂载分区。

3. 查看文件系统保留空间

ext系列文件系统默认会为root用户保留5%的磁盘空间,用于系统紧急操作,这部分空间会被df统计为已用,但du无法统计。

  • 查看保留空间设置:
    dumpe2fs /dev/xvda1 | grep -i reserved
    
  • 调整保留空间(按需操作,不建议设为0):
    sudo tune2fs -m 1 /dev/xvda1
    
    上述命令将保留空间调整为总容量的1%。

4. 检查文件系统一致性

磁盘文件系统可能存在错误,导致空间统计异常。

  • 卸载分区后执行文件系统检查(需确保实例处于单用户模式或已卸载分区,避免损坏数据):
    sudo umount /dev/xvda1
    sudo fsck /dev/xvda1
    
  • 处理方式:修复检测到的文件系统错误后,重新挂载分区查看空间。

5. 排查特殊文件与稀疏文件

部分稀疏文件、大日志文件或特殊文件可能导致df与du统计差异,可直接扫描根分区内的大文件:

find / -xdev -type f -exec ls -lh {} \; | sort -k5 -nr | head -20

找到大文件后,确认是否为必要文件,非必要则备份后删除。

内容的提问来源于stack exchange,提问作者rahul mishra

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 21:39:18