AFAIKdmesg
显示有关内核和内核模块的信息,还/var/log/messages
显示内核和模块产生的信息。
那么有什么区别呢?做/var/log/messages
⊂的输出dmesg
?
更多可能有帮助的信息:
- 有一个内核环形缓冲区,我认为这是存储内核日志数据的唯一位置。
- 文章 ”内核日志记录:API 和实现” 在 IBM DeveloperWorks 上描述了 API 和鸟瞰图。
答案1
dmesg
打印环形缓冲区的内容。当它们运行时,此信息也会实时发送到syslogd
或klogd
,并最终到达/var/log/messages
;最有用的时间是捕获之前和/或启动之前dmesg
的启动时消息,以便正确记录它们。syslogd
klogd
答案2
这取决于操作系统。例如在 Solaris 上,消息只是一个显示文件最后 200 行的 shell 脚本/var/adm/messages.*
。
答案3
- 我们可以说它
dmesg
是环形缓冲区的子集/var/log/messages
并且被维护在环形缓冲区中。 /var/log/messages
包括所有系统消息,包括从系统启动开始以及 中的消息dmesg
。简而言之,日志dmesg
被转储到/var/log/messages
./var/log/messages
维护一般系统活动日志并dmesg
仅维护内核日志。
答案4
消息: dmesg 是一条(显示或驱动程序)消息。它用于检查或控制内核环形缓冲区。
消息:它包含全局系统消息,包括系统启动期间记录的消息。登录的内容/var/log/messages
包括邮件、cron、守护进程、kern、auth 等。