网站首页 > 教程分享 正文
在某个深夜的紧急维护中,当您发现根目录剩余空间不足1%时;在持续构建失败却找不到原因时;当服务器响应速度突然变慢时——找到那些吞噬磁盘空间的"元凶文件"往往是解决问题的第一步。
某电商平台数据库服务器突发IO阻塞,经排查发现是某个PHP进程持续写入的10GB错误日志文件。运维团队使用du -sh *逐层查找耗时27分钟,而使用本文介绍的组合命令仅需8秒即可锁定目标。
- 跨多级目录快速检索
- 排除特定文件类型干扰
- 精准识别隐藏的分散大文件
- 处理特殊字符文件名
du命令
查看当前目录各子目录大小(人类可读格式)
du -h --max-depth=1 | sort -hr
查找前10大目录(排除挂载点)
du -xh / 2>/dev/null | sort -rh | head -n 10
进阶技巧:筛选大于500MB的目录
du -h --threshold=3M /etc 2>/dev/null
关键参数
- -x 防止跨越文件系统边界
- --apparent-size 显示文件表面大小而非磁盘占用
- --time 显示最后修改时间
find命令
查找/etc下大于1M的文件(精确到字节)
find /etc -type f -size +1048576 -exec ls -lh {} \; 2>/dev/null
按时间维度搜索(最近30天修改过的500MB+文件)
find /var -mtime -30 -size +500M -printf "%s\t%p\n" | sort -n
高级格式输出
使用-printf自定义输出格式:
%Tk 最后修改时间(k替换为@=秒数,+=可读格式)
%U 属主名称
%b 占用磁盘块数
ls与排序结合
按文件大小逆序显示前20项(含隐藏文件)
ls -AlhS --group-directories-first | head -n 20
显示inode使用情况(排查大量小文件问题)
ls -i | sort -n | tail -n 15
sort命令
按第5列(大小)数字逆序排序
du -h /etc | sort -k5 -hr
混合排序:优先目录后文件,按大小降序
find . -type d -exec du -s {} \; 2>/dev/null | sort -n | cut -f2 | xargs du -sh
非常规场景
稀疏文件检测
查找实际占用小于表面大小的文件
find . -type f -printf "%S\t%p\n" | awk '$1 < 1.0'
LVM快照空间回收
定位快照中占用最大的COW块
lvs -o +devices,metadata_percent
Docker容器空间清理
查找体积最大的容器层
docker system df -v | grep GB | sort -k5 -h
自动化运维:定时扫描与预警
Shell脚本示例
#!/bin/bash ALERT_THRESHOLD=1073741824 # 1GB LOG_FILE="/var/log/big_files_$(date +%Y%m%d).log" find / -type f -size +${ALERT_THRESHOLD}c -exec ls -lh {} \; 2>/dev/null > ${LOG_FILE} if [ -s ${LOG_FILE} ]; then echo "发现超大文件!" | mail -a ${LOG_FILE} -s "磁盘空间警报" admin@example.com fi
Systemd定时器配置
# /etc/systemd/system/disk-check.timer [Unit] Description=Daily disk space check [Timer] OnCalendar=daily Persistent=true [Install] WantedBy=timers.target
禁忌与陷阱
- /proc与/sys目录的误判风险
虚拟文件系统的特殊处理:
find /proc -size +100M # 永远返回空结果
- NFS挂载点的性能雪崩
使用-xdev避免网络遍历:
find /mnt/nfs -xdev -size +1G
- ext4目录索引的优化策略
当单个目录文件过多时:
tune2fs -O dir_index /dev/sda1
猜你喜欢
- 2025-04-29 3种方法找出哪个进程在监听一个特定的端口
- 2025-04-29 linux搜索命令
- 2025-04-29 Linux使用pidof命令来快速查找进程id
- 2025-04-29 [Linux Shell]简单的文件查找脚本
- 2025-04-29 Linux上使用的文本内容搜索工具--recollgui | 统信 | 麒麟 | 方德
- 2025-04-29 Linux实战之:ldd查找缺失依赖
- 2025-04-29 在 Linux 中查找 IP 地址的 3 种简单方法
- 2025-04-29 在 Linux 中查找系统信息
- 2025-04-29 在linux目录行中找空目录
- 2025-04-29 Linux 的这几种搜索方式,你都会了吗?
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- css导航条 (66)
- sqlinsert (63)
- js提交表单 (60)
- param (62)
- parentelement (65)
- jquery分享 (62)
- check约束 (64)
- curl_init (68)
- sql if语句 (69)
- import (66)
- chmod文件夹 (71)
- clearinterval (71)
- pythonrange (62)
- 数组长度 (61)
- javafx (59)
- 全局消息钩子 (64)
- sort排序 (62)
- jdbc (69)
- php网页源码 (59)
- assert h (69)
- httpclientjar (60)
- postgresql conf (59)
- winform开发 (59)
- mysql数字类型 (71)
- drawimage (61)
本文暂时没有评论,来添加一个吧(●'◡'●)