![在崩溃前启动期间读取内核消息](https://linux22.com/image/182739/%E5%9C%A8%E5%B4%A9%E6%BA%83%E5%89%8D%E5%90%AF%E5%8A%A8%E6%9C%9F%E9%97%B4%E8%AF%BB%E5%8F%96%E5%86%85%E6%A0%B8%E6%B6%88%E6%81%AF.png)
我正在尝试调试启动循环问题。如果我用 Grub 添加到内核参数,这个问题就会消失acpi=off
,我试图理解为什么。
但是,当我在没有此参数的情况下启动计算机时,内核会很快显示其启动消息,然后计算机重新启动。整个事情发生在不到一秒钟的时间内。速度太快了,我什至无法通过拍摄屏幕来阅读消息。这些错误似乎发生在以读写模式安装磁盘之前,因此没有保存日志。
什么是能够在启动期间读取内核消息的可靠解决方案?
到目前为止,我已经尝试了以下内核参数:
panic=0
和kernel.panic=0
:没有效果,计算机仍然重新启动。boot_delay=200
lpj=13199976
根据建议,有和没有https://cateee.net/lkddb/web-lkddb/BOOT_PRINTK_DELAY.html(lpj 值是从启动时获取的acpi=off
):计算机似乎死机了。我曾经尝试过boot_delay=4
,一段时间后,它“正常崩溃”(消息突然出现得很快,然后计算机重新启动)。CONFIG_BOOT_PRINTK_DELAY
在内核配置中启用。- 我想我可以尝试通过串行端口转发消息,但我没有任何适配器。
- netconsole:崩溃发生在 netconsole 有机会启用之前。
我在 Linux 5.4.0-52-generic 上使用 Ubuntu 20.04。