一次磁盘满的系统故障

  大清早的就接到监控报警,,提示php进程挂掉了...果断登录到服务器上面查看,发现内存不足4G..果断认为是内存不足引起的,,top了一下,,发现了一个download.php进程占用内存过高,,kill掉,,发现内存降下来了,,暗喜..

    结果此时load直线上升,,外网流量报警..检查nginx连接数过高,,感觉是不是被***了,,果断查看message日志,,发现vim提示无法写入到.viminfo..删除.viminfo再打开message日志仍然相同错误..

message日志里面也没有看到任何有用的信息..准备重启一下message清理一下旧的日志,,准备做好相关调试工作,,结果发现此报错:no space left on device..

   运行df -h,发现磁盘空间正常..

   再运行df -i, 总算发现故障原因,,原来是inode满了..

   最后发现原来是postfix文件数量太多了,,果断删除find /var/spool/postfix/maildrop/ -type f |xargs rm -rf.

   产生的原因是/etc/crontab配置了MAILTO=ROOT,改配置产生导致的结果是每执行crond里面的一条计划任务,,就都会默认发送一个邮件给ROOT..由于该机器运行时间比较长,计划任务多..所以就出现了上述故障..将MAILTO=ROOT改为MAILTO=就行了..然后重启crond 


   

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章