如果您最近在Windows附近安裝了Ubuntu,或者與Windows一起安裝了任何其他版本的Linux,那麼您可能遇到了一個問題,即計算機仍然無法引導到Linux,而是導入Windows。 這是具有EFI Boot Manager的計算機的常見副作用。
本指南將向您介紹如何讓您的計算機顯示一個菜單,其中包含用於啟動到Ubuntu或Windows的選項。
進入Linux的Live版本
為了遵循本指南,您需要啟動到Linux的實時版本 。
- 將您用來安裝Linux的USB或DVD插入到您的計算機上。
- 啟動進入Windows
- 按住shift鍵並重新啟動系統(按住shift鍵)
- 當出現藍屏時點擊啟動USB設備或DVD的選項
- 現在,Linux應該像第一次安裝時一樣加載到操作系統的實時版本中。
如何安裝EFI Boot Manager
本指南將向您展示如何使用EFI Boot Manager,它可以讓您操作引導順序,以便引導到Linux和Windows。
如何找出當前引導順序
要找出系統將加載的順序,請輸入以下命令:
sudo efibootmgr
命令的sudo部分將您的權限提升為使用efibootmgr時所需的root用戶權限。您必須是root用戶才能使用efibootmgr。
輸出結果如下所示:
- BootCurrent:0004
- 超時:0秒
- BootOrder:0004,0001,0002,0005,0006,2001
- Boot0001 Windows啟動管理器
- Boot0002網絡
- Boot0004 ubuntu
- Boot0005硬盤
- Boot0006 CD / DVD / CD-RW驅動器
- Boot2001 EFI USB設備
那麼這告訴我們什麼?
BootCurrent行顯示當前使用哪個引導選項。 就我而言,它實際上是Linux Mint,但Linux Mint是Ubuntu的衍生產品,因此0004 = ubuntu。
“超時”會告訴您在選擇第一個啟動選項之前菜單顯示的時間長度,默認為0。
BootOrder顯示每個選項的加載順序。 只有在列表中的下一項無法加載前一項時才會被選中。
在上面的例子中,我的系統將首先引導0004,這是Ubuntu,然後0001是Windows,0002網絡,0005硬盤,0006 CD / DVD驅動器,最後是2001年的USB驅動器。
如果訂單是2001,0006,0001,那麼系統會嘗試從USB驅動器加載,如果沒有任何存在,它將從DVD驅動器啟動,最後啟動Windows。
如何更改EFI引導順序
使用EFI Boot Manager的最常見原因是更改引導順序。 如果你已經安裝了Linux,並且出於某種原因,它首先啟動Windows,那麼你將需要在啟動列表中找到你的Linux版本,並在Windows之前啟動它。
例如,拿這個清單:
- BootCurrent:0001
- 超時:0秒
- BootOrder:0001,0004,0002,0005,0006,2001
- Boot0001 Windows啟動管理器
- Boot0002網絡
- Boot0004 ubuntu
- Boot0005硬盤
- Boot0006 CD / DVD / CD-RW驅動器
- Boot2001 EFI USB設備
您應該希望能夠看到Windows首先啟動,因為它被分配給引導順序中第一個0001。
除非Windows無法啟動,否則Ubuntu不會加載,因為它被分配到引導順序列表中0001之後的0004。
不僅在引導順序中的Windows之前放置Linux,USB驅動器和DVD驅動器是一個好主意。
要更改引導順序,以便首先使用USB驅動器,然後使用DVD驅動器,然後使用ubuntu,最後使用以下命令。
sudo efibootmgr -o 2001,0006,0004,0001
您可以按如下所示使用較短的表示法:
sudo efibootmgr -o 2001,6,4,1
引導列表現在應該如下所示:
- BootCurrent:0001
- 超時:0秒
- BootOrder:2001,0006,0004,0001
- Boot0001 Windows啟動管理器
- Boot0002網絡
- Boot0004 ubuntu
- Boot0005硬盤
- Boot0006 CD / DVD / CD-RW驅動器
- Boot2001 EFI USB設備
請注意,如果您未能列出所有可能的選項,那麼它們將不會列為引導順序的一部分。 這意味著0002和0005將被忽略。
如何更改下次引導的引導順序
如果您想臨時創建它,以便計算機的下次啟動使用特定的選項,請使用以下命令:
sudo efibootmgr -n 0002
- BootCurrent:0001
- 超時:0秒
- BootOrder:2001,0006,0004,0001
- Boot0001 Windows啟動管理器
- Boot0002網絡
- Boot0004 ubuntu
- Boot0005硬盤
- Boot0006 CD / DVD / CD-RW驅動器
- Boot2001 EFI USB設備
使用上面的列表這將意味著計算機下次啟動時它將嘗試從網絡啟動。
如果您改變主意並想刪除下一個引導選項,請運行以下命令取消它。
sudo efibootmgr -N
設置超時
如果您希望每次計算機加載時都能從列表中進行選擇,則可以指定超時。
為此,請輸入以下命令:
sudo efibootmgr -t 10
上述命令將設置10秒的超時時間。 時間用完後,將選擇默認啟動選項。
您可以使用以下命令刪除超時值:
sudo efibootmgr -T
如何刪除啟動菜單項
如果您的系統已經雙啟動,並且您想要恢復到只有一個系統,那麼您需要調整啟動順序,以便您正在刪除的那個不是首先出現在列表中,並且您需要將該項目從引導順序。
- BootCurrent:0001
- 超時:0秒
- BootOrder:2001,0006,0004,0001
- Boot0001 Windows啟動管理器
- Boot0002網絡
- Boot0004 ubuntu
- Boot0005硬盤
- Boot0006 CD / DVD / CD-RW驅動器
- Boot2001 EFI USB設備
如果你有上面的啟動選項,並且你想刪除Ubuntu,那麼你應該首先更改啟動順序,如下所示:
sudo efibootmgr -o 2001,6,1
然後,您將使用以下命令刪除Ubuntu引導選項:
sudo efibootmgr -b 4 -B
第一個-b選擇引導選項0004,-B刪除引導選項。
您可以使用類似的命令使引導選項處於非活動狀態,如下所示:
sudo efibootmgr -b 4 -A
您可以使用以下命令使引導選項再次處於活動狀態:
sudo efibootmgr -b 4 -a
進一步閱讀
還有更多命令可供OS安裝人員首先創建引導菜單選項,並供系統管理員創建網絡引導選項。
通過使用以下命令閱讀EFI Boot Manager的手冊頁,可以找到更多關於這些內容的信息:
男人efibootmgr