du -sh 和 df -h 给出不同的输出

du -sh 和 df -h 给出不同的输出

我收到一条警报,指出我的 3 个挂载点已满 91%,我需要清除文件。当我运行df -h命令时,它指出挂载点已满 91%,但是当我尝试在du -sh *要清除文件的目录中运行时,它并没有显示占用的空间几乎为 1 GB。此外,当我运行时, find /mount-point -xdev -size +100000000c -exec ls -lhtr {} \; 它在文件大小方面没有提供令人满意的输出。

您能帮我找到上述问题的解决方案吗?我的想法是找到该挂载点的打开文件列表,然后杀死 PID,这样如果有任何消耗空间的死文件可以被清除,但我无法找到一种方法来做到这一点。

(在Solaris 10中找不到fuser和lsof的语法来执行此操作)

答案1

这将搜索具有未链接的打开文件的所有进程。找到与您的路径匹配的路径并将其删除。

默认情况下,Solaris 中不存在 lofs。

find /proc/*/fd -type f -links 0 -exec ls -lrt {} \;

相关内容