如何对日志旋转文件执行“tail -f”?

如何对日志旋转文件执行“tail -f”?

在长时间运行的系统上,我通常有一个终端

$ tail -f /var/log/kern.log

或类似的东西打开。

但有时我必须重新启动此类命令,因为不再显示新消息。

我认为这是因为替换日志文件的日志轮换作业tail -f正在“监视”。

如何避免此重新启动问题?

我可以调用它tail以使其注意到旋转过程并执行正确的操作吗?

rsyslogd(我在默认使用的 Ubuntu 11.04 系统上注意到这个问题。)

答案1

请改用该-F选项:

tail -F /var/log/kern.log

-F选项指示tail通过文件名跟踪文件的更改,而不是使用在轮转期间更改的索引节点号。如果文件不存在,它也会继续尝试打开该文件。

相关内容