在 Linux 系统中,查找大文件常用以下几种方法,按使用频率从高到低说明,适用于大多数发行版(CentOS、Ubuntu、Debian、Rocky 等)。
find(最常用)find / -type f -size +500M
| 单位 | 含义 |
|---|---|
| k | KB |
| M | MB |
| G | GB |
示例:
find / -type f -size +1G # 大于 1G
find /home -type f -size +100M # /home 下大于 100M
find / -type f -size +500M -exec du -h {} + | sort -rh | head -20
du -h:人类可读格式sort -rh:按大小倒序head -20:显示前 20 个✅ 最实用命令之一
du 查找大目录(不是单个文件)du -h --max-depth=1 | sort -rh
du -h /var --max-depth=1 | sort -rh
适合排查:
/var/log/var/lib/tmpls 查找当前目录大文件ls -lhS | head -20
说明:
-S:按大小排序ncdu(交互式,强烈推荐)yum install ncdu -y # CentOS/RHEL
apt install ncdu -y # Ubuntu/Debian
ncdu /
✅ 优点:
find / -type f -size +1G -exec rm -f {} \;
⚠ 建议先确认再删除
find / -type f -size +1G -print
可能是已删除但仍被进程占用:
lsof | grep deleted
| 需求 | 推荐命令 |
|---|---|
| 快速找大文件 | find / -type f -size +500M |
| 排序查看 | `find … -exec du -h {} + |
| 磁盘分析 | ncdu |
| 定位目录 | du -h --max-depth=1 |
如果你愿意,可以告诉我:
df -h)我可以帮你精准定位问题。