傳統雙系統安裝順序為「先 XP 後 Vista」,由 Vista 的 Bootmgr 接管引導。但 Vista 引導管理器較複雜,修復困難。本文介紹「反向思維」:以 XP 的 NTLDR + Boot.ini 為主引導,載入 Vista,簡化管理、易於備份還原。適用於雙主分區、各自獨立安裝的純淨雙系統架構。
架構設計原則
- 兩系統安裝於不同主分區,互不干擾。
- 啟動流程:BIOS → MBR → NTLDR → Boot.ini 選單 → 選擇 XP 或 Vista。
- Vista 的 Bootmgr 僅作為 Vista 內部啟動載入器,不參與多重開機選單。
必要工具準備
- MBR 備份工具:WinHex(Windows)、Debug(DOS)、dd(Linux)。
- 分區工具:Windows 磁碟管理(可標示作用中分區)、SPFDisk、Partition Magic(避免 PQ 導致 Boot.ini 引導 Vista 失敗)。
- 建議分區佈局:
Partition 1 (Primary, Active) → Windows XP
Partition 2 (Primary) → Windows Vista
XP 分區置前,便於 Boot.ini 的 partition(1) 索引。
方案 A:先安裝 XP,再安裝 Vista
- 設定分區 1 為作用中,安裝 Windows XP。
- 進入 XP,用 WinHex 備份 MBR 為
MBR.1(實體磁碟 → 編輯 → 複製磁區)。
- 設定分區 2 為作用中,安裝 Windows Vista(此時 MBR 被 Vista 的 Bootmgr 覆寫)。
- 進入 Vista,備份 MBR 為
MBR.2。
- 重新設定分區 1 為作用中,啟動進入 XP。
- 將
MBR.2 複製到 XP 系統分區根目錄(C:\)。
- 編輯
C:\boot.ini,新增一行:
C:\MBR.2="Microsoft Windows Vista Ultimate"
方案 B:先安裝 Vista,再安裝 XP
- 設定分區 2 為作用中,安裝 Windows Vista。
- 備份 MBR 為
MBR.2。
- 設定分區 1 為作用中,安裝 Windows XP(XP 安裝程式會寫入 NTLDR,覆寫 MBR)。
- 備份 MBR 為
MBR.1(此即純 XP MBR)。
- 啟動進入 XP,將
MBR.2 複製到 C:\,修改 boot.ini 新增同樣一行引導 Vista 的項目。
移除其中一系統
- 移除 XP:設定分區 2 作用中 → 刪除/格式化分區 1。
- 移除 Vista:刪除
boot.ini 中 Vista 項目 → 刪除 C:\MBR.2 → 處理分區 2(格式化或保留資料)。
關鍵提醒
- 必須使用 Windows 內建磁碟管理 或 SPFDisk 分區,避免 PQ Magic 導致分區邊界偏移,引發 Boot.ini 引導 Vista 失敗(錯誤 0xC000000F / 0xC0000225)。
boot.ini 中 multi(0)disk(0)rdisk(0)partition(1) 的 partition 數值必須對應實際分區順序(從 1 開始)。
- 備份 MBR 時務必選取實體磁碟第一磁區(512 bytes),非分區起始磁區。
WinHex 備份 MBR 步驟補充
- 啟動 WinHex → F9 開啟實體磁碟。
- 選取目標磁碟(通常為 Physical Disk 1/2)。
- 選單:編輯 → 複製磁區(Ctrl+Shift+N)。
- 起始磁區 0,數量 1,儲存為
MBR.1 或 MBR.2。
此架構最大優勢在於:引導核心掌握在穩定、簡單、易編輯的 NTLDR 手中,Vista 僅作為一個被載入的選項,極大降低雙系統維護複雜度。