• 学派吧-由新云网络独家赞助-https://www.sq9.cn。

inode索引节点用满报错mkdir: cannot create directory `xxx’: No space left on device

unix admin 5年前 (2019-04-17) 2302次浏览 已收录 0个评论 扫描二维码

小编今天维护一台服务器、数据库无法启动、也无法建立文件目录等操作。都提示No space left on device

后来仔细查看洗了 是因为inode满了。那就赶紧想办法清理下了。

命令:df -i

其中/dev/mapper/vg_have-lv_root 884208 884208 0 100% /索引节点 (inode)满了

已经找出问题所在,那么下面开始处理这个问题。

读出/目录下文件最多的目录:

for i in /*; do echo $i; find $i |wc -l|sort -nr; done

/var /www目录文件数高达10W以上,其中/var目录80W,/www为数据盘

再次读出/var目录下文件最多的目录:

for i in /var/*; do echo $i; find $i |wc -l|sort -nr; done

以此类推的往下找,最后在clientmqueue目录中文件数最多,切换到clientmqueue下使用rm -rf * 结果返回-bash: /bin/rm: Argument list too long
换用命令find . -print|xargs rm 过了一段时间终于删除了所有文件 df -i 下图可以看到文件数在减少

不过这种方法只是治标不治本的方法。

为什么var/spool/clientmqueue会产生大量的文件呢,查资料是因为cron执行时会将相关结果以mail方式发送到执行用户的帐号,可是当sendmail 沒有启动 那么所有信件就会暂存在这个目录中,此时就会出现这种情况。
注意:一般使用宝塔的用户,使用网站统计会出现这个问题。
欢迎关注学派
有偿代维 故障排查.服务器租用 面板安装等服务 QQ:690624


学派吧 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:inode索引节点用满报错mkdir: cannot create directory `xxx’: No space left on device
喜欢 (1)
[pay@sq9.cn]
分享 (0)
关于作者:
腾讯云-运维运维 QQ 690624
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址