Windows 相当于 efibootmgr?

Nav*_*nan 5 terminal powershell boot cmd uefi

即使我使用 Ubuntu 的 efibootmgr 更改它,Windows 也会继续覆盖 UEFI 引导顺序。但是 BootNext 选项不会被覆盖,也就是说,我可以将 BootNext 设置为 Ubuntu,它会在重新启动时引导到 Ubuntu。因此,我编写了以下脚本以在每次启动到 Ubuntu 时运行:

efibootmgr > file.txt
CURR="$(grep "BootCurrent" file.txt | grep -Eo "[0-9]{4}")"
efibootmgr -n $CURR
rm file.txt
exit 0
Run Code Online (Sandbox Code Playgroud)

这确保我在从 Ubuntu 重新启动时可以启动到 grub。有没有办法从 Windows 执行相同的操作,以便在从 Windows 重新启动时可以启动到 grub?

编辑 :

运行 bcdedit /v 给出(没有 Ubuntu 条目):

Windows Boot Manager
--------------------
identifier              {9dea862c-5cdd-4e70-acc1-f32b344d4795}
device                  partition=\Device\HarddiskVolume1
path                    \EFI\ubuntu\shimx64.efi
description             Windows Boot Manager
locale                  en-US
inherit                 {7ea2e1ac-2e61-4728-aaa3-896d9d0a9f0e}
default                 {9b4692db-d6e1-11e6-8040-f733056555ec}
resumeobject            {9b4692da-d6e1-11e6-8040-f733056555ec}
displayorder            {9b4692db-d6e1-11e6-8040-f733056555ec}
toolsdisplayorder       {b2721d73-1db4-4c62-bf78-c548a880142d}
timeout                 0

Windows Boot Loader
-------------------
identifier              {9b4692db-d6e1-11e6-8040-f733056555ec}
device                  partition=C:
path                    \WINDOWS\system32\winload.efi
description             Windows 10
locale                  en-US
inherit                 {6efb52bf-1766-41db-a6b3-0ee5eff72bd7}
recoverysequence        {9b4692dc-d6e1-11e6-8040-f733056555ec}
displaymessageoverride  Recovery
recoveryenabled         Yes
isolatedcontext         Yes
allowedinmemorysettings 0x15000075
osdevice                partition=C:
systemroot              \WINDOWS
resumeobject            {9b4692da-d6e1-11e6-8040-f733056555ec}
nx                      OptIn
bootmenupolicy          Standard
Run Code Online (Sandbox Code Playgroud)

小智 8

在 Windows 上,您可以使用“ bcdedit /enum firmware”列出所有固件应用程序,然后bcdedit /set {fwbootmgr} bootsequence {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}使用“ ”设置 BootNext 选项。


vid*_*guy 1

您不需要创建类似于 {9b4692db-d6e1-11e6-8040-f733056555ec} 的 UBuntu 加载程序吗?

基本上 ubuntu 节点应该从引导管理器更改为引导加载程序应用程序。然后在 EFI\Boot\bootx64.efi 中有一个启动管理器。
为启动管理器创建一个 {bootmgr} 节点。设置其显示顺序以包括上面的两个指南。然后将 {bootmgr} 的默认值设置为 ubuntu guid。这应该会使 ubuntu 项目在重新启动后保持粘性。