设为首页
收藏本站
切换到宽版
门户
Portal
社区
BBS
站长
开发
运维
资源
游戏
产品
登录
立即注册
随客社区
»
社区
›
交流大厅
›
运维联盟
›
Linux服务器被占满 inode 导致无法写入文件 ...
返回列表
发布新帖
查看:
20
|
回复:
0
Linux服务器被占满 inode 导致无法写入文件
傲来云
傲来云
当前离线
UID
13
星火
贡献
奖金
发表于
3 天前
|
查看全部
|
阅读模式
这里或许是互联网从业者的最后一片净土,随客社区期待您的加入!
您需要
登录
才可以下载或查看,没有账号?
立即注册
×
网站突然上传不了图片了,提示“磁盘写入失败”,但看磁盘明明还有空间。就是无法上传,这种情况多半是 inode 用光了。
这个问题不常见,但一旦出现就很难排查,今天整理一下我的排查过程和解决方法,供大家参考。
什么是 inode?
简单说,每个文件都要占一个 inode,哪怕文件只有 0 字节也一样。
如果服务器里生成了大量小文件,比如日志碎片、缓存、临时文件,即使硬盘还有空间,也可能因为 inode 数量用尽而无法再创建新文件。
如何判断是否 inode 占满?
先看磁盘空间:
df -h
复制代码
再看 inode 使用情况:
df -i
复制代码
如果看到某个分区 `Use%` 达到 100%,说明 inode 用完了。
查找占 inode 最多的目录
这个命令非常有用:
for i in /*; do echo $i; find $i | wc -l; done
复制代码
它会逐个统计目录下的文件数量,帮助你定位是哪个路径产生了大量小文件。
如何处理?
找到对应目录后:
1. 清理不必要的小文件:
rm -rf /tmp/*
复制代码
2. 使用 logrotate 或定期清理缓存。
3. 如果是网站某插件或程序疯狂写缓存,建议先禁用它,再分析原因。
预防建议:
对站点缓存、日志目录做定期清理任务(cron job);
容器类服务建议挂载数据盘,避免 `/var` 爆炸;
生产环境分区时可考虑为某些目录单独分区,比如 `/var`。
这个问题虽然比较偏门,但真遇到的时候挺难发现的。如果你也碰到过“磁盘有空间却写不了文件”的情况,强烈建议 `df -i` 一下看看 inode。
回复
举报
返回列表
发布新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
快速入口
社区门户
社区首页
随客云计算
重要文档
社区规则
官方公告
关于我们
团队介绍
产品合集
联系我们
532352
028-67879779
tech@isuike.com
Copyright © 2001-2025
Suike Tech
All Rights Reserved.
随客交流社区 (备案号:
津ICP备19010126号
)
|
Processed in 0.105109 second(s), 7 queries , Gzip On, MemCached On.
关灯
在本版发帖
返回顶部
快速回复
返回顶部
返回列表