答案1
使用以下方法查找包含大量磁盘空间的文件夹或文件
杜-HSC *
此命令将告诉你哪个文件夹包含大量数据。
注意:- 以 root 用户身份运行此命令。
答案2
如果您的驱动器“随机”填满,一个常见的解释是,您有某种形式的日志,正在转储大量信息,并且logrotate
正在定期清理它们。要确定所有logrotate
会轮换的内容,请查看/etc/logrotate.conf
文件和/etc/logrotate.d
目录。
我通常参考此文章或者本文当我需要在文件系统中查找大型文件或目录时。您可能需要专门定位大型文件或大型目录。这是因为写入磁盘的大量数据可能不是一个大文件,而是数千个小文件。
查找驱动器上最大的 20 个目录/
(请注意,您可能需要将其扩展到前 20 名之后,因为/var
,如果非常大,/var/log
则会/var/log/httpd
返回所有目录):/var/log/httpd
sudo du -a / | sort -n -r | head -n 20
查找驱动器上最大的 20 个文件/
:
sudo find / -type f -printf "%s\t%p\n" | sort -n | tail -20
另一个建议是查看您的/home
安装位置。它有自己的分区吗?还是由/
分区提供服务?如果是后者,那么某人或某些服务可能会无意中将大文件上传到其主目录。
如果上述方法未能解决您的问题,您能否详细说明一下df -h
驱动器报告的情况不是已满?当硬盘未满时,硬盘有多满?您能否将硬盘报告已满与未报告已满的情况与一天中的时间、一周中的哪一天、当前工作负载等联系起来?
答案3
我还推荐ncdu
一款很酷的工具,它比原来的工具信息量大得多du
。我已经用它很多年了。
当您运行 时ncdu
,输出将按大小排序;然后其 repl 允许您浏览目录树,并查看目录中哪些子目录最大。与 相比,它可以让您更清楚地了解问题du
。