Centos下报indoes不足的解决办法

一.问题现象
1.zabbix报警一台服务器系统盘indoes不足20%;
2.使用df -i 发现系统盘下indoes使用超过80%;
在这里插入图片描述
可以看出磁盘空间并不是很大,考虑到应该是系统目录存在很多小文件;

二.解决过程
1.考虑到indoes应该是由大量小文件占用了,于是查询主要使用的nginx,mysql,java等应用,发现日志量也不大;
2.于是无意间发现/var/spool下文件数量巨大,/var/spool/clientmqueue下总计文件数超过200万个;
在这里插入图片描述
删掉目录下的文件, inodes恢复正常

ls|xargs rm -f  #速度快
find . -type f -exec rm -f {} \;  # 速度慢

三.原因分析
1.系统开启了cron定时任务,由于cron在执行过程中产生了很多的输出内容,并且会以邮件的形式发给cron用户,而且sendmail没有启动多以产生了这些文件;

四.解决办法
将crontab里面的命令后面加上> /dev/null 2>&1
ps:
2>:重定向错误
2>&1:把错误重定向到输出要送到的地方
把shell执行结果重定向到/dev/null,抛弃掉。

猜你喜欢

转载自blog.csdn.net/qq625281334/article/details/86131658