BCDBoot 命令列選項

BCDBoot 是一種命令列工具,用來設定電腦或裝置上執行 Windows 作業系統的開機檔案。 您可以在下列案例中使用此工具:

  • 套用新的 Windows 映像之後,將開機檔案新增至電腦。 在一般以映像為基礎的 Windows 部署中,使用 BCDBoot 來設定要開機至映像的韌體和系統磁碟分割。 若要深入了解,請參閱擷取及套用 Windows、系統和復原磁碟分割
  • 將電腦設定為開機至包含 Windows 映像的虛擬硬碟 (VHD) 檔案。 若要深入了解,請參閱開機至 VHD (原生開機):將虛擬硬碟新增至開機功能表
  • 修復系統磁碟分割。 如果系統磁碟分割已損毀,您可使用 BCDBoot 來重建系統磁碟分割檔案,其做法是使用 Windows 磁碟分割中這些檔案的新複本。
  • 設定修復雙系統開機電腦上的開機功能表。 如果您已在電腦上安裝一個以上的 Windows 複本,則可使用 BCDBoot 來新增或修復開機功能表。

檔案位置

環境 檔案位置
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 存放區,並使用 檔案初始化系統磁碟分割上的 BCD 開機環境檔案,包括 Windows 開機管理員 %WINDIR%\System32\Config\BCD-Template
  • 在Windows 10和更新版本中,BCDBoot 會在建立新存放區時保留任何其他現有的開機專案,例如debugsettings/c使用 選項來忽略舊設定,然後從新的 BCD 存放區重新開始。
  • 如果已經有此 Windows 磁碟分割的開機項目,則 BCDBoot 預設會清除舊的開機項目和其值。 /m當您更新系統檔案時,請使用 選項來保留現有開機專案中的值。
  • 根據預設,BCDBoot 會將所選 Windows 磁碟分割的開機項目移至 Windows 開機管理程式開機順序的頂端。 /d使用 選項來保留現有的開機順序。

在 UEFI 電腦上,BCDBoot 可以更新裝置 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]
選項 描述

<source>

必要。 指定 Windows 目錄位置以作為複製開機環境檔案的來源。

下列範例會使用C:\Windows 資料夾中的 BCD 檔案來初始化系統磁碟分割:

bcdboot C:\Windows

/l <locale>

選擇性。 指定地區設定。 預設值為美式英文 (en-us)。

下列範例會將預設 BCD 地區設定設為日文:

bcdboot C:\Windows /l ja-jp

/s <volume letter>

選擇性。 指定系統磁碟分割的磁碟區代號。 在一般部署案例中不得使用此選項。

當您要設定將在另一部電腦上開機的磁碟機 (例如 USB 快閃磁碟機或次要硬碟) 時,請使用此設定來指定系統磁碟分割。

UEFI

  • BCDBoot 會將開機檔案複製到 EFI 系統磁碟分割,或 /s 選項所指定的磁碟分割。

    BCDBoot 會在相同的磁碟分割中建立 BCD 存放區。

    根據預設,BCDBoot 會在韌體的 NVRAM 中建立 Windows 開機管理程式項目,以識別系統磁碟分割上的開機檔案。 若已使用 /s 選項,則不會建立此項目。 相反地,BCDBoot 會依賴預設韌體設定來識別系統磁碟分割上的開機檔案。 根據 UEFI 2.3.1 規格,預設韌體設定應會開啟 EFI 系統磁碟分割 (ESP) 中的檔案:\efi\boot\bootx64.efi。

BIOS

  1. BCDBoot 會將開機檔案複製到主要硬碟上的使用中磁碟分割,或是 /s 選項所指定的磁碟分割。

  2. BCDBoot 會在相同的磁碟分割中建立 BCD 存放區。

下列範例會將 BCD 檔案從 C:\Windows 資料夾複製到次要硬碟上將在另一部電腦上開機的系統磁碟分割。 次要磁碟機上的系統磁碟分割已被指派磁碟區代號 S

bcdboot C:\Windows /s S:

下列範例會在具有磁碟區代號 S 的 USB 快閃磁碟機上建立開機項目,包括支援 UEFI 型或 BIOS 型電腦的開機檔案:

bcdboot C:\Windows /s S: /f ALL

/f <firmware type>

選擇性。 指定韌體類型。 有效值包括 UEFIBIOSALL

  • 在 BIOS/MBR 型系統上,預設值為 BIOS。 此選項會在系統磁碟分割上建立 \Boot 目錄,並將所有必要的開機環境檔案複製到這個目錄。

  • 在 UEFI/GPT 型系統上,預設值為 UEFI。 此選項會建立 \Efi\Microsoft\Boot 目錄,並將所有必要的開機環境檔案複製到這個目錄。

  • 當您指定 ALL 值時,BCDBoot 會同時建立 \Boot\Efi\Microsoft\Boot 目錄,並將適用於 BIOS 和 UEFI 的所有必要開機環境檔案複製到這些目錄。

如果您指定 /f 選項,則也必須指定 /s 選項,以識別系統磁碟分割的磁碟區代號。

下列範例會將支援在 UEFI 型或 BIOS 型電腦上開機的 BCD 檔案,從 C:\Windows 資料夾複製到已被指派磁碟區代號 S 的 USB 快閃磁碟機:

bcdboot C:\Windows /s S: /f ALL 

/v

選擇性。 啟用詳細資訊模式。 範例:

bcdboot C:\Windows /v

/m [{OS Loader GUID}]

選擇性。 將現有開機項目的值合併到新的開機項目。

根據預設,此選項只會合併全域物件。 如果您指定 OS Loader GUID,此選項會在系統範本中合併載入器物件,以產生可開機的項目。

下列範例會合併目前 BCD 存放區中指定的 GUID 可在新 BCD 存放區中識別的作業系統載入器:

bcdboot c:\Windows /m {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}

/addlast

選擇性。 指定應該最後新增的 Windows 開機管理程式韌體項目。 預設行為是先新增該項目。 無法搭配 /p 使用。

bcdboot C:\Windows /addlast

/p

選擇性。 指定現有的 Windows 開機管理程式韌體項目位置應保留在 UEFI 開機順序中。 如果項目不存在,則會在第一個位置新增項目。 無法搭配 /addlast 使用。

根據預設,在升級期間,BCDBoot 會將 Windows 開機管理程式移至 UEFI 開機順序中的第一個項目。

bcdboot C:\Windows /p
bcdboot C:\Windows /p /d

/d

選擇性。 在 Windows 開機管理程式的 {bootmgr} 物件中保留現有的預設作業系統項目。

bcdboot C:\Windows /d

/c

選擇性。 指定不得遷移任何現有的 BCD 元素。

Windows 10 的新功能:在升級期間,預設會保留 debugsettingsflightsigning 之類的 BCD 元素。

bcdboot C:\Windows /c

修復系統磁碟分割

如果系統磁碟分割已損毀,您可使用 BCDBoot 來重建系統磁碟分割檔案,其做法是使用 Windows 磁碟分割中這些檔案的新複本。

  1. 將您的電腦開機到命令列。 例如,開機至 Windows 安裝磁碟並按 Shift+F10,或開機至 Windows PE (WinPE:建立可開機的 USB 磁碟機)。

  2. 使用 Diskpart 來判斷哪個磁碟機代號包含您的 Windows 磁碟分割和系統磁碟分割 (diskpart, list vol, exit)。

  3. 選擇性:將系統磁碟分割格式化:format (drive letter of your system partition) /q

  4. 新增 Windows 磁碟分割的開機項目:bcdboot D:\Windows

  5. 將電腦重新開機。 Windows 應會出現。

設定或修復雙系統開機電腦上的開機功能表

設定電腦來啟動一個以上的作業系統時,您有時可能會無法開機進入其中一個作業系統。 BCDBoot 選項可讓您快速新增 Windows 作業系統的開機選項。 若要設定雙系統開機電腦:

  1. 安裝不同的硬碟,或為每個作業系統準備個別的磁碟分割。

  2. 安裝作業系統。 例如,如果您的電腦有 Windows 7,請將 Windows 10 安裝到另一個硬碟或磁碟分割上。

  3. 將電腦重新開機。 開機功能表應會出現並列出兩個作業系統。

    如果這兩個作業系統都未列出:

    1. 以 Windows 內部的系統管理員身分開啟命令列,或使用 Windows 安裝媒體開機至命令列並且按 Shift+F10,或開機至 Windows PE (WinPE:建立可開機的 USB 磁碟機)。

    2. 新增 Windows 作業系統的開機選項。

      bcdboot D:\Windows
      
    3. 將電腦重新開機。 現在,開機功能表會顯示兩個功能表選項。

擷取及套用 Windows、系統和復原磁碟分割

設定 BIOS/MBR 型硬碟磁碟分割

設定 UEFI/GPT 型硬碟磁碟分割

BCDedit

Bootsect 命令列選項

Diskpart 命令列語法