如何在 CentOS 7 上跟踪 dmesg

如何在 CentOS 7 上跟踪 dmesg

在 CentOS 7 服务器中,我键入dmesg并记下最后一个条目的时间戳。

接下来,我tail -f /var/log/dmesg在同一台机器上输入不同的终端,以便我可以观察日志尾部。

第三,我使用同一终端在同一台计算机上运行了一些脚本。我输入的终端没有任何变化tail -f /var/log/dmesg

最后,我dmesg再次输入,将日志提取到 Notepad++ 中,并注意到dmesg在运行其他脚本时,输出中创建了 1,500 多行新日志。

必须输入哪些特定命令才能使tail日志dmesg实际显示在屏幕上?

答案1

dmesg 是一个环形缓冲区。也就是说,当达到一定大小时,旧数据将被丢弃。因此,它并不像普通文件那样工作。这有点像数据/proc- 当您cat或以其他方式显示它时,您只能看到该时刻的状态。

为了解决这个问题,较新的实现dmesg包括-wor--follow开关,它们的工作方式类似于tail -f.如果您想将其捕获到传统文件而不是环形缓冲区中,您可以使用如下构造:

dmesg --follow >> /path/to/file

或者,如果您还想查看正在捕获的内容:

dmesg --follow | tee -a /path/to/file

与此一样,这可以用一个简单的 INT 信号或-tail -f来终止。CtrlC

相关内容