萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 電腦故障排除 >  >> 電腦常見故障 >> 系統無法啟動

開機卡在 GNU GRUB 介面無法進入 Windows?雙系統殘留 GRUB 修復 MBR 完整教學

刪除 Linux 分區、或 Ghost 還原 Windows 映像後,開機卻進入 grub> 命令列或 GRUB 選單,無法直接啟動 Windows。這是因為 Linux 安裝時將 GRUB 寫入 MBR (主開機記錄),覆蓋了 Windows 原生開機程式碼,刪除 Linux 分區後 GRUB 找不到設定檔 (grub.cfg) 而停留在救援模式。

核心概念:MBR 結構與多重開機

  • MBR = 512 Bytes:前 446 Bytes 開機程式碼 + 64 Bytes 分區表 (DPT) + 2 Bytes 結束標記 (55AA)。
  • Windows 安裝程式只會修復前 446 Bytes 開機碼,**不動分區表**。
  • GRUB/LILO 安裝到 MBR 後,Windows 開機碼仍存在,只是被 GRUB 接管引導權。

四大修復方案 (由易到專業)

方案一:Windows 安裝媒體 + 修復主控台 (最標準、支援 UEFI/Legacy)

  1. Windows 10/11 安裝 USB 開機 → 修復電腦 → 疑難排解 → 進階選項 → 命令提示字元。
  2. 執行:
    bootrec /scanos
    bootrec /fixmbr (重寫前 446 Bytes 開機碼)
    bootrec /fixboot (寫入新開機磁區)
    bootrec /rebuildbcd (重建 BCD 存儲)
  3. UEFI 系統額外執行:bcdboot C:\Windows /l zh-tw /f UEFI。
  4. 重開機驗證。

方案二:GRUB 救援模式指令手動啟動 Windows (無安裝媒體時)

在 grub> 提示符下輸入:

rootnoverify (hd0,0)   # 第 1 顆硬碟第 1 個分區 (通常為 Windows 系統保留/系統分區)
chainloader +1         # 移交引導權給該分區首扇區 (VBR)
boot                   # 啟動

若失敗,嘗試 (hd0,1)、(hd0,2)… 直到找到正確分區。進入 Windows 後立即執行方案一徹底修復 MBR。

方案三:DOS 環境下 fdisk /mbr (僅限 Legacy/MBR、極舊系統)

Win98/PE 開機至純 DOS → fdisk /mbr。警告: 會清除多重開機選單,僅保留單一 Windows 啟動,現代系統**不建議使用**。

方案四:第三方工具一鍵修復 (圖形化、適合新手)

  • Bootice:MBR/PBR/BCD 編輯、備份還原、UEFI 啟動項管理。
  • EasyBCD:圖形化 BCD 編輯、新增/刪除開機項、修復 MBR。
  • Windows Boot Genius / AOMEI Partition Assistant:整合修復功能。

預防措施:安裝 Linux 時不要寫入 MBR

安裝 Linux 時選擇「安裝開機載入器至」→ 選擇 Linux 根分區 (如 /dev/sda5) 或專用 /boot 分區,**不要選擇 /dev/sda (整顆硬碟/MBR)**。Windows 開機管理員 (BCD) 可透過 EasyBCD 新增 Linux 開機項,實現雙系統共存不互搶 MBR。

現代 UEFI 系統:完全不同的機制

UEFI 系統使用 ESP 分區儲存 .efi 開機檔,不使用 MBR。修復方式:
① BIOS 確認啟動順序指向 Windows Boot Manager。
② 安裝媒體修復主控台執行 bcdboot 重建 BCD。
③ diskpart 確認 ESP 分區 ID=EFI System Partition、格式 FAT32、掛載代號 (通常 S:)。

copyright © 萬盛學電腦網 all rights reserved