Windows 10 如何对应该用来代替 GRUB 的 UEFI 路径进行硬编码?

Windows 10 如何对应该用来代替 GRUB 的 UEFI 路径进行硬编码?

我安装了 Ubuntu 已经 3 年多了,在与 Windows 10 的双启动设置下运行良好。90% 的时间我只使用 Ubuntu,但今天我启动 Windows 玩游戏,花了大约 3 个小时来更新操作系统。

发布该更新后,我意识到每当系统启动时,它都会直接转到位于的 UEFI 文件/boot/efi/EFI/Microsoft/Boot/bootmgfw.efi

在花了 8 多个小时尝试将 GRUB 从 Windows 中恢复后,我替换了路径

/boot/efi/EFI/Microsoft/Boot/bootmgfw.efi

文件来自

/boot/efi/EFI/ubuntu/grubx64.ef

我确实做了适当的备份。上述设置确实有效,现在 Grub 已经从濒死状态恢复。

我非常好奇想知道这件事是如何发生的,以及 Windows 如何锁定固件将查找哪个文件。

我已经禁用安全启动好几年了。我尝试过EasyUEFI和之类的工具efibootmgr,但每次重启时,控制权都会直接转到 Windows。

这可能是一个幼稚的问题,但有人可以解释一下 UEFI 锁定是如何发生的,以及我们可以做些什么来防止这种情况发生吗?

附言:到目前为止,我已经禁用 Windows 更新服务以摆脱这个麻烦。

答案1

虽然如果与 Windows 一起安装,此问题会影响 Ubuntu,但它是由 Windows 而不是 Ubuntu 引起的,并且除了接受禁用 Windows 更新的繁重后果之外,没有其他方法可以阻止 Windows 更新覆盖 grub 引导加载程序。

如何修复 grub

相关内容