在系统发生严重崩溃(BUG、恐慌)时,如何可靠地捕获 Linux 内核日志消息?

在系统发生严重崩溃(BUG、恐慌)时,如何可靠地捕获 Linux 内核日志消息?

我希望能够访问内核在死机前发出的行/回溯/任何信息。事实证明这很成问题,因为我可以访问的所有接口都被禁用了。重启后,systemd 日志无法记录有关崩溃的任何信息,可能是因为将缓冲区刷新到文件系统被阻止了。

以下是我尝试过但失败的方法

  1. 控制台访问 - X 应用程序在此运行以完成日常工作,但系统崩溃后,无法识别任何键盘输入,因此我无法切换到 vt

  2. netconsole发送数据到nc另一台机器上监听 - 我期望这能起作用,但是虽然其他一切都出现了,但没有崩溃相关的内核回溯到达那里,甚至没有dmesg -n 8

  3. ssh通过网络 - 崩溃后不可能,因为网络也被阻塞了

我还有什么其他选择可以 100% 捕获所有内容?也许是串行控制台?(什么是合适的设备)我认为任何带有 USB 的设备都容易受到子系统阻塞的影响。

笔记:这个盒子是本地的,放在我的房间里,因此所有的访问和方法都是可用的。

相关内容