ext4 分区上没有剩余空间,文件总数未达到已用空间且没有足够的 inode

ext4 分区上没有剩余空间,文件总数未达到已用空间且没有足够的 inode

在新创建的机器上,它的根 ext4 分区据称空间已不足。

当对分区上的所有文件进行汇总时,总使用空间并不接近 df 所指出的已使用空间。inodes 足够可用且保留空间设置为 3%,命名空间中没有绑定挂载。

> df /
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/xvda2       6061632 5900308         0 100% /
> df -h /
Filesystem       Size  Used Avail Use% Mounted on
/dev/xvda2       5,8G  5,7G     0 100% /


> find / -mount -type f -exec du {} + | sort -r -h | awk '{SUM += $1} END {print SUM}'
1312200

> df -i /
Filesystem     Inodes  IUsed  IFree IUse% Mounted on
/dev/xvda2     393216 134814 258402   35% /

更新:

没有打开句柄,占用也“经受住了”重新启动

 > lsof | sort -n -k7,7 | tail -n 2
sort       1162      root  mem       REG              202,2 99164480      19610 /usr/lib/locale/locale-archive
tail       1163      root  mem       REG              202,2 99164480      19610 /usr/lib/locale/locale-archive

我正在寻找据称占据空间的方法(以及如何占据空间)?

解决方案:

@michael-hampton 提到的上一个问题 磁盘已满,du 显示不同。如何进一步调查? 解决了我的问题:我在 /opt 中的路径上进行了 nfs 挂载 - 挂载时磁盘上的 4.4GB 文件在命名空间中“隐藏”且不可见。卸载所有远程文件系统后,我能够发现这些文件。

答案1

您可能有一个已被删除的文件,但文件描述符仍然由进程打开。

看一眼lsof | grep deleted

答案2

如果已满,写入新文件将会失败并出现错误。

尝试基于树的磁盘使用情况工具,例如ncdu 您可以看到层次结构各级的最大目录。

相关内容