温馨提示×

怎样查找Linux大文件

小樊
69
2026-08-25 06:44:34
栏目: 智能运维

在 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
  • /tmp

四、使用 ls 查找当前目录大文件

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

如果你愿意,可以告诉我:

  • 你的 Linux 版本
  • 磁盘挂载情况(df -h
  • 是服务器还是容器

我可以帮你精准定位问题

0