如何将 printk 消息发送到 ttyS0?

How can I send printk message into ttyS0?

我正在尝试使用笔记本电脑和串行端口调试我的 PC。

所以,我想从 tty 连接的笔记本电脑上获取一些 printk 日志。

我参考了这个网站 (https://help.ubuntu.com/community/SerialConsoleHowto),我已经在我的笔记本电脑上设置了所有控制台设置,我还看到了来自笔记本电脑的登录会话。

然而,尽管我尽了一切努力,但我无法在 tty 控制台上获取 printk 日志消息(我还将 /proc/sys/kernel/printk 设置为 7417 以获取 printk 的所有消息)。

奇怪的是,我的本地控制台(ctrl + alt + f1~f6)同时打印了printk日志。

那么,如何从 tty 连接的主机设备获取 printk 消息?

谢谢,

这个命令

dmesg -wH &

可用于强制打印到 dmesg (以及 Ctrl+Alt+F1 等虚拟终端,具体取决于您的 /proc/sys/kernel/printk 日志级别和您消息的级别),也会出现在您的 SSH 或 GUI 控制台:Konsole、终端或您正在使用的任何东西!我希望也适用于 ttyS0 控制台。而且,如果您只需要监视特定消息:

dmesg -wH | grep ERR &

我正在使用它来监视 "ERROR" 消息,例如

printk(KERN_EMERG "ERROR!\n");

我从我的驱动程序中 printk