Nat*_*der 2 linux bash logging rsyslog ubuntu-16.04
我不小心删除了 /var/log/syslog,以为系统会自动重新创建它(它没有)。
我使用touch /var/log/syslog并重新启动了 rsyslog,但系统仍然没有记录任何内容。我也重新启动了整个服务器无济于事。
的输出 ls -l /var/log/syslog是
-rwxrwxr-x 1 root root 0 Oct 27 13:16 syslog
如何让系统再次开始记录到 syslog?
给未来读者的注意事项
重新启动 rsyslog 确实解决了这个问题。第一次对我不起作用的原因是因为我使用touch /var/log/syslog.
解决方案是 delete /var/log/syslog。然后运行sudo service rsyslog restart
TLDR;不要自己创建文件。删除 syslog,然后重新启动 rsyslog(它将为您创建 syslog)。问题解决了。
Ser*_*ult 11
重新启动后,rsyslog 应重新创建文件(具有正确的权限):
# mv /var/log/syslog /tmp/
# /etc/init.d/rsyslog restart
[ ok ] Restarting rsyslog (via systemctl): rsyslog.service.
# dir /var/log/syslog
-rw-r----- 1 root adm 327 Oct 27 13:28 /var/log/syslog
Run Code Online (Sandbox Code Playgroud)
也许尝试强制日志条目以确保它正在运行:
# /usr/bin/logger -p0 foo
# tail /var/log/syslog
...
Oct 27 13:31:39 myserver root: foo
Run Code Online (Sandbox Code Playgroud)
小智 5
即使文件已被删除,rsyslog 使用的文件句柄可能仍处于打开状态并正在写入。lsof可用于验证这一点,如果您想查看日志写入的位置,还可以告诉您进程打开了哪些文件。pidof rsyslogd | xargs lsof -p
| 归档时间: |
|
| 查看次数: |
6641 次 |
| 最近记录: |