《Linux 磁盘空间告急排查:df/du 实战笔记》

举报
yd_256292196 发表于 2026/11/07 08:50:41 2026/11/07
【摘要】 服务器半夜发来磁盘告警,磁盘使用率 92%,服务随时可能写不进数据。别慌,也别上来就删文件,先定位再动手,两条命令就能锁定元凶。第一步看整体:df -h。输出里重点看 Use% 和挂载点,确认是哪块盘满了。再补一条 df -i:空间明明还有剩余却写不进文件,多半是 inode 耗尽,小文件太多时常见。第二步定位大户:du -sh /* 按目录看占用,一眼找出最大的几个;再往下钻,du -sh...

服务器半夜发来磁盘告警,磁盘使用率 92%,服务随时可能写不进数据。别慌,也别上来就删文件,先定位再动手,两条命令就能锁定元凶。
第一步看整体:df -h。输出里重点看 Use% 和挂载点,确认是哪块盘满了。再补一条 df -i:空间明明还有剩余却写不进文件,多半是 inode 耗尽,小文件太多时常见。
第二步定位大户:du -sh /* 按目录看占用,一眼找出最大的几个;再往下钻,du -sh /var/log/* 配合 sort -rh | head 排序,几分钟就能追到具体目录。只看数字别急着删,先确认里面是什么。
常见的几个元凶,处理方法各不相同:
日志暴涨最常见。/var/log 下某个应用日志几个 G 是常事,先用 tail 看最后几行确认是否还在刷;正在写的日志不要直接 rm,用 truncate -s 0 文件名 清空,再配好 logrotate 按天轮转、保留固定天数,从根上止血。
被删却仍被占用的文件也常被忽略。进程还拿着句柄的文件,rm 后空间不会释放,用 lsof | grep deleted 就能看到,重启对应进程空间才会真正回来;不能重启的服务就等窗口期。
Docker 占用的也不少。docker system df 看一眼镜像、容器、卷各占多少,docker system prune 能一次清理无用镜像与停止的容器;但带 --volumes 时要小心,卷里可能有数据,生产环境先确认再动手。
治标之后要治本:磁盘使用率设个 80% 的告警阈值,cron 每周跑一次清理,日志轮转配好,备份目录单独挂盘。磁盘满不是技术难题,是日常习惯问题,定期巡检一次,比半夜救火轻松得多。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。