文件系统crondsendmailpostdrop导致Linux定期死掉的完整解决过程实录

题记:写这篇博客要主是加深自己对文件系统的认识和总结实现算法时的一些验经和训教,如果有错误请指出,万分感谢。

    May 13 15:29:23 lcha2 postfix/postdrop[1443]: warning: mail_queue_enter: create file maildrop/383480.1443: No such file or directory

    May 13 15:29:23 lcha2 postfix/postdrop[1269]: warning: mail_queue_enter: create file maildrop/330426.1269: No such file or directory

    May 13 15:29:23 lcha2 postfix/postdrop[1439]: warning: mail_queue_enter: create file maildrop/357169.1439: No such file or directory

    May 13 15:29:23 lcha2 postfix/postdrop[1654]: warning: mail_queue_enter: create file maildrop/984222.1654: No such file or directory

    init-+-aacraid |-atd |-bdflush |-crond---125*[crond---sendmail---postdrop]

    可见crond保卫进程启动了sendmail,进而启动了postdrop。查看crond的配置, crontab -e,都没有发明几秒就启动的程序,所以多是sendmail自己一旦邮件发送不成功,就持续从新发送而致使持续启动postdrop,而postdrop老是执行失败,致使持续写入日志到日志文件。日志文件增大的速率超过了logrotate的删除频率,所以占领了100%的磁盘空间。

    mail.*                                                        /var/log/maillog

    mail.err

 /var/log/maillog

    while true do date +%H:%M:%S >> 1.txt ps -e | grep sendmail | wc >>1.txt sleep 5 done

    每日一道理
一个安静的夜晚,我独自一人,有些空虚,有些凄凉。坐在星空下,抬头仰望美丽天空,感觉真实却由虚幻,闪闪烁烁,似乎看来还有些跳动。美的一切总在瞬间,如同“海市蜃楼”般,也只是刹那间的一闪而过,当天空变得明亮,而这星星也早已一同退去……

    从结果文件1.txt中发明每10分钟,就会启动一个sendmail进程。crontab里有个没有这个频率的启动项,但有一个每5分钟主动网络校时的启动项。把这个项注视掉,从新启动crond,发明仍然有sendmail的启动,从而排除了这个原因。难道是crond本身每10分钟就主动发送邮件吗?按照man 5 crontab的解释,把/etc/crontab的MAILTO设为"",这样crond就不会发送邮件了。从新启动crond服务,发明crond仍然10分钟启动一次sendmail,太奇怪了!索性直接关闭crond服务,然后再也没有新的sendmail进程产生。难道是crontab被黑了?为什么MAILTO=""了,还会调用sendmail呢?把所有的sendmail进程都kill掉,然后启动crond, 仍然会出产sendmail,看来crond和sendmail的关系绝非一般。

    # run system activity accounting tool every 10 minutes

    */10 * * * * root /usr/lib/sa/sa1 1 1 

    # generate a daily summary of process accounting at 23:53

    53 23 * * * root /usr/lib/sa/sa2 -A 

    [root@lcha2 root]# /usr/lib/sa/sa1 1 1 

    Cannot open /var/log/sa/sa20: No such file or directory

    # run system activity accounting tool every 10 minutes

    */10 * * * * root /usr/lib/sa/sa1 1 1 &>/dev/null

    # generate a daily summary of process accounting at 23:53

    53 23 * * * root /usr/lib/sa/sa2 -A &>/dev/null

    文件和系统

文章结束给大家分享下程序员的一些笑话语录: 雅虎最擅长的不是开通新业务,是关闭旧业务。

原文地址:https://www.cnblogs.com/xinyuyuanm/p/3093577.html