Linux inode 用满服务异常,排查步骤别只看 df -h
有次线上服务写日志失败,df -h 看磁盘空间还剩不少,大家一开始以为是权限问题。后来查到是 inode 被小文件耗尽,磁盘没满但新文件已经创建不了。 我的处理顺序是先跑 df -i 看 inode 使用率,再用 find 按目录统计小文件数量,重点看临时目录、上传缓存和日志切割目录。最后发现一个失败任务每分钟生成空的 retry 文件,logrotate 也管不到那一层。我们先暂停任务,归档并删除旧 retry 文件,再给任务加失败合并逻辑和目录级监控,inode 使用率超过 80% 就报警。 经验是,Linux 存储问题不能只看容量。建议运维同事把 df -h、df -i、lsof deleted、目录文件数这几项放进值班手册。尤其是 Node、Python 批处理和图片缓存服务,小文件堆积比大文件更隐蔽。