![为什么我无法将 bangwagong 主机中的 cron 日志文件与 syslog 分开?](https://linux22.com/image/68713/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%88%91%E6%97%A0%E6%B3%95%E5%B0%86%20bangwagong%20%E4%B8%BB%E6%9C%BA%E4%B8%AD%E7%9A%84%20cron%20%E6%97%A5%E5%BF%97%E6%96%87%E4%BB%B6%E4%B8%8E%20syslog%20%E5%88%86%E5%BC%80%EF%BC%9F.png)
有两个vps:一个是digitalocean,另一个是bangwagong主机。
它们上的所有操作系统都是Debian7。
我想通过以下步骤将 cron 日志文件从 syslog 中分离出来。
step1:
vim /etc/rsyslog.conf
uncomment the line # cron.* -/var/log/cron.log into
cron.* -/var/log/cron.log
step2:
shutdown -r now
step3:
/etc/init.d/cron restart
现在在digitalocean vps中,/var/log中有一个cron.log。但是在bangwagong vps中,/var/log中没有cron.log。谁能解释一下?
这些步骤是在我的本地机器上测试的; cron.log 已成功分割。
答案1
我正在阅读的文档不正确,因此有关文件同步的部分完全错误。
“-”从文件中删除日志记录,因此这是我添加到系统中的内容,用于将 cron 条目记录到 /var/log/cron.log + 禁用 /var/log/syslog 重复日志记录。
... 。;cron,auth,authpriv.none -/var/log/syslog cron.* /var/log/cron.log ...
因此,将“cron”添加到 -/var/log/syslog 条目以禁用 syslog 日志记录。
取消注释第二行以启动 cron.log 日志记录。
然后查看 tail + rsyslog 重新启动序列 + 您应该看到 cron 未正确记录的确切原因。
答案2
不需要重新启动(shutdown -r now)。
尝试这个。从一个窗口运行:
tail -f /var/log/syslog
从另一个运行:
service rsyslog restart
1) 确保 rsyslog 停止并重新启动且没有错误。
2) 系统日志的尾部可能会告诉您需要修复什么。
请记住,您的日志记录可能有效。
日志文件前面的“-”会在每行写入后禁用同步,因此如果您的计算机繁忙或系统中的同步延迟很长,则可能需要几秒钟才能显示日志条目。
您可以首先删除 /var/log/cron.log 前面的“-”(以便条目快速刷新/同步到磁盘)+确保一切正常+然后将“-”放回去。