Windows 10 マシンのHDDをSSDに換装したらブートレコードがぶっ壊れて起動しないやつ(0xC000000E)を直したメモ
マシンスペック
- Windows 10 64bit
- UEFIブート
- 500GB HDD (5400rpm) → 512GB SSD (SATA3) に換装したい
何が起こったのか
- 新しいSSDをSATA→USB変換をかましてPCに接続
- Acronis True Image 2016 の「ディスクのクローンの作成」を使って、HDDからSSDへデータ転送
パラメータは「自動」で、ディスクまるごとクローニングを行った - 外科的にHDDを取り外し、SSDと交換
- PCを起動 → ブルスク(0xC000000E)でSTOP
どう対処したのか
「STOP 0xC000000E」はブートレコードの破損によって起動パーティションを見失ったことが原因で起こるらしい、ということでブートレコードの修復を行うこととした。
「トラブルシューティングツール」の起動 → NG
ブルスクの画面でキー押下することでコマンドプロンプトなどトラブルシューティングツールを起動できるようだが、これは一切反応しなかった。
おそらくだが、修復用の隠しパーティション見失ってしまったものと思われる
インストールメディア(USB)を使って修復
Microsoft公式の「Windows Media Creation Tool」をダウンロードすれば、USBメモリ(8GB以上)をインストールメディアにすることができる
USBインストールメディアをPCに挿し、USBブートを行い、インストーラを起動する。
「Windowsの修復」を選び、コマンドプロンプトを起動する。
あとは、下記Webページの手順に従ってブートレコードの修復を行った。
UEFI/GPTインストールしたWindowsの「ブート領域」の復旧方法 - ぼくんちのTV別館
具体的な復旧手順
スタートアップ修復
まず、スタートアップ修復については、そもそもスタートアップ修復の画面にすらならないので割愛する。
ブートレコードの再生成
続いて、先に作っておいたUSBインストールメディアからブートレコードの再生成を試みる。
bootrec /Rebuildbcd
Windows インストールを、すべてのディスクをスキャンして検出しています。
これには、しばらく時間がかかります。お待ちください...
Windows のインストールとスキャンは成功しました。
Windows のインストールとして認識された合計数: 0
操作は正常に終了しました。
そもそもWindowsが認識できていない… だと… (; ・`д・´)
ブート領域に直接アクセスし、ブートレコードを削除して再生成
古き良きdiskpartを使い、ブート領域を探し出してドライブレターを振る。
おそらく、1GB以下の小さなFAT32パーティションがそれである。
DISKPART> list volume
(パーティションの一覧が表示されるので、ごく小さいFAT32パーティションを探して番号を確認する)
DISKPART> select volume X
ボリューム X が選択されました。
DISKPART> assign letter=b
DiskPart はドライブ文字またはマウント ポイントを正常に割り当てました。
DISKPART> exit
上記例では、ドライブレターとして「B」を割り当てた。
続いて、既存のBCD(Boot Configure Datafile: ブート構成データファイル)をバックアップもしくは削除し、再生成を行う。
X:> cd b:
B:> cd EFI\Microsoft\Boot
B:> ren BCD BCD.bak
B:> bootrec /rebuildbcd
B:> bcdboot C:\Windows /l ja-JP
B:> exit
ここまで終わらせたら、コマンドプロンプトとWindows10インストーラを終了させPCをシャットダウン、
USBインストールメディアを取り外し、再度電源投入を試みる。
「スタートアップ修復」が表示されたら、指示に従いスタートアップ修復を実施する。
※今回はスタートアップ修復画面は出ず、問題なくWindows10が上がってきた。
また、この操作を行うと回復パーティションも見失ってしまうようなので、先に紹介した参考ページの手順に則り、回復パーティションを再認識させる操作を行った方が良いと思われる。
※今回はWindowsREを有効にすることができなかったため割愛する。動いてるのでヨシ!!!
動作確認
PCの再起動、シャットダウンからの起動を何回か行い、正常にWindowsが起動してくることを確認できた。