我已經同時運行 Windows 10 和 Ubuntu 16.04 有一段時間了。我可以使用 Grub 引導程式引導到任一作業系統。不幸的是,我的 Windows 10 安裝失敗,我需要重新安裝。
重新安裝 Windows 10 後,我無法再使用 Grub 引導程式啟動它。因此,我使用可啟動的 Windows USB 執行以下命令來重新獲得對 Windows 的存取權限:
bootrec.exe /fixmbr
bootrec.exe /fixboot
bootrec.exe /rebuildbcd
之後,我easyBCD
為 Windows 10 和 Ubuntu 建立了一個新的引導程式選單。這讓它再次發揮作用。我現在要做的是使用 Windows 10 啟動功能表選擇 Windows 10 或 Ubuntu,如果我選擇 Windows 10,它會直接進入作業系統。如果我選擇 Ubuntu,我會被發送到 Grub 引導程序,其中包含與我的舊(?)Windows 10 的損壞連結(?)。
我想要實現的是,我再次擁有 Grub 引導程式下的所有內容,但我對這裡發生的事情感到非常困惑,所以我希望有人可以幫助我。
編輯:當我嘗試在 Grub 定制器中保存時,它似乎Grub Customizer
被刪除了。/etc/grub.d/40_custom
當我在原始文件中添加這些行並將其保存在那裡時,引導選項將不會顯示在 Grub 定製程式中。
答案1
嘗試這個解決方法
執行這些命令:-
/etc/grub.d/
gedit 40_custom
在 40_custom 檔案中新增以下行:
menuentry "Windows 10" {
set root='(hd0,1)'
chainloader +1
}
如果失敗,請嘗試以下操作:
menuentry "Windows 10" {
set root='(hd0,msdos1)'
chainloader +1
}
編輯儲存檔案並執行以下命令後:
grub2-mkconfig -o /boot/grub2/grub.cfg
它在主設定檔中新增 Windows 條目。
然後輸入:
reboot
答案2
嘗試os-prober
。由於您安裝了另一個引導程序,因此也需要重新安裝 GRUB。執行以下命令來安裝os-prober
和更新 GRUB 設定:
sudo apt-get update
sudo apt-get install os-prober
sudo grub-install /dev/sda
sudo update-grub
現在重新啟動,您的 GRUB 選單應該已修復!
答案3
看起來 grub 成功找到了 Windows EFI 加載程序,然後停止添加一個啟動項,但是該啟動項連結到了無效(舊)的 Windows 安裝。
您能找出Windows啟動管理器現在運作在哪種模式下,即UEFI或Legacy嗎?由於 grub 可能已檢測並使用(舊的)EFI 映像,而不是進一步探測另一個舊版替代方案。
PS 如果您想從任一啟動管理器啟動任一作業系統,更公平的方法是使用第三方啟動管理器。 rEFInd 是不錯的選擇。它穩定且強大,足以處理由於雙方系統更新而導致的潛在變化。