前情经过各种测试确认与bios版本无关,问题出在Debian的引导(虽然之前测试了同为Debian发行版的Ubuntu可以正常引导,但直接安装Debian也出现了无法引导的问题)。
UEFI似乎不能自动识别Debian的efi文件,在UEFI Shell中手动指定efi文件可以正常启动。
经过与ChatGPT的一阵掰扯我解决了问题
注:fnOS似乎不提供root密码,以下所有指令需要进系统初始化后,以注册用户使用sudo执行
我的问题可能出在:
1.NVRAM记录错误
因为之前安装过很多其它系统,通过手动指定EFI进入系统后执行efibootmgr -v
出现了许多启动项,遂执行efibootmgr --delete-bootnum --bootnum XXXX
一一删除,感觉这可能是问题的关键。
2.ESP分区不正确
我已经于PE系统下确认过ESP分区无问题,故跳过此步
3.Secure Boot 导致 GRUB 无法加载
当然关了
4.EFI没有正确注册,重新创建 UEFI 引导项
重新安装Grub
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=debian update-grub
重新注册 Debian 引导
efibootmgr --create --disk /dev/sdX --part 1 --loader "\EFI\debian\grubx64.efi" --label "Debian"
请注意sdX需根据实际情况调整,一般是替换为sd1。
完成后执行efibootmgr -v
出现类似Boot0001* Debian HD(1,GPT,xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx,0x800,0x100000)/File(\EFI\debian\grubx64.efi)
应该就注册成功了。
执行完以上,重启可以正确自动引导。
才疏学浅,如有疏漏,还请指正。
素材来源网络,如有侵权,请联系删除。
欢迎邮件 liu#lxyz.link交流。