Linux 排查大文件, 两步搞定

Linux 排查大文件, 两步搞定

展示两个常用命令的用法、示例与注意事项。


1. 查看根目录下各一级目录大小(升序)

shell 复制代码
du -sh /* 2>/dev/null | sort -h

用途 :快速查看哪个一级目录占用空间最多,定位要深入排查的子树。
参数说明

  • du -s:仅显示每个条目的总计。
  • -h:可读(K/M/G)。
  • 2>/dev/null:屏蔽因无权限导致的错误信息。
  • sort -h:按人类可读数值排序(升序 )。如需 降序 ,改为 sort -hr

示例输出

bash 复制代码
4.0K    /dev
16K     /bin
120M    /boot
1.5G    /var
8.2G    /usr
20G     /home

2. 查找大文件(>500MB),并显示详细信息

bash 复制代码
find / -type f -size +500M -exec ls -lh {} + 2>/dev/null

用途 :从根开始查找超过 500MB 的普通文件,显示权限、拥有者、大小、修改时间与路径。
参数说明

  • find / -type f -size +500M:匹配大于 500MB 的文件。
  • -exec ls -lh {} + :对每个匹配文件执行 ls -lh(逐个显示详细信息)。
  • 2>/dev/null:屏蔽无权限访问的错误。
    示例输出
bash 复制代码
-rw-r--r-- 1 root  root 1.2G Apr 10 12:00 /var/log/huge.log
-rw-r--r-- 1 mysql mysql 3.5G Jun 02 03:21 /var/lib/mysql/ibdata1
-rw-r--r-- 1 user  user 700M Jul 15 09:10 /home/user/video.mov

重要注意事项(三点)

  1. 权限与速度 :从 / 搜索可能很慢并且会遇到权限问题。必要时在具体挂载点(如 /var/home)运行或使用 sudo
  2. 已删除但仍占用空间 :如果删除文件后空间未释放,可能是进程仍持有文件句柄;用 lsof -nP +L1 查找并重启/杀进程释放空间。
  3. 操作前先备份:删除或截断大文件前先确认用途并备份(特别是数据库与日志文件),避免影响服务。

小结

  • du -sh /* 2>/dev/null | sort -h 快速定位哪个一级目录占空间
  • find / -type f -size +500M -exec ls -lh {} + 2>/dev/null 列出大文件并进一步处理。
相关推荐
敲上瘾5 分钟前
Docker镜像构建优化指南:CMD/ENTRYPOINT、多阶段构建与缓存优化
运维·缓存·docker·容器·架构
ζั͡山 ั͡有扶苏 ั͡✾7 小时前
EFK 日志系统搭建完整教程
运维·jenkins·kibana·es·filebeat
jun_bai8 小时前
python写的文件备份网盘程序
运维·服务器·网络
欢喜躲在眉梢里9 小时前
CANN 异构计算架构实操指南:从环境部署到 AI 任务加速全流程
运维·服务器·人工智能·ai·架构·计算
weixin_537765809 小时前
【容器技术】虚拟化原理与Docker详解
运维·docker·容器
胡斌附体9 小时前
docker健康检查使用
运维·docker·依赖·健康检查
云飞云共享云桌面9 小时前
无需配置传统电脑——智能装备工厂10个SolidWorks共享一台工作站
运维·服务器·前端·网络·算法·电脑
福尔摩斯张9 小时前
《C 语言指针从入门到精通:全面笔记 + 实战习题深度解析》(超详细)
linux·运维·服务器·c语言·开发语言·c++·算法
虚伪的空想家10 小时前
arm架构服务器使用kvm创建虚机报错,romfile “efi-virtio.rom“ is empty
linux·运维·服务器·javascript·arm开发·云原生·kvm
火车头-11010 小时前
【docker 部署nacos1.4.7】
运维·docker·容器