Linux查找大文件和目录 常用命令du和find【教程】

Linux查找大文件和目录 常用命令du和find【教程】p p du 用于统计目录磁盘占用 含硬链接去重 find 用于查找大文件 按逻辑大小 需加 xdev 和 type f 避免误扫 二者结果差异源于统计逻辑不同 幽灵文件需用 lsof l1 定位 du 和 find 是 Linux 下排查磁盘空间问题最直接有效的两个命令 但它们用途不同 行为差异大 混用或参数写错会导致结果不准甚至卡死

大家好,我是讯享网,很高兴认识大家。这里提供最前沿的Ai技术和互联网信息。



 

du用于统计目录磁盘占用(含硬链接去重),find用于查找大文件(按逻辑大小,需加-xdev和-type f避免误扫);二者结果差异源于统计逻辑不同,幽灵文件需用lsof +l1定位。

linux查找大文件和目录 常用命令du和find【教程】

dufind 是 Linux 下排查磁盘空间问题最直接有效的两个命令,但它们用途不同、行为差异大,混用或参数写错会导致结果不准甚至卡死。


根目录快满了?先别急着删文件,得知道谁占得最多。du -sh 本身只显示当前目录总大小,没用;真正关键的是加 –max-depth=1 限制层级,并配合 展开一级内容:

  • du -sh / 2>/dev/null —— 查根下所有一级目录/文件大小,2>/dev/null 过滤无权限报错(比如 /proc/sys
  • du -sh /var/* 2>/dev/null | sort -hr —— 进入疑似大户后,按大小倒序排列,一眼看出哪个子目录最吃空间
  • 注意:-h 是可读单位(K/M/G),但排序时必须用 sort -hr-h 支持人类单位,-r 倒序),仅用 sort -n 会把 10G 排在 2G 前面(因为字符串比较)

du 只能告诉你“哪块地大”,find 才能指出“哪栋楼超限”。常见错误是直接 find / -size +100M,结果扫到 /proc/dev 或挂载的 NFS 盘,要么报错,要么卡住:

  • 必须加 -xdev:限定只查当前文件系统,避免跨分区/挂载点扫描
  • 必须加 -type f:排除目录、设备文件、socket 等非普通文件,否则 /proc 下一堆伪文件会被误判
  • 大小写敏感:+100M 中的 M 必须大写,小写 m 表示 512 字节块,+100m ≈ 50KB,完全不是你要的“大文件”
  • 想看大小?接 -ls 或管道给 ls -lhfind /home -xdev -type f -size +500M -ls

有时 du -sh /var/log 显示 2G,但 find /var/log -type f -size +10M 找不出几个文件——这不是命令错了,而是两种统计逻辑不同:

  • du 统计的是实际占用的磁盘块(考虑硬链接去重),find -size 查的是文件 stat 返回的逻辑大小(每个硬链接都算一份)
  • 更隐蔽的情况:某个进程还在写一个已被 rm 的文件(如日志),find 找不到它(路径已删),但 du 仍计入(inode 没释放)。用 lsof +L1 能揪出这类“幽灵大文件”
  • du –apparent-size 可强制按逻辑大小统计,和 find -size 对齐,但默认不用它——你真正要清理的是磁盘块,不是文件名长度

看到 /var/log/journal 占了 8G,别立刻 rm -rf。journalctl 日志有压缩机制,直接删可能破坏 systemd 日志索引:

  • 查 journal 实际保留策略:journalctl –disk-usagejournalctl –vacuum-size=500M
  • 临时清空:journalctl –rotate && journalctl –vacuum-time=2d(保留两天)
  • /tmp 下的临时文件,优先用 tmpwatchsystemd-tmpfiles 管理,而不是手动 find … -delete
  • find … -delete 风险极高:没加 -print 预览就执行,删错不可逆。务必先跑一遍 find … -print 确认路径,再换 -delete

真正麻烦的从来不是命令记不住,而是不知道该信 du 的块数,还是 find 的字节数,或者进程还攥着哪个已删文件的句柄。

小讯
上一篇 2026-04-22 08:00
下一篇 2026-04-22 07:58

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/272776.html