我最初在尝试使用 MAAS 重新部署机器时遇到了这个问题,但我可以使用已经安装的操作系统和 GRUB,以及 Ubuntu 20.04 重现它。机器设置为 UEFI 启动。
重现(但见下文):
- 引导机器并获取 GRUB 菜单。
- 按 'c' 获取命令行,运行
net_dhcp efinet1
(或只是net_dhcp
;efinet1 是该机器的主要网络接口)。 - 按 escape 返回书本菜单,选择 Ubuntu 并按 enter。
- 出现空白屏幕,没有任何反应。
通过添加set debug=linux
我得到的消息loader/efi/linux.c:96: kernel_addr: 0x3c7d1000 handover_offset: 0x190 params: 0x3ffff000
表明它已经达到了打算启动内核的程度,但是内核没有引导输出。
这就是它变得奇怪的地方:我们有 8 台几乎相同的机器,这是唯一表现出这种行为的机器。我知道这个唯一的区别是它有一个 ConnectX-5 EN NIC 而不是 ConnectX-6 Dx(但这不是主要接口,即不参与 DHCP)和一个不同的 GPU(它们是不过都是 RTX 30xx)。BIOS是同一个版本(最新的),BIOS设置都一样,BMC设置都一样。我已经看过 DHCP 提供的内容,除了 IP 地址之外,它们似乎是相同的。由于当 MAAS 执行 PXE 启动时也会发生这种情况,我认为这不太可能是由于硬盘驱动器上的任何问题。
任何想法,要么缩小原因,要么确定是什么让这台机器与众不同?
编辑:我还使用 重现了该行为net_dhcp efinet2
,并且该接口甚至没有插入电缆。所以我认为这排除了 DHCP 提供的罪魁祸首,这让我比以往任何时候都更加困惑。
这似乎取决于仅在那台机器中的 ConnectX-5 EN NIC。换入 ConnectX-6 Dx 后,机器运行正常。所以我的理论是旧网卡上的 EFI 固件有问题。