Cel*_*ada 56
是的,所有这些都与日志记录有关。不,它与运行级别或“保护环”无关。
内核将其日志保存在环形缓冲区中。这样做的主要原因是系统启动时的日志得到保存,直到 syslog 守护进程有机会启动并收集它们。否则,在 syslog 守护进程启动之前将不会有任何日志记录。使用该dmesg
命令可以随时查看该环形缓冲区的内容,并且它的内容也会/var/log/dmesg
在 syslog 守护程序启动时保存。
所有不是来自内核的日志在生成时都会发送到 syslog 守护程序,因此它们不会保存在任何缓冲区中。内核日志在生成时也由 syslog 守护程序获取,但它们也会继续(不必要地,有争议地)保存到环形缓冲区。
日志级别可以在syslog(3) 联机帮助页中看到,如下所示:
每个级别的设计都没有前一个级别那么“重要”。在一个级别记录日志的日志文件也将在所有更重要的级别记录日志。
/var/log/kern.log
和/var/log/mail.log
(例如)之间的区别与级别无关,而与设施或类别有关。这些类别也记录在联机帮助页中。
nom*_*drc 24
至少回答您关于dmesg
以下问题的第一部分:
/var/log/dmesg
存储“内核环缓冲区”的内容,这是内核在启动时创建的内存缓冲区,用于存储在您通过引导加载程序阶段后立即生成的日志数据。
环形缓冲区是一种特殊的缓冲区,它的大小始终保持不变,当新消息进来时会删除最旧的消息。存储在内核环形缓冲区中的文本是您第一次启动 Unix 时在屏幕上闪过的内容- 控制台模式下的机器(没有启动画面,普利茅斯)。内核日志存储在内存缓冲区中,以便引导日志可以存放在某个地方,直到系统将自身引导到syslog
守护程序可以接管的位置。
dmesg
Linux 下是util-linux
kernel.org 发布的系统维护工具的基本包的一部分。根据dmesg(1)
手册页,
dmesg 用于检查或控制内核环形缓冲区。
见:http : //www.computerhope.com/unix/dmesg.htm
在 'systemd' init 下,此命令可用于打印内核环形缓冲区:
# journalctl --dmesg or journalctl -k
, thxs 以供更正 @don_crissti
dmesg | grep -i ethernet
例如,发出该命令将解析字符串“ethernet”的内核环形缓冲区。
我希望这至少对您查询的第一部分有所帮助。