如何讓 UEFI 自動啟動 Windows 10 的 Linux 啟動管理器(由 systemd-boot 管理)而不是作業系統啟動管理器?
我想使用 UEFI 韌體和 Windows 10 / Arch Linux 雙啟動設置我的筆記型電腦,以
systemd-boot
在啟動時預設使用 Linux 啟動管理器(由 管理),而不是作業系統啟動管理器(僅啟動 Windows 10)。在我自己解決此問題的嘗試中,我按下Esc
啟動鍵並按下F10
進入“BIOS 設置”。然後我轉到“啟動”選項卡,發現我從哪個設備啟動的選項是:
- USB (UEFI)
- USB
- 作業系統引導管理器
我目前的預設設置是 USB (UEFI),因為它使從實時 USB 啟動更加方便,因為這對我來說並不少見。
如您所見,沒有“Linux Boot Manager”選項。
F9
我可以在按啟動後按(這給我我的啟動選項)來訪問 Linux 啟動管理器選項Esc
,所以我知道它在那裡。它也可以,我目前正在執行 Arch Linux,我通過這種方法啟動了它。然而,這個問題是我問我是否可以讓我的筆記型電腦自動啟動 Linux 啟動管理器而不是作業系統啟動管理器,當沒有可用的實時 USB 啟動時。我跑了 Per Libre Arch 的回答:
efibootmgr -c -d /dev/sda -p 2 -l /EFI/systemd/systemd-bootx64.efi -L "Linux Boot Manager"
在 UEFI 中禁用安全模式和安全啟動後,返回:
** Warning ** : Boot0005 has same label Linux Boot Manager BootCurrent: 0005 Timeout: 2 seconds BootOrder: 0000,0006,3006,0001,0005,0008,2001,2002,2003 Boot0001* grub Boot0002* Notebook Hard Drive Boot0004* Internal Hard Disk or Solid State Disk Boot0005* Linux Boot Manager Boot0006* Windows Boot Manager Boot0007* Internal Hard Disk or Solid State Disk Boot0008* rEFInd Boot Manager Boot2001* USB Drive (UEFI) Boot2002* Internal CD/DVD ROM Drive (UEFI) Boot3000* Internal Hard Disk or Solid State Disk Boot3001* Internal Hard Disk or Solid State Disk Boot3002* Internal Hard Disk or Solid State Disk Boot3003* Internal Hard Disk or Solid State Disk Boot3006* Internal Hard Disk or Solid State Disk Boot0000* Linux Boot Manager
然而,每當我重新啟動我的 Windows 引導管理器(即作業系統引導管理器)時,預設情況下都會使用它。
/EFI/systemd/systemd-bootx64.efi
上確實存在/dev/sda2
。
您可能在Arch Linux 和 Windows 清除了 systemd-boot UEFI 條目*後安裝了 Windows 10。*您需要重新啟用 systemd-boot 才能獲得所需的菜單。確保您在 UEFI/BIOS 設置中禁用了安全啟動和快速啟動,並按照Arch Wiki 上的說明進行操作。
您還可以使用 GRUB 修復工具通過 live USB 安裝 GRUB(而不是 systemd-boot)。