我已經使用 Ubuntu 15.10 一段時間了,但最近(非常不情願)在同一個 SSD(根據需要將分割表轉換為 GPT)上安裝了 Windows 7,但在單獨的 NTFS 分割區上。我以為我確實正確地重新安裝了 grub,但我的 PC 目前的行為告訴我情況並非如此:它能夠正常啟動 Windows(透過啟動覆蓋),但不能啟動 Ubunutu。
然後,我繼續使用可啟動快閃磁碟機中的 boot-repair-cd,一切正常,直到執行 kernel-purge-then-reinstall 步驟(卡在「(ins)」)。我現在無法啟動任一作業系統,無論是 EFI 還是舊版。
任何願意調查我的問題的人都可以在以下位置找到更多詳細信息http://paste.ubuntu.com/16207880/ 根據這些詳細信息,sdc(我的系統磁碟)上似乎安裝了一些 grub,但不是以可引導的方式。在我的情況下,sda 和 sdb 是 RAID 安裝的,並且僅包含資料。
我在這裡遇到了路障,白髮每時每刻都在生長!
先謝謝您的幫忙!
答案1
您的磁碟沒有引導程式。我的有根據的猜測根據您的描述,發生的事情是:
- 您在 BIOS/CSM/legacy 模式下安裝了 Ubuntu。
- 當您嘗試安裝 Windows 7 時,您以 EFI/UEFI 模式啟動,因此它抱怨 MBR 分割區表,您將其轉換為 GPT 並以 EFI/UEFI 模式安裝 Windows。這會導致 Windows 可啟動而 Ubuntu 無法啟動。這本來可以修復,但是......
- 您在 BIOS 模式下啟動了引導修復,然後繼續刪除EFI系統分割區持有 Windows 啟動載入程序,從而導致 Windows 無法啟動;不管是什麼原因,引導修復無法再次引導 Linux。
此時我推薦你請閱讀我關於 CSM 及其危險的頁面了解背景資訊。如果不了解 CSM,您很可能會再次陷入同樣的困境。
幾乎總是最好在相同的開機模式下以雙重開機方式安裝兩個作業系統 - 即都在 BIOS 模式下或都在 EFI 模式下。混合啟動模式會導致災難。此外,考慮到大多數 EFI 的設計方式,引導模式通常最好是 EFI;正如我的頁面所描述的,使用 BIOS 模式會使啟動過程變得複雜,很可能導致成功啟動出現問題。因此,我有一些具體的建議:
- 禁用您的 CSM。這是要做的最重要的事。
- 更改 的類型代碼,
/dev/sdc1
使其成為 ESP。 (它目前被標記為 BIOS 引導分割區,這對於 EFI 模式引導來說是無用的。)請注意,該分割區有可能仍然保存著 Windows 引導程序,因此您只需將其正確標記為 ESP 即可啟動Windows;但您可能需要在其上建立新的 FAT32 檔案系統並進行更多修復。您可以gdisk
透過將類型代碼從 EF02 變更為 EF00 來變更類型代碼;或parted
透過刪除bios_grub
標誌並用標誌替換它來使用或 GPartedboot
。 - 使用 Windows 工具重新安裝 Windows 開機載入程式。您應該在 Windows 論壇上詢問如何執行此操作的詳細資訊。
- 安裝適用於 Linux 的 EFI 開機載入程式。有幾種相對簡單的方法可以做到這一點:
- 使用啟動修復,但啟動修復磁碟在 EFI 模式下。 (如果無法在 EFI 模式下啟動,磁碟可能準備不正確。我之前引用的 CSM 頁面詳細介紹了這個主題。)
- 準備我的 USB 隨身碟或 CD-R 映像rEFInd 啟動管理器。(兩者的映像都在該頁面上。)用它啟動,並使用 rEFInd 啟動 Ubuntu。然後,您可以使用 Debian 軟體包或 PPA 將 rEFInd 安裝到硬碟。
您可以重新安裝一個或兩個作業系統,而不是最後兩個頂級要點 - 但請務必使用相同的引導模式(最好是 EFI 模式)。請注意,如果您停用 CSM 並修復 ESP 的類型程式碼,效果最佳。
答案2
你對所發生的事情耿耿於懷。與其他人討論後,我意識到在具有 GPT 分割區表的單一 SSD 上雙重啟動 Ubuntu 和 Windows 7 並不是一條糟糕的路線。顯然 MBR/舊版設定問題最少。我以這種方式重新安裝了一切,現在就像魅力一樣。謝謝你的時間。