BCDBoot 是一種命令行工具,可用來在電腦或裝置上設定開機檔案以執行 Windows作系統。 您可以在下列案例中使用此工具:
- 在套用新的 Windows 映射之後,將開機檔案新增至計算機。 在典型的映像型 Windows 部署中,使用 BCDBoot 來設定韌體和系統分割區以開機至您的映像。 若要深入瞭解,請參閱 擷取和套用 Windows、系統和復原分割區。
- 將電腦設定為從包含 Windows 映像檔的虛擬硬碟 (VHD) 檔案開機。 若要深入瞭解,請參閱 開機至 VHD(原生開機):將虛擬硬碟新增至開機功能表。
- 修復系統分割區。 如果系統分割區已損毀,您可以使用 BCDBoot 從 Windows 磁碟分區使用這些檔案的新複本重新建立系統分割區檔案。
- 在雙開機計算機上設定或修復開機功能表。 如果您已在計算機上安裝多個 Windows 複本,您可以使用 BCDBoot 來新增或修復開機功能表。
檔案位置
| Environment | 檔案位置 |
|---|---|
| Windows | %WINDIR%\System32\BCDBoot.exe |
| Windows 預安裝環境 (WinPE) | %WINDIR%\System32\BCDBoot.exe |
| Windows 評定及部署套件 (Windows ADK) | C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools\amd64\BCDBoot\BCDBoot.exe |
運作方式
若要設定系統分割區,BCDBoot 會將一組小型開機環境檔案從已安裝的 Windows 映射複製到系統分割區。
BCDBoot 可以使用最新版本的 Windows 檔案,在系統分割區上建立開機設定資料 (BCD) 存放區:
- BCDBoot 會建立一個新的 BCD 存放區,並透過
%WINDIR%\System32\Config\BCD-Template檔案在系統磁碟分區上初始化 BCD 開機環境檔案,包括 Windows 開機管理員。 - 在 Windows 10 和更新版本中,在升級期間,BCDBoot 會在建立新存放區時保留任何其他現有的開機專案,例如 debugsettings。
/c使用 選項來忽略舊的設定,並使用新的 BCD 存放區重新開始。 - 如果此 Windows 磁碟分區已經有開機專案,BCDBoot 預設會清除舊的開機專案及其值。 當您更新系統檔案時,請使用
/m選項來保留現有開機項目的值。 - 根據預設,BCDBoot 會將所選 Windows 磁碟分區的開機專案移至 Windows 開機管理員開機順序的頂端。
/d使用 選項來保留現有的開機順序。
BCDBoot 可以在 UEFI 電腦上更新裝置 NVRAM 中的韌體項目。
- BCDBoot 會在 NVRAM 中新增一個韌體項目,以指向 Windows 開機管理員。 根據預設,這個專案會放在開機清單中做為第一個專案。
/p使用 選項來保留現有的 UEFI 開機順序。 使用/addlast將它新增至開機順序列表底部。
指令行選項
下列命令行選項適用於 BCDBoot.exe。
BCDBOOT <source> [/l <locale>] [/s <volume-letter> [/f <firmware type>]] [/v] [/m [{OS Loader GUID}]] [/addlast or /p] [/d] [/c]
| Option | Description |
|---|---|
<源> |
Required. 指定要作為複製開機環境檔案來源的 Windows 目錄位置。 下列範例會使用 C:\Windows 資料夾中的 BCD 檔案,初始化系統分割區: |
/l <地區設定> |
Optional. 指定地區設定。 預設值為美式英文 ( 下列範例會將預設 BCD 地區設定設為日文: |
/s <磁碟區字母> |
Optional. 指定系統分割區的磁碟區字母。 此選項不應該用於一般部署案例。 當您設定將在另一部計算機上開機的磁碟驅動器時,請使用此設定來指定系統磁碟分區,例如 USB 快閃磁碟驅動器或次要硬碟。 UEFI:
簡介:
下列範例會將 BCD 檔案從 C:\Windows 資料夾複製到將在另一部電腦上開機的次要硬碟上的系統磁碟分區。 次要磁碟驅動器上的系統磁碟分區已指派磁碟區字母 S:
下列範例會在磁碟區字母 S 的 USB 快閃磁碟驅動器上建立開機項目,包括支援 UEFI 型或 BIOS 型電腦的開機檔案: |
/f <韌體類型> |
Optional. 指定韌體類型。 有效值包括
如果您指定 /f 選項,也必須指定 /s 選項,以識別系統分割區的磁碟區字母。 下列範例會將 BCD 檔案從 C:\Windows 資料夾複製到指派磁碟區字母 S 的 USB 快閃磁碟驅動器上,這些檔案支援在以 UEFI 或 BIOS 為基礎的電腦上開機。 |
/v |
Optional. 啟用詳盡模式。 Example: |
/m [{OS Loader GUID}] |
Optional. 將現有開機專案的值合併到新的開機專案。 根據預設,此選項只會合併全域物件。 如果您指定OS 載入器 GUID,此選項會合併系統範本中的載入器物件,以產生可開機的項目。 下列範例會將目前 BCD 存放區中,由指定 GUID 識別的作業系統載入器合併到新的 BCD 存放區中: |
/addlast |
Optional. 指定應該最後新增 Windows Boot Manager 韌體項目。 默認行為是先新增它。 無法搭配 /p 使用。 |
/p |
Optional. 指定現有的 Windows 開機管理員的韌體項目位置應該在 UEFI 開機順序中保留。 如果專案不存在,則會在第一個位置加入新的專案。 無法與 /addlast 搭配使用。 根據預設,在升級期間,BCDBoot 會將 Windows 開機管理員移至 UEFI 開機順序中的第一個選項。 |
/d |
Optional. 保留 Windows Boot Manager 中 {bootmgr} 物件的現有預設作業系統項目。 |
/c |
Optional. 指定開機檔案來源的映像根目錄。 此映像的 bcd 存放區必須使用相對於影像根目錄的路徑來建構。 Windows 10 的新功能:根據預設,升級期間會保留 BCD 元素,例如 debugsettings 或 flightsigning 。 |
/imageroot |
Optional. 保留 Windows Boot Manager 中 {bootmgr} 物件的現有預設作業系統項目。 |
/bootex |
Optional. 如果符合必要條件,請使用bootex二進位檔進行維護。 請參閱 如何管理與 CVE-2023-24932 相關的 Windows 開機管理員撤銷安全開機變更 |
/離線 |
Optional. 強制將啟動文件維護以離線方式處理。 開機檔案的選擇是根據是否存在「bootex」選項強制進行。 從 Windows 11 開始支援,版本 24H2 Build 26100.8037 及 25H2 Build 26100.8037。 以下範例強制選擇非 bootex 二進位檔:
以下範例強制選擇 bootex 二進位檔: |
修復系統分割區
如果系統分割區已損毀,您可以使用 BCDBoot 從 Windows 磁碟分區使用這些檔案的新複本重新建立系統分割區檔案。
將您的電腦開機至命令行。 例如,開機至 Windows 安裝磁碟,然後按 Shift+F10,或開機至 Windows PE(WinPE:建立 USB 可開機磁碟驅動器)。
使用 Diskpart 來判斷哪個驅動器號包含您的 Windows 磁碟分區和系統磁碟分區 (
diskpart, list vol, exit)。選擇性:格式化系統分割區:
format (drive letter of your system partition) /q新增 Windows 分區的開機項目:
bcdboot D:\Windows重新啟動電腦。 Windows 應該會出現。
在雙開機計算機上設定或修復開機功能表
設定電腦以啟動多個作業系統時,您有時可能會無法啟動其中一個作業系統。 BCDBoot 選項可讓您快速新增 Windows作系統的開機選項。 若要設定雙開機電腦:
安裝個別硬碟,或為每個作系統準備個別的磁碟分區。
安裝作業系統。 例如,如果您的電腦有 Windows 7,請將 Windows 10 安裝至其他硬碟或磁碟分區。
重新啟動電腦。 開機功能表應該會出現,並列出這兩個作系統。
如果兩個作業系統都未列出:
以系統管理員身分從 Windows 內部開啟命令行,或使用 Windows 安裝媒體開機到命令行,然後按 Shift+F10,或開機至 Windows PE(WinPE:建立 USB 可開機磁碟驅動器)。
新增 Windows作系統的開機選項。
bcdboot D:\Windows重新啟動電腦。 現在,開機功能表會顯示這兩個功能表選項。