【Management】 VHDBOOT で使用していた VHDX ファイルで仮想マシンを作成して起動しようとしたら 0xc000000e エラー

VHDBOOT で使用していた VHDX ファイル(Windows 8 Enterprise)をメンテナンスしようと、Hyper-V 上の仮想マシンのシステムディスクとして設定し起動しようとしたところ、以下のようなエラーが発生して起動できなくなってしまいました。

回復

お使いの PC は修復する必要があります。
要求されたデバイスが接続されていないか、デバイスにアクセスできません。

エラーコード: 0xc000000e

image

仰せの通りに回復ツールで回復しようと思い「PCのリフレッシュ」を実行しようとしたところ、今度は以下のエラーが出ました。

Windows がインストールされているドライブがロックされています。ドライブのロックを解除してやり直してください。

image 

VHDX ファイルをマウントして確認してみても、特におかしなところはみあたらず。

image

調べてみると、0xc000000e エラーは BCD ストアの破損に類するトラブルらしく、ここを修復しないことにはどうにもなりません。

(参考)ブート構成データ(BCD)ストアを理解すれば VHDブート は簡単
https://blogs.technet.com/b/junichia/archive/2009/10/26/3289120.aspx

ひとまず仮想マシンに Windows 8 の ISOイメージをマウントして、ISOから起動します。

image

「今すぐインストール」を脊髄反射でクリックせずに、おちついて「コンピューターを修復する」をクリック。

image

「トラブルシューティング」を選択。

image

「詳細オプション」を選択。

image

「コマンドプロンプト」を選択。

image

コマンドプロンプトが表示されたら、すかさず bcdedit コマンドでBCDストアの状態を確認してみます。

すると。。。なんと、device エントリと osdevice エントリが unknown ! これじゃ、起動するはずがありません。

ということで、bcdedit コマンドでエントリを正しく修正します。対象となるエントリの  Identifier が {1b09e76-2efa-11e2-aca3-e1d02980083a}  であることは、以下に表示されているとおりです。

image

起動したい Windows 8 は D ドライブとして見えています。

image

よって、以下のコマンドで正しい情報を登録します。

bcdedit /set {1b09e76-2efa-11e2-aca3-e1d02980083a} device partition=D:

bcdedit /set {1b09e76-2efa-11e2-aca3-e1d02980083a} osdevice partition=D:

image

Exit して再起動すると、今作成したエントリから無事起動することができました。

冷や汗かきました。