syslog日志截断的问题
本文可自由转载,但请遵循“署名-非商业用途-保持一致”的创作共用协议。 永久链接:JoeCen's 小猫窝-----------------------------
举个例子,一天我们看到crontab的日志大小居然为零,于是运行"crontab -l"命令一下,如果是正常的话,即使该用户并无crontab记录,也会记录一条LIST信息到crontab日志中。
如果这时候发现crontab日志的大小还是零的话,说明syslog没有记录日志到crontab日志文件中。我们可以用:
#logger -p kern.info "test from system"
命令来产生一条测试信息。我们发现kern 日志中有显示这条测试信息,那么syslog进程应该是没有问题的。
crontab文件大小为零的原因是crontab log文件被改名或移动了。syslog进程还是会将log记录到改名或移动后的文件。因为syslog是附属于开放文件描述符程序,它会将log写入同一个文件描述符的文件中,直到文件描述符关闭为止。既然如此,我们只要将文件描述符关闭就可以了:
kill -SIGHUP $(cat /var/run/syslogd.pid)
该命令告诉syslog关闭并再次打开文件,解决日志的问题。
另外logrotate之类的命令应该已经会自动fix这个问题。
June 24th, 2008 at 12:53 pm Quote
难道website不填写就不能成功提交?