我在 DELL XPS 9320(unix 变体)上运行 ubuntu 22.04.3 + 维护,efibootmgr 版本 17,GNU bash 版本 5.1.16(1)-release(x86_64-pc-linux-gnu)
这是我上次尝试在 efibootmgr 中设置加载器的输出:
$ sudo efibootmgr -v -b 0006 -L alternate -l "\\EFI\\ubuntu\\shimx64.efi" -d /dev/nvme0n1
BootCurrent: 0005
Timeout: 0 seconds
BootOrder: 0006,0005,0000,0002,0001,0003,0004
Boot0000 ubuntu HD(1,GPT,cf3c865e-ea2b-40ea-a869-6c5d9634756d,0x22,0x77338)/File(\EFI\ubuntu\shimx64.efi)
Boot0001* Linux Firmware Updater HD(1,GPT,cf3c865e-ea2b-40ea-a869-6c5d9634756d,0x22,0x77338)/File(\EFI\ubuntu\fwupdx64.efi)
Boot0002* UEFI PC SN810 NVMe WDC 2048GB 230994444307 1 HD(1,GPT,cf3c865e-ea2b-40ea-a869-6c5d9634756d,0x22,0x77338)/File(\EFI\Boot\BootX64.efi)N.....YM....R,Y.
Boot0003* PEBOOT HD(1,GPT,d120a4ac-d9f3-450e-9569-3df52d5b6b9e,0x22,0x77338)/File(\EFI\PEBoot\bootx64.efi)
Boot0004 UEFI HTTPs Boot PciRoot(0x0)/Pci(0x1f,0x6)/MAC(000000000000,0)/IPv4(0.0.0.00.0.0.0,0,0)/Uri()N.....YM....R,Y.
Boot0005* rEFInd Boot Manager HD(1,GPT,cf3c865e-ea2b-40ea-a869-6c5d9634756d,0x22,0x77338)/File(\EFI\refind\refind_x64.efi)
Boot0006* alternate HD(1,GPT,cf3c865e-ea2b-40ea-a869-6c5d9634756d,0x22,0x77338)/File(EFIubuntushimx64.efi)
注意 BOOT0006 的文件名缺少斜杠。它应该与 BOOT0000 相同,保存条目名称备用代替Ubuntu。
这是我的问题:让 efibootmgr 在启动路径名中包含必要的分隔符。我尝试取消引用并引用-l操作数,使用正斜杠和反斜杠,并将它们加倍。
某个地方的某些东西(shell?terminal?efibootmgr?)似乎正在删除它们!