windows/ubuntu下修改主板uefi默认引导顺序

windows:
以管理员身份打开cmd,执行:
bcdedit /enum firmware
====
固件启动管理器
---------------------
标识符                  {fwbootmgr}
displayorder            {6e9edf43-4038-11ef-b884-806e6f6e6963}
                        {bootmgr}
                        {24f342ed-c536-11ed-ae87-bfc294c32d5b}
                        {24f342ee-c536-11ed-ae87-bfc294c32d5b}
                        {24f342ef-c536-11ed-ae87-bfc294c32d5b}
timeout                 0

Windows 启动管理器
--------------------
标识符                  {bootmgr}
device                  partition=\Device\HarddiskVolume6
path                    \EFI\Microsoft\Boot\bootmgfw.efi
description             Windows Boot Manager
locale                  zh-CN
inherit                 {globalsettings}
flightsigning           No
default                 {current}
resumeobject            {9d5fbce8-bb84-11ef-bcd8-b97ad1302669}
displayorder            {current}
toolsdisplayorder       {memdiag}
timeout                 30

固件应用程序(101fffff)
-------------------------------
标识符                  {24f342ed-c536-11ed-ae87-bfc294c32d5b}
description             EFI USB Device

固件应用程序(101fffff)
-------------------------------
标识符                  {24f342ee-c536-11ed-ae87-bfc294c32d5b}
description             EFI DVD/CDROM

固件应用程序(101fffff)
-------------------------------
标识符                  {24f342ef-c536-11ed-ae87-bfc294c32d5b}
description             EFI Network

固件应用程序(101fffff)
-------------------------------
标识符                  {24f342f1-c536-11ed-ae87-bfc294c32d5b}
description             EFI PXE 0 for IPv4 (E8-80-88-32-09-E5)

固件应用程序(101fffff)
-------------------------------
标识符                  {6e9edf43-4038-11ef-b884-806e6f6e6963}
device                  partition=\Device\HarddiskVolume2
path                    \EFI\ubuntu\shimx64.efi
description             ubuntu

固件应用程序(101fffff)
-------------------------------
标识符                  {80c4fcf4-356d-11ef-b875-806e6f6e6963}
device                  partition=\Device\HarddiskVolume2
path                    \EFI\ubuntu\shimx64.efi
description             EFI PXE 0 for IPv6 (E8-80-88-32-09-E5)
====

其中{bootmgr}是Windows,{6e9edf43-4038-11ef-b884-806e6f6e6963}是ubuntu。
displayorder            {6e9edf43-4038-11ef-b884-806e6f6e6963} 意思是默认启动ubuntu。
如果需要将默认项改为windows:
bcdedit /set {fwbootmgr} displayorder {bootmgr} /addfirst
然后验证:
bcdedit /enum firmware
====
固件启动管理器
---------------------
标识符                  {fwbootmgr}
displayorder            {bootmgr}
                        {6e9edf43-4038-11ef-b884-806e6f6e6963}
                        {24f342ed-c536-11ed-ae87-bfc294c32d5b}
                        {24f342ee-c536-11ed-ae87-bfc294c32d5b}
                        {24f342ef-c536-11ed-ae87-bfc294c32d5b}
timeout                 0
...
====

ubuntu:
sudo apt install efibootmgr
sudo efibootmgr -v
====
udo efibootmgr -v
BootCurrent: 0000
Timeout: 0 seconds
BootOrder: 0000,0004,2001,2002,2003
Boot0000* ubuntu	HD(2,GPT,482a0972-8bb0-47e8-ad58-72544161a93e,0x8000,0x5f800)/File(\EFI\ubuntu\shimx64.efi)RC
Boot0002* EFI PXE 0 for IPv4 (E8-80-88-32-09-E5) 	PciRoot(0x0)/Pci(0x2,0x3)/Pci(0x0,0x0)/MAC(e880883209e5,0)/IPv4(0.0.0.00.0.0.0,0,0)RC
Boot0003* EFI PXE 0 for IPv6 (E8-80-88-32-09-E5) 	PciRoot(0x0)/Pci(0x2,0x3)/Pci(0x0,0x0)/MAC(e880883209e5,0)/IPv6([::]:<->[::]:,0,0)RC
Boot0004* Windows Boot Manager	HD(1,GPT,a105c1d0-3330-48e1-8798-fbfec93dbc48,0x800,0x32000)/File(\EFI\Microsoft\Boot\bootmgfw.efi)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
Boot2001* EFI USB Device	RC
Boot2002* EFI DVD/CDROM	RC
Boot2003* EFI Network	RC
====

复制BootOrder: 0000,0004,2001,2002,2003里面的全部内容,调整顺序,执行:
sudo efibootmgr -o 0004,0000,2001,2002,2003