我刚做了一些测试,虽然端口肯定是由syslogd打开的,但它看起来并不像是在UDP 514上实际处理或记录任何指向它的活动.您可以通过netcat发送数据来验证这一点:
topher@nexus:~$nc -u localhost 514
This is a test.
This is another test.
^C
然后检查日志文件.我在两个RHEL5盒子上测试了它,如果没有使用-r,它实际上不会处理日志.
更新:我刚想到的另一个解决方案(或者,实际上,解决方法)是安装rsyslog(或syslog-ng)作为默认sysklogd的替换syslog守护程序.这些备用syslog守护进程都没有遇到上述错误.
rsyslog是RHEL 6.x的默认syslog守护程序,可作为RHEL / CentOS 5.2的受支持程序包使用. rsyslog正在积极开发中(sysklogd不是,多年来一直没有). rsyslog还支持许多高级特性和功能.如上所述,使用RHEL / CentOS 5.2,从库存syslogd切换到rsyslog就像yum install rsyslog一样简单.
如果您决定更换系统日志守护程序,并且您希望更清洁,更灵活(在我看来),Syslog-NG值得一看.配置文件不保持与旧syslog.conf(rsyslog确实)的向后兼容性,因此乍一看似乎有点复杂,但对于复杂或高级日志记录设置(特别是在中央日志主机),Syslog-NG是一个很好的选择.