Windows 升级破坏双启动

Windows 升级破坏双启动

前段时间,我买了一台预装了 Windows 的新电脑,无论我怎么尝试,它都无法显示 GRUB 界面。我想到的解决方案是用 shimx64.efi 文件替换 Windows bootmgfw.efi 文件。它工作正常。问题是,有时 Windows 决定安装升级,这会撤消我的调整,所以我不得不再次替换文件。

有人知道如何使修改永久生效吗?

谢谢

答案1

除非您的系统固件提供了一种方法来防止 UEFI 变量被修改(据我所知,除了某些具有此功能的特定 Thinkpad 型号外,基本上没有其他方法),否则您无法使其完全永久化。

原因很简单,Windows 维护着 EFI 启动管理器自己的内部配置,每次您在系统上启动 Windows 时,它都会更新相关的 UEFI 变量以匹配该配置。您可以更新此配置以避免需要替换文件(通常,一些非常愚蠢的 UEFI 实现如果在 处看到文件,就会拒绝启动任何其他东西/EFI/Microsoft/Boot/bootmgfw.efi),但每次您安装功能升级时(或者,如果在较旧的 Windows 版本上,每当更新更改涉及启动过程的某些内容时),Windows 都会将其重置为默认值。

如果要更新此配置,命令为:

bcdedit /set "{bootmgr}" path \path

将其替换\path为您要使用的引导加载程序的路径(用作\路径分隔符,相对于 EFI 系统分区的根目录),然后从管理 PowerShell 会话运行该命令。

相关内容