Linux磁盘空间排查实战:从df到du的完整诊断链路

问题场景

生产环境磁盘使用率突破阈值,需要快速定位空间占用源并制定清理策略。

诊断链路

1. 全局视图:df定位分区

bash 复制代码
df -h  # 人类可读格式
df -i  # 检查inode耗尽情况

2. 目录级排查:du统计占用

bash 复制代码
# 一级目录占用排序
du -sh /* 2>/dev/null | sort -hr | head -10

# 深度遍历(谨慎使用)
du -h --max-depth=2 /var | sort -hr | head -20

3. 文件级定位:find精准打击

bash 复制代码
# 查找大文件(>100MB)
find / -type f -size +100M -exec ls -lh {} \; 2>/dev/null

# 查找最近7天修改的大文件
find /var/log -type f -mtime -7 -size +50M

常见陷阱

陷阱1:已删除文件未释放空间

bash 复制代码
lsof | grep deleted
# 需要重启占用进程或kill -HUP

陷阱2:隐藏的Docker占用

bash 复制代码
docker system df  # 查看Docker空间占用
docker system prune -a --volumes  # 清理悬空资源

陷阱3:inode耗尽但空间充足

bash 复制代码
df -i  # 检查inode使用率
find / -xdev -type f | cut -d "/" -f 2 | sort | uniq -c | sort -n

预防措施

  • 配置logrotate自动轮转日志
  • 设置磁盘使用率告警(建议80%阈值)
  • 定期清理临时文件和旧备份
  • 监控Docker镜像和容器数量
相关推荐
深入云栈5 小时前
Netty 4.2.x 源码深度解析 (十四):KQueue 传输 —— macOS 高性能 IO 的 Netty 实现
java·后端
一只公羊5 小时前
在 Ubuntu 26.04 LTS (Root) 下使用 uv 丝滑安装 Microsoft MarkItDown
后端
计算机魔术师5 小时前
英伟达联合超100家伙伴推出开放代理安全平台
前端
看谷秀5 小时前
arkts-12 鸿蒙生态/卡片
前端·arkts
dd聊技术5 小时前
一张本地消息表装两个业务:差异一点没进表里
后端
她的男孩5 小时前
头像换了三次还是旧图:秒传 + 预签名 URL + 私有文件权限,四层缓存叠出一个 Bug
java·后端·架构
朱 欢 庆5 小时前
el-table-v2 虚拟表格组件
前端·javascript·vue.js
深入云栈5 小时前
Netty 4.2.x 源码深度解析 (十五):io_uring 传输 —— RingBuffer 与零拷贝 IO
java·后端
wei_shuo5 小时前
KES 数据保护体系构建:备份策略设计、恢复流程优化与时间点恢复实践
后端
MacroZheng5 小时前
装上这款全能增强插件,DeepSeek Harness瞬间高大上了!
java·人工智能·后端