dmesg 从哪里获取内核消息和用户空间消息?

dmesg 从哪里获取内核消息和用户空间消息?

dmesg据说检查或控制内核环形缓冲区。但它有选项--kernel--userspace

是否dmesg从内核环形缓冲区获取内核消息?

内核环形缓冲区是否只存储内核生成的消息,而不存储进程生成的消息?

从哪里dmesg获取用户空间消息?

用户空间消息是否包括所有进程(例如 cron)生成的消息?

答案1

是否dmesg从内核环形缓冲区获取内核消息?

是的,如中所述man dmesg:

dmesg用于检查或控制内核环形缓冲区。

内核环形缓冲区是否只存储内核生成的消息,而不存储进程生成的消息?

不,进程可以通过写入/dev/kmsg.

从哪里dmesg获取用户空间消息?

从内核环形缓冲区,使用/dev/kmsg系统syslog调用(不要与系统syslog记录器及相关服务)。消息通过其“功能”来区分;内核消息使用该kern设施,用户消息使用user、等设施(请参阅参考资料mail获取受支持设施的列表)。daemondmesg --help

用户空间消息是否包括所有进程(例如 cron)生成的消息?

不,只有那些显式添加到内核环形缓冲区的内容。

syslog守护进程通常可以来自 Linux 上的内核环形缓冲区,但这是唯一的连接。我不知道有什么除了内核之外的缓冲区(不需要设备来执行此操作)和 systemd(如果无法写入其日志或 to ,它将写入内核缓冲区syslog)。

相关内容