UEFI 用の BCD システム ストアの設定

一般的な展開シナリオでは、BCD ストアを変更する必要はありません。このトピックでは、変更可能な BCD ストア内のさまざまな BCD 設定について説明します。UEFI システムの場合、これには、次のブート アプリケーションの設定が含まれます。

  1. Windows ブート マネージャー

  2. Windows ブート ローダー

  3. Windows メモリ テスター

以降では、これらのブート アプリケーションのそれぞれで指定可能な設定と、UEFI システム用に各アプリケーションを変更する方法について説明します。

わかりやすくするために、このセクションの BCDEdit の例では、BCD システム ストアを変更します。BCD-template のコピーなど、他のストアを変更するには、目的のストアの名前をコマンド ラインに含めてください。

UEFI 用の Windows ブート マネージャーの設定

Windows ブート マネージャー ({bootmgr}) は、ブート プロセスを管理します。UEFI ベースのシステムには、NVRAM に格納されている変数に基づく EFI アプリケーションを読み込むファームウェア ブート マネージャー Bootmgfw.efi が含まれています。

Windows ブート マネージャーの device 要素と path 要素の BCD 設定は、ファームウェア ブート マネージャーを示します。BCD-template for Windows という名前のテンプレートには、Windows ブート マネージャー用の次の設定が含まれています。

Windows Boot Manager
--------------------
identifier              {bootmgr}
device                  partition=\Device\HarddiskVolume1
path                    \EFI\Microsoft\Boot\bootmgfw.efi
description             Windows Boot Manager

device 設定

device 要素は、Windows ブート マネージャーが含まれているボリュームを指定します。UEFI システムの場合、Windows ブート マネージャーの device 要素にシステム パーティションのボリューム文字を設定します。正しいボリューム文字を調べるには、Diskpart ツールを使ってディスク パーティションを表示します。次の例では、システムに搭載された 1 台のハード ドライブに複数のパーティションが含まれ、その中のシステム パーティションにドライブ文字 S が割り当てられていると想定しています。

次の Diskpart コマンドでは、ディスク 0 を選択し、ドライブ文字を含むそのディスク上のボリュームに関する詳しい情報を表示しています。ボリューム 2 がシステム パーティションであることがわかります。

DISKPART> select disk 0
DISKPART> list volume

  Volume ###  Ltr  Label   Fs     Type        Size     Status     Info
  ----------  ---  ------  -----  ----------  -------  ---------  ------
  Volume 0     D           NTFS   Partition    103 GB  Healthy
  Volume 1     C           NTFS   Partition     49 GB  Healthy    Boot
  Volume 2     S           FAT32  Partition    200 MB  Healthy    System

システム パーティションにドライブ文字が割り当てられていない場合は、Diskpart assign コマンドを使ってドライブ文字を割り当てます。次の例では、システム パーティションがボリューム 2 であると想定し、ボリューム 2 にドライブ文字 S を割り当てています。

Diskpart
select disk 0
list volume
select volume 2   // assuming volume 2 is the system partition
assign letter=s

システム パーティションのボリューム文字がわかったら、Windows ブート マネージャーの device 要素にそのドライブ文字を設定します。次の例では、device にドライブ S を設定しています。

Bcdedit /set {bootmgr} device partition=s:// system partition

path 設定

path 要素は、対象のボリューム上の Windows ブート マネージャー アプリケーションの場所を指定します。UEFI システムの場合、path は、\EFI\Microsoft\Boot\Bootmgfw.efi というパスにあるファームウェア ブート マネージャーを示します。

次のようにストア内の値を列挙することによって、BCD-template に適切なパスが設定されていることを確かめることができます。

bcdedit /store bcd-template /enum all

path を明示的に \EFI\Microsoft\Boot\Bootmgfw.efi に設定するには、次のコマンドを使います。

Bcdedit /set {bootmgr} path \efi\microsoft\boot\bootmgfw.efi

その他の設定

次の例に示されているように、Windows ブート マネージャーを UEFI ファームウェアの表示順序で最初の項目にする必要があります。

Bcdedit /set {fwbootmgr} displayorder {bootmgr} /addfirst

さらに、Windows ブート マネージャーの表示順序で最上位の Windows ブート ローダー アプリケーションを指定する必要があります。次の例は、指定した Windows ブート ローダーを表示順序の最上位に設定する方法を示しています。

Bcdedit /set {bootmgr} displayorder {<GUID>} /addfirst

前の例の <GUID> は、指定した Windows ブート ローダー オブジェクトの識別子です。この識別子については、次のセクションで詳しく説明します。

  

複数のオペレーティング システムがインストールされているマルチブート システムには、Windows ブート ローダーのインスタンスが複数存在します。Windows ブート ローダーのインスタンスは、それぞれ独自の識別子を持ちます。既定の Windows ブート ローダー ({default}) は、これらの識別子のいずれにも設定できます。

 

Windows ブート ローダーの設定

BCD ストアには、Windows ブート ローダーのインスタンスが少なくとも 1 つ (オプションで複数) が含まれます。個々の BCD オブジェクトは、それぞれのインスタンスを表します。それぞれのインスタンスは、オブジェクトの要素によって指定された構成を持つ Windows のインストールされたバージョンを読み込みます。それぞれの Windows ブート ローダー オブジェクトは独自の識別子を持ちます。オブジェクトの device 設定と path 設定は、適切なパーティションとブート アプリケーションを示します。

BCD-template for Windows には、次の設定を持つ単一の Windows ブート ローダー オブジェクトが含まれています。

Windows Boot Loader
-------------------
identifier              {9f25ee7a-e7b7-11db-94b5-f7e662935912}
device                  partition=C:
path                    \Windows\system32\winload.efi
description             Microsoft Windows Server
locale                  en-US
inherit                 {bootloadersettings}
osdevice                partition=C:
systemroot              \Windows

この Windows ブート ローダーの識別子は {9f25ee7a-e7b7-11db-94b5-f7e662935912} です。この GUID をシステムで使うことも、または BCDEdit ツールを使って新しい GUID を生成することもできます。

BCDEdit コマンドを簡略化するために、BCD システム ストア内のいずれかの Windows ブート ローダーを既定のローダーとして指定します。次に、完全な GUID ではなく標準識別子 ({default}) を使います。次の例では、EFI 用の Windows ブート ローダーを既定のブート ローダーとして指定し、BCD-template で使われている識別子 GUID を使うと想定しています。

Bcdedit /default {9f25ee7a-e7b7-11db-94b5-f7e662935912}

device 設定と OSDevice 設定

次の要素によって主要な位置を指定します。

device 要素は、ブート アプリケーションが含まれているパーティションを指定します。

osdevice 要素は、システム ルートが含まれているパーティションを指定します。

EFI 用の Windows ブート ローダーでは、通常、両方の要素に Windows システム パーティションのドライブ文字を設定します。ただし、BitLocker が有効な場合や、コンピューターに Windows の複数のバージョンがインストールされている場合は、osdevicedevice に異なるパーティションが設定されることがあります。BCD-template では、一般的な値であるドライブ C が両方の要素に設定されています。次の例に示すように、osdevicedevice の値を明示的に設定することもできます。この例では、EFI 用の Windows ブート ローダーが既定のブート ローダー オブジェクトとして指定されていると想定しています。

Bcdedit /set {default} device partition=c:
Bcdedit /set {default} osdevice partition=c:

path 設定

Windows ブート ローダーの path 要素は、対象のボリューム上のブート ローダーの場所を指定します。UEFI システムの場合、path は、\Windows\System32\Winload.efi というパスにある EFI 用の Windows ブート ローダーを示します。

ストア内の値を列挙することによって、BCD-template に適切な path 値が設定されていることを確かめることができます。次の例に示すように、path の値を明示的に設定することもできます。

Bcdedit /set {default} path \windows\system32\winload.efi

Windows メモリ テスターの設定

Windows メモリ テスター ({memdiag}) は、起動時にメモリ診断を実行します。アプリケーションの device 要素と path 要素の BCD 設定は、正しいアプリケーションを示します。

  

注: Intel Itanium を搭載するコンピューターには Windows メモリ テスターが含まれず、{memdiag} 設定は必要ありません。

 

BCD-template for Windows には、次の設定が含まれます。

Windows Memory Tester
---------------------
identifier              {memdiag}
device                  partition=\Device\HarddiskVolume1
path                    \boot\memtest.exe
description             Windows Memory Diagnostic

device 設定

UEFI システムの場合、Windows メモリ テスターの device 要素にシステム パーティションのドライブ文字を設定します。次の例では、前の例と同様にシステム パーティションがドライブ S にあると想定しています。

Bcdedit /set {bootmgr} device partition=s:  // system partition

path 設定

path 要素は、device 要素によって指定されたボリューム上の Windows テスト マネージャーの位置を指定します。UEFI システムの場合、path は、アプリケーションの EFI バージョン (\EFI\Microsoft\Boot\Memtest.efi) を示します。

ストア内の値を列挙することによって、BCD-template に適切な path 値が設定されていることを確かめることができます。次の例に示すように、BCDEdit ツールを使って path の値を明示的に設定することもできます。

Bcdedit /set {memdiag} path \efi\microsoft\boot\memtest.efi

 

 

表示: