BCDBoot のコマンド ライン オプション

BCDBoot は、Windows オペレーティング システムを実行するように PC またはデバイス上のブート ファイルを構成するために使用するコマンドライン ツールです。 このツールは、次のシナリオで使用できます。

  • 新しい Windows イメージを適用した後、PC にブート ファイルを追加します。 一般的なイメージ ベースの Windows 展開では、BCDBoot を使用して、イメージから起動するようにファーム ウェアおよびシステム パーティションを設定します。 詳細については、「Windows、システム、復旧パーティションのキャプチャと適用」を参照してください。
  • Windows イメージを含む仮想ハード ディスク (VHD) ファイルから起動するように PC をセットアップします。 詳細については、VHD での起動 (ネイティブ ブート): ブート メニューへの仮想ハード ディスクの追加に関するページを参照してください。
  • システムパーティションを修復します。 システム パーティションが破損している場合、BCDBoot と、Windows パーティションにあるこれらのファイルの新しいコピーを使用して、システム パーティション ファイルを作成し直すことができます。
  • デュアル ブート PC でブート メニューをセットアップまたは修復します。 Windows の複数のコピーが PC にインストールされている場合、BCDBoot を使用してブート メニューを追加または修復できます。

ファイルの場所

Windows および 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 10、Windows 8.1、Windows 8、Windows 7、Windows Vista、Windows Server 2016 Technical Preview、Windows Server 2012 R2、Windows Server 2012、Windows Server 2008 R2、または Windows Server 2008 のイメージからブート環境ファイルをコピーできます。

しくみ

システム パーティションを構成するために、BCDBoot は、インストールされた Windows イメージにある少数のブート環境ファイル セットをシステム パーティションにコピーします。

BCDBoot は、最新バージョンの Windows ファイルを使用して、ブート構成データ (BCD) ストアをシステム パーティション上に作成できます。

  • BCDBoot は、%WINDIR%\System32\Config\BCD-Template ファイルを使用して、新しい BCD ストアを作成し、システム パーティション上の BCD ブート環境ファイル (Windows ブート マネージャーを含む) を初期化します。
  • Windows 10 の新機能:アップグレード中、新しいストアの作成時に、debugsettings などの既存のブート エントリが他にある場合、BCDBoot はそれらのエントリを保持します。 古い設定を無視して新しい BCD ストアで開始するには、 /c オプションを使用します。
  • この Windows パーティションにブート エントリが既にある場合、BCDBoot は既定で古いブート エントリとその値を消去します。 システム ファイルを更新するときに既存のブート エントリの値を保持するには、 /m オプションを使用します。
  • BCDBoot は既定で、選択した Windows パーティションのブート エントリを、Windows ブート マネージャーのブート順の先頭に移動します。 既存のブート順を保持するには、 /d オプションを使用します。

UEFI PC では、BCDBoot はデバイスの NVRAM 内のファームウェア エントリを更新できます。

  • BCDBoot は、Windows ブート マネージャーを指すように、NVRAM にファームウェア エントリを追加します。 既定では、このエントリはブート一覧の最初の項目として配置されます。 既存の UEFI ブート順を保持するには、 /p オプションを使用します。 ブート順一覧の末尾に追加するには、 /addlast を使用します。

コマンド ライン オプション

BCDBoot.exe には、次のコマンド ライン オプションを使用することができます。

BCDBOOT <ソース> [ /l <ロケール>] [ /s <ボリューム文字> [ /f <ファームウェアの種類>]] [ /v] [ /m [{OS ローダー GUID}]] [ /addlast または /p] [ /d] [ /c]

オプション 説明

<ソース>

必須。 ブート環境ファイルのソースとして使用する Windows ディレクトリの場所を指定します。

次の例では、C:\Windows フォルダーの BCD ファイルを使用してシステム パーティションを初期化します。

bcdboot C:\Windows

/l <ロケール>

任意。 ロケールを指定します。 既定値は英語 (米国) (en-us) です。

次の例では、既定の BCD ロケールを日本語に設定します。

bcdboot C:\Windows /l ja-jp

/s <ボリューム文字>

任意。 システム パーティションのボリューム文字を指定します。 このオプションは、一般的な展開シナリオでは使用しないでください。

この設定を使用してシステム パーティションを指定するのは、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 ストアを作成します。

次の例では、C:\Windows フォルダーの BCD ファイルを、別のコンピューターで起動されるセカンダリ ハード ドライブ上のシステム パーティションにコピーします。 セカンダリ ドライブのシステム パーティションに、ボリューム文字 S が割り当てられました。

bcdboot C:\Windows /s S:

次の例では、ボリューム文字が S の USB フラッシュ ドライブ上にブート エントリを作成します。これには、UEFI ベースまたは BIOS ベースのコンピューターをサポートするためのブート ファイルが含まれます。

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

/f <ファームウェアの種類>

任意。 ファームウェアの種類を指定します。 有効な値には UEFIBIOS、および ALL があります。

  • 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 ローダー GUID}]

任意。 既存のブート エントリの値を新しいブート エントリにマージします。

既定では、このオプションはグローバル オブジェクトのみをマージします。 OS ローダー GUID を指定する場合、このオプションはシステム テンプレート内のローダー オブジェクトをマージして、起動可能エントリを生成します。

次の例では、指定された GUID によって新しい BCD ストアで識別される、現在の BCD ストア内のオペレーティング システム ローダーをマージします。

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

/addlast

任意。 Windows ブート マネージャーのファームウェア エントリを最後に追加することを指定します。 既定の動作では、最初に追加します。 /p と同時には使用できません。

bcdboot C:\Windows /addlast

/p

任意。 UEFI ブート順で、既存の Windows ブート マネージャーのファームウェア エントリの位置を保持することを指定します。 エントリが存在しない場合、新しいエントリは最初の位置に追加されます。 /addlast と同時には使用できません。

既定では、BCDBoot はアップグレード中、UEFI ブート順で最初のエントリになるように Windows ブート マネージャーを移動します。

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

/d

任意。 Windows ブート マネージャーの {bootmgr} オブジェクトに既に存在する既定のオペレーティング システム エントリを保持します。

bcdboot C:\Windows /d

/c

任意。 既存の BCD 要素を移行しないことを指定します。

Windows 10 の新機能:既定では、アップグレード中、debugsettingsflightigning などの BCD 要素は保持されます。

bcdboot C:\Windows /c

システム パーティションの修復

システム パーティションが破損している場合、BCDBoot と、Windows パーティションにあるこれらのファイルの新しいコピーを使用して、システム パーティション ファイルを作成し直すことができます。

  1. PC を起動し、コマンド ラインを開きます。 たとえば、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. PC を再起動します。 Windows が表示されます。

デュアル ブート PC でのブート メニューのセットアップまたは修復

複数のオペレーティング システムを起動するように PC を設定すると、オペレーティング システムの 1 つを起動できなくなることがあります。 BCDBoot オプションを使用すると、Windows ベースのオペレーティング システムのブート オプションをすばやく追加できます。 デュアル ブート PC を設定するには、次のようにします。

  1. 別個のハード ドライブをインストールするか、オペレーティング システムごとに別個のパーティションを準備します。

  2. オペレーティング システムをインストールします。 たとえば、PC に Windows 7 がある場合は、他のハード ドライブまたはパーティションに Windows 10 をインストールします。

  3. PC を再起動します。 ブート メニューに両方のオペレーティング システムが表示されます。

    両方のオペレーティング システムが表示されない場合は、次のようにします。

    1. Windows 内から管理者としてコマンド ラインを開きます。または、Windows インストール メディアから起動して Shift + F10 キーを押すか、Windows PE から起動することによってコマンド ラインを開きます (WinPE: 起動可能な USB ドライブの作成)。

    2. Windows オペレーティング システムのブート オプションを追加します。

      bcdboot D:\Windows
      
    3. PC を再起動します。 これで、ブート メニューに両方のメニュー オプションが表示されます。

トラブルシューティング

Windows XP や、Windows 7 などのより新しいバージョンの Windows が搭載された PC でブート ファイルを修復する方法については、マイクロソフト サポート技術情報 2277998 の記事を参照してください。

関連トピック

Windows、システム、復旧パーティションのキャプチャと適用

BIOS/MBR ベースのハード ドライブ パーティションを構成する

UEFI/GPT ベースのハード ドライブ パーティションを構成する

BCDedit

Bootsect のコマンド ライン オプション

Diskpart のコマンド ライン構文