我需要通过 Wubi 和单独的分区查看 Windows10/Ubuntu 安装的 BCDedit

WLC*_*WLC 11 grub2 dual-boot windows uefi

我似乎有 Windows 在 GRUB/Ubuntu 上经过。Windows 下没有 Ubuntu 文件夹。我可以从固件启动到 Grub,然后选择任一操作系统。我删除了 Wubi/Ubuntu 并直接重新安装到相同的分区。

Windows 启动管理器没有为 Ubuntu 创建一个条目,所以我需要创建该条目。Wubi 安装wubildr.mbr在我的系统上...但这对于 EFI 安装来说是错误的。我需要shimx64.efi这样在 EFI 中创建的 Windows 启动可能会工作。

我将使用 复制我的引导bcdedit,并将条目指向 Ubuntu。

如果这是不正确的,请告诉我下一步该怎么做?

小智 16

如果要使用bcdedit为 Ubuntu 添加 UEFI 条目,可以以管理员身份使用以下命令:

列出 UEFI 的所有 BCD 条目:

bcdedit /enum firmware
Run Code Online (Sandbox Code Playgroud)

复制“Windows Boot Manager”的 UEFI 条目,为 Ubuntu 创建一个新条目:

bcdedit /copy {bootmgr} /d "Ubuntu Secure Boot"
Run Code Online (Sandbox Code Playgroud)

为新的 Ubuntu 条目设置文件路径。将 {guid} 替换为上一个命令返回的 GUID。

bcdedit /set {guid} path \EFI\ubuntu\shimx64.efi
Run Code Online (Sandbox Code Playgroud)

可选择将 Ubuntu 设置为启动顺序中的第一个条目。将 {guid} 替换为复制命令返回的 GUID。

bcdedit /set {fwbootmgr} displayorder {guid} /addfirst
Run Code Online (Sandbox Code Playgroud)

或者,您可以使用为您完成工作的脚本:

@ECHO OFF
rem add Ubuntu EFI entry

bcdedit /enum firmware

for /f "tokens=2 delims={}" %%a in ('bcdedit /copy {bootmgr} /d "Ubuntu Secure Boot"') do set guid={%%a}
bcdedit /set %guid% path \EFI\ubuntu\shimx64.efi
bcdedit /set {fwbootmgr} displayorder %guid% /addfirst

bcdedit /enum firmware 
Run Code Online (Sandbox Code Playgroud)


ngn*_*gng 5

最简单的方法应该是EasyUEFI。EasyUEFI 可以为 Ubuntu 创建一个条目。\EFI\ubuntu\shimx64.efi该条目的正确文件路径。如有必要,您还可以更改引导顺序。