maillog意外罢工

今天意外发现sendmail发送邮件的时候没有记录日志

首先看日志:
发现定期创建新的日志文件但是文件都是空的
root@util3.baihui.com/var/log>ls -l /var/log/maillog*
-rw----r-- 1 root root     0 Nov 29 15:44 /var/log/maillog
-rw----r-- 1 root root     0 Nov 20 00:01 /var/log/maillog.1
-rw----r-- 1 root root     0 Nov 13 00:01 /var/log/maillog.2
-rw----r-- 1 root root     0 Nov  6 00:01 /var/log/maillog.3
-rw----r-- 1 root root     0 Oct 30 00:01 /var/log/maillog.4


然后查看sendmail进程是否存在
root@util3.baihui.com/etc/mail>ps aux |grep sendmail|grep -v grep
root      2216  0.0  0.1  71096  2356 ?        Ss   14:59   0:00 sendmail: accepting connections
root      2217  0.0  0.1  73308  3328 ?        S    14:59   0:00 sendmail: ./pAS0Whiu001741 12kjk.cn.mfg.baihui.com.: user open
smmsp     2225  0.0  0.0  57688  1780 ?        Ss   14:59   0:00 sendmail: Queue runner@01:00:00 for /var/spool/clientmqueue

查看25号端口是否处于监听状态
root@util3.baihui.com/etc/mail>netstat -anpt |grep sendmail
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      2216/sendmail: acce


 
其次sendmail的配置文件是否开机记录日志功能
root@util3.baihui.com/etc/mail>grep -i "log_level" sendmail.mc
dnl define(`confLOG_LEVEL', `9')dnl
root@util3.baihui.com/etc/mail>grep -i "loglevel" sendmail.cf
O LogLevel=9
#日志是开启状态,O是单词OPEN的缩写
#9是info级别,数字越大表示记录级别越低,记录的信息越多


我一直认为是sendmail的问题,就一直钻在这个上面了
接下来又重启了sendmail
service sendmail restart
发邮件测试,还是没有日志记录

重新生成配置文件
cd /etc/mail/
m4 sendmail.mc > sendmail.cf
测试之后还是没有记录日志文件


后来Hollow man提到了一点cron的日志文件也是空的
我证实了一下,果然如此
root@util3.baihui.com/var/log>ls -l /var/log/cron*
-rw----r-- 1 root root   0 Nov 29 15:45 /var/log/cron
-rw----r-- 1 root root   0 Nov 20 00:01 /var/log/cron.1
-rw----r-- 1 root root   0 Nov 13 00:01 /var/log/cron.2
-rw----r-- 1 root root   0 Nov  6 00:01 /var/log/cron.3
-rw----r-- 1 root root   0 Oct 30 00:01 /var/log/cron.4

然后又看了一下是否有计划任务定期执行,如果没有的话日志文件为空是很正常的,事实证明是有计划任务的
root@util3.baihui.com/var/log>crontab -l
01 0 * * * /usr/sbin/logrotate


那么现在就不单是sendmail的问题了,应该是系统日志问题了,这让我突然想到了syslog


syslog果真没有启动
root@util3.baihui.com/var/log>ps aux |grep syslog
root     16930  0.0  0.0  61144   736 pts/0    S+   15:26   0:00 grep syslog

启动syslog
root@util3.baihui.com/var/log>service syslog start
Starting system logger:                                    [  OK  ]
Starting kernel logger:                                    [  OK  ]

启动后查看syslog进程
root@util3.baihui.com/var/log>ps aux |grep syslog
root     17773  0.6  0.0   6168   904 ?        Ss   15:27   0:00 syslogd -r -m 0
root     17788  0.0  0.0  61144   740 pts/0    S+   15:27   0:00 grep syslog


再次发邮件测试,查看是否生成了sendmail日志:
root@util2.baihui.com/var/log>ls -l /var/log/maillog
-rw----r-- 1 root root 1515939 Nov 29 16:13 /var/log/maillog


为了避免再出现这样的问题,接下来要查看syslog服务是不是开机自启动
root@util2.baihui.com/var/log>chkconfig --list |grep syslog
syslog          0:off 1:off 2:on 3:on 4:on 5:on 6:off

如果不是的话,一定要设置开机自启动
chkconfig --add syslog
chkconfig --level syslog 2345 on

做到这里才算是圆满结束

附件信息:
  syslogd可以简单地被称为记录系统活动的一个daemons。比如可以记录谁,在什么时间,在哪里,做了什么事情(像是在写记叙文啊);
也可以记录您的系统曾经发生过什么事情,比如什么时候重新引导过、软硬件的错误信息等;当然也记录着您系统上运行着的服务的信息。
syslogd记录的日志一般在/var/log/下,当然也有存储在另外的服务器上的。因为syslogd记录的信息实在是太重要了,所以还要涉及日志安全的问题。
  一般系统中日志信息:
  代码:
  /var/log/secure: 记录系统的安全信息,比如ssh、ftp、pop3等;
  /var/log/wtmp: 记录谁曾经登陆过系统,由于本日志被编码过,所以只能用last命令查看;
  /var/log/boot.log: 顾名思义,记录开启或者关闭系统及武夫的信息;
  /var/log/message:系统发生的错误信息都会记录在这个日志中,比如iptables中您使用log功能的日志;
  /var/log/mail:
  /var/log/httpd/
  /var/log/mysqld.d 等,记录的就是这些服务的日志

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值