# netstat -tulpn | grep 514 udp 0 0 0.0.0.0:514 0.0.0.0:* 2698/syslogd
Syslog仅以“-m 0”开头:@H_301_5@
ps -ef | grep syslogd root 2698 1 0 15:55 ? 00:00:00 syslogd -m 0
我尝试用“-m 0 -r”启动它,只是为了检查是否有任何差异,但没有.@H_301_5@
这台机器是一个客户端,只应该登录到中央日志服务器 – 它不应该自己监听.@H_301_5@
我错过了什么?@H_301_5@
我刚刚发现这个:https://bugzilla.redhat.com/show_bug.cgi?id=137205.从2010年的最后评论来看,这似乎是2004年的一个错误,但仍未解决(仅仅8年……)@H_301_5@
解决方法
topher@nexus:~$nc -u localhost 514 This is a test. This is another test. ^C
然后检查日志文件.我在两个RHEL5盒子上测试了它,如果没有使用-r,它实际上不会处理日志.@H_301_5@
更新:我刚想到的另一个解决方案(或者,实际上,解决方法)是安装rsyslog(或syslog-ng)作为默认sysklogd的替换syslog守护程序.这些备用syslog守护进程都没有遇到上述错误.@H_301_5@
rsyslog是RHEL 6.x的默认syslog守护程序,可作为RHEL / CentOS 5.2的受支持程序包使用. rsyslog正在积极开发中(sysklogd不是,多年来一直没有). rsyslog还支持许多高级特性和功能.如上所述,使用RHEL / CentOS 5.2,从库存syslogd切换到rsyslog就像yum install rsyslog一样简单.@H_301_5@
如果您决定更换系统日志守护程序,并且您希望更清洁,更灵活(在我看来),Syslog-NG值得一看.配置文件不保持与旧syslog.conf(rsyslog确实)的向后兼容性,因此乍一看似乎有点复杂,但对于复杂或高级日志记录设置(特别是在中央日志主机),Syslog-NG是一个很好的选择.@H_301_5@