「開機菜單出現多個 Windows 7」、「刪除分區後無法啟動」、「雙系統引導損壞」——這些啟動故障本質上是 BCD(啟動配置數據)存儲損壞或引導扇區不匹配。本文系統講解 Win7 啟動架構、BCD 編輯實戰、多系統獨立引導配置、UEFI/BIOS 雙模式修復流程,並提供 `bcdedit`/`bootsect`/`BCDBoot` 核心命令速查表,助你從容應對各類啟動危機。
| 階段 | BIOS/MBR | UEFI/GPT |
|---|---|---|
| 固件 | MBR (446 字節引導代碼) → 查找活動分區 | UEFI 固件 → 讀取 ESP 分區 `\EFI\Microsoft\Boot\bootmgfw.efi` |
| 引導管理器 | `bootmgr` (根目錄) → 讀取 `\Boot\BCD` | `bootmgfw.efi` → 讀取同目錄 BCD |
| 加載器 | `winload.exe` (BIOS) / `winload.efi` (UEFI) | 同左 |
| 內核 | `ntoskrnl.exe` → 初始化驅動/會話 | 同左 |
關鍵文件: BCD 存儲(`\Boot\BCD` 或 ESP 分區)包含所有啟動項配置(設備路徑、OS 路徑、參數、恢復序列)。
REM 1. 列舉所有啟動項,記下 identifier (如 {guid})
bcdedit /enum all
REM 2. 刪除指定啟動項
bcdedit /delete {target-guid} /cleanup
REM 3. 設置默認啟動項 (可選)
bcdedit /default {keeper-guid}
REM 4. 設置顯示倒計時 (秒)
bcdedit /timeout 10
REM 從 Win7 安裝媒體/修復光盤啟動 → 修復電腦 → 命令提示符
bootsect /nt60 SYS /mbr REM 寫入 Win7 MBR 引導代碼
bcdboot C:\Windows /s C: /f BIOS REM 重建 BCD 並複製引導文件到系統分區
REM 若系統分區非 C:,請替換為實際盤符 (用 diskpart 確認)
REM 確認 ESP 分區 (通常 100-500MB, FAT32, 掛載字母如 Z:)
diskpart
list disk
select disk 0
list partition
select partition 1 REM ESP 分區
assign letter=Z
exit
bcdboot C:\Windows /s Z: /f UEFI REM 重建 UEFI BCD 到 ESP 分區
REM 若需同時支援 BIOS 回退
bcdboot C:\Windows /s Z: /f ALL
核心思想:每個系統分區獨立保存完整引導文件,通過固件啟動順序或第三方引導管理器選擇啟動分區。
| 命令 | 用途 | 典型參數 |
|---|---|---|
bcdedit | 查看/修改/備份/還原 BCD | `/enum`, `/copy`, `/delete`, `/set`, `/export`, `/import` |
bootsect | 更新 MBR/PBR 引導扇區代碼 | `/nt60` (Vista+), `/nt52` (XP), `/mbr`, `/force` |
bcdboot | 初始化/修復 BCD 並複製引導文件 | `/s |
diskpart | 分區管理、掛載 ESP、標記活動 | `list vol`, `sel part`, `assign letter=`, `active` |
reagentc | Windows RE 恢復環境配置 | `/enable`, `/disable`, `/setosimage` |
掌握 BCD 結構與三大核心命令(`bcdedit`/`bootsect`/`bcdboot`),配合 `diskpart` 分區定位,Win7 及後續所有 NT 內核系統的啟動故障均可在命令列層面徹底解決。建議製作包含修復腳本的 WinPE/WinRE 維護媒體,關鍵時刻一鍵救援。