我为什么知道是inode 的问题呢?
接下备好瓜子花生来且听我分析
我一个免费开源根据ip获取用户地理位置的api 突然报错如下
failed to open stream: No space left on device in
然后登录linux 使用shell命令 自动补全功能竟然也提示磁盘空间不足
报错如下
cd /-bash: cannot create temp file for here-document: No space left on device
慌了 慌了 用户家人们集体反馈问题~
然后我首先想到的是磁盘空间不够了,磁盘used 100%
接下来执行
磁盘占用62% 并没有想象的100% 到这里很蒙B。
既然不是磁盘空间不足 那还能什么原因导致这种错误提示呢?
想了想之前做了一些文件cache 的操作是不是这里引起来的问题呢
文件cache 是每个用户请求都会产生一个cache文件 正好过年期间用户量大
访问人数多。
通过谷老师的指导,看到文件过多会导致 inode 占用增加,是不是这个原因呢
果断执行
df -i
结果如下
看到 100% 异常兴奋。找到原因了!!!
接下来就好办了,看看哪个目录文件量比较大呢
for i in /www/*; do echo $i; find $i | wc -l; done
运行结果如下
好家伙! 200多万文件。 看到这里就很清楚原因了。
执行我们最喜欢的 rm -rf /*
哈哈
rm -rf /www/项目文件/cache/*
至此完美解决!
以上是解决问题的过程,给大家提供一种思路!
如果能帮你解决问题 希望点赞
评论
赠人玫瑰 手留余香!