缘起
今年 3 月,我在新入手的惠普笔记本上安装了 Debian Testing(Debian 13,目前内核版本为 6.12.17,OpenGL 4.6,Mesa 25.0.1-2,对 AMD R7-8845HS 的支持应该还不错),系统盘为原装三星 PM9B1(nvme0,磁盘0,改插在原空盘位),Windows 11 已经安装在加装的三星 990 Pro(nvme1,磁盘1)。
遇到的异常
GRUB 能检测到 Windows 11 的启动项,但选择后无法引导,提示如下错误:
错误:malformed EFI Device Path node has length=0。
按任意键继续…
若从 BIOS 中手动选择 Samsung 990 Pro 启动,则可以正常进入 Windows 11。
曾尝试如下解决方式:
- 重新开启 BIOS 安全相关设置:
- 启用 DRTM/SMM 保护
- 启用 TPM
- 启用安全启动
一度可以从 GRUB 启动 Windows,但不稳定,重启之后又不可复现。
- 调整 BIOS 引导顺序:将 Windows 所在磁盘(SSD1)放在前面后,可以从 GRUB 进入 Windows,但这样 GRUB 本身就不再是默认引导管理器,失去意义。
- 尝试 chainloader 手动引导:编辑
/etc/grub.d/40_custom,添加如下内容:menuentry "Windows 11" { insmod part_gpt insmod fat insmod chain set root=(hd0,gpt1) # 根据实际情况修改 chainloader /EFI/Microsoft/Boot/bootmgfw.efi }然后执行:
sudo grub-mkconfig -o /boot/grub/grub.cfg重启后测试,这样引导 Windows 仅一次成功,之后又失败,效果依然不稳定。
- 凑合的替代方案:利用 GRUB 菜单中的 EFI Firmware Manager 进入 BIOS 启动菜单,再选择“引导菜单”从 Windows 磁盘启动,虽不理想但比狂按 ESC 好一些。
最终,这样的凑合方案使用了将近一个月。
彻底解决:优化 BIOS 设置
操作步骤
前提:BIOS 启动顺序中 Debian 所在 SSD(nvme0)优先于 Windows 所在 SSD(nvme1)
- 进入 BIOS 设置 → 启动选项:
- 启动延迟:设置为 5 秒
- 快速引导:关闭
- 重启观察现象:
- 显示 HP Logo 时,底部提示“执行开机延时”,5 秒内可以按 ESC 进入启动菜单(Startup Menu);
- 如果不按键,则自动进入 Debian 的 GRUB 菜单;
- 在 GRUB 菜单中选择 Windows 11,可以正常引导;
- 进一步测试确认:
- 只设置启动延迟:延迟5秒之后进入 GRUB,选 Windows 11 能正常引导;
- 只关闭快速引导:也可进入 GRUB,也能正常引导 Windows 11;
- 综上,关键在于关闭“快速引导”(Fast Boot)。
最终成果
- 每次开机自动显示 GRUB 菜单,优雅地选择 Linux 或 Windows;
- Windows 的启动界面自然衔接在 GRUB 背景后方,视觉效果流畅无撕裂感(其实这更可能是个 bug 而非特性);
- 不再需要频繁进入 BIOS 启动菜单,也不需要折腾 chainloader。
后记
GRUB 对跨盘(双 NVMe)EFI 引导的支持,仍可能受限于 BIOS 或系统状态。在实际部署中,关闭快速引导 + 合理设置启动顺序 + 保持 EFI 分区干净完整,是保证 GRUB 正常引导的关键。
这款惠普笔记本作为一款兼顾性能与扩展性的商用本,只要 BIOS 设置得当,也能获得非常舒适的双系统体验。希望这篇记录能为遇到类似问题的读者提供一些有价值的参考。
欢迎分享或转载,转载请注明出处。
本文固定链接:https://www.oixxu.com/HP-notebook-double-systems-boot-configure-debian-windows-11
感谢!确实是快速引导的问题,我也是惠普笔记本😀
不用谢,很高兴能帮助到有需要的人。