クローン後に起動しない ブートローダー修復

写真

パソコンの「HDDの空き容量が少なくなった。」または、「HDDをSSDに換装して速くしたい。」など、今ではフリーソフトを使用して簡単にHDDやSSDのクローンができる。

しかし、クローン後に換装したパソコンが起動しないことはよくあることである。クローンが簡単にできるために精神的なギャップは大きいだろう。

起動できない原因はたくさんあるが、クローンソフトは何かの理由で、ブートローダーのデバイスを特定できなかったため、ブートローダーにデバイス設定を放置してクローンしてしまった。このような場合、OSは立ち上がることができないためにパソコンは起動しなくなる。

このページでは上記のように、ブートデバイスを特定できない状態でクローンされたブートローダーを修復する方法を記すことにする。

このページで使用した OSおよび画像は、Windows 10 November 2019である。

1、コマンドプロンプトの起動

管理者権限でコマンドプロンプトが起動できれば何でもいいが、ここではインストールメディアを起動し、コマンドプロンプトを立ち上げる手順を記す。

起動する前に、パソコンに接続するものは、起動デバイスおよびキーボードとマウスのみにして、他のメディアはすべて外す。

起動デバイスがファースト起動の設定になっていない場合は、BAIOSを設定する必要がある。最近の起動デバイスは、USBメモリが多く使われているが、今回は Windows 10の ISOファイルを焼いた DVDを使用した。

起動メディアをパソコンにセットして、電源を入れる。

起動すると Press any key to boot from CD or DVD ... が表示されるため、すかさず好みのキーを押す。

写真

しばらくすると、Windows 10のロゴと読込中のローディングアニメーションが表示される。

写真

選択画面が表示されるが、キーボードの種類が違う場合のみ変更し、他はデフォルトにする。

[次へ] をクリックする。

写真

左下の [コンピューターを修復する] をクリックする。

写真

ここからは 起動メディアや Windowsのバージョンなどにより、アイコンの表示方法などが、下の画像と若干異なる場合がある。

オプションの画面が表示されるため、[トラブルシューティング] をクリックする。

写真

詳細オプションの画面が表示されるため、[コマンドプロンプト] をクリックする。

写真

背景がブラックのコマンドプロンプト画面が、管理者権限で立ち上がり、コマンド入力待ち状態になる。

写真
2、デバイスの確認および変更

以前の Windowsでは、システムをブートするには、システムドライブのルートに置かれた boot.ini のテキストファイルを参照していたが、Windows Vista以降では、Windowsのブートメカニズムが抜本的に変更され、BCD (Binary-Coded Decimal)ブート構成データストアに格納された。格納フォルダは %WINDIR%\System32 である。

この BCD を参照するには、BCDを管理するためのコマンドラインツール bcdedit を使用する。

参考

bcdeditを使用して BCDを変更するには、管理特権が必要であり、管理者権限でコマンドプロンプトを起動するか、Windows PE(インストールメディアなど)を使用する。また、変更した bcdeditの設定をディスクに確実にフラッシュするには、通常のシャットダウンと起動が必要になる。

スタートアップの問題を解決するには、Windows REを使用し、ブートセクターを新規インストールする bootrec /FixBoot および UEFIでは無効だが MBRを上書きする bootrec /FixMbr などのツールが用意されてはいるが、いずれも若干の問題が残るため、ここでは見送り手打ちで修正することにする。

コマンドプロンプトのカーソル位置に [ bcdedit ] と入力し、[Enter] キーを押す。

下の画像のように Windows ブート マネージャーおよび Windows ブート ローダーの一覧が表示される。ここでは、下画像の赤い下線の Windows ブート ローダー を参照する。

device は、unknown になっている。

osdevice は、unknown になっている。

「デバイスの場所は?」「何だか分からないよ!」と、言っている。

何かの理由で、クローン時に起動デバイスを特定できていないようである。これでは起動できないのも不思議ではない。

写真

bcdedit コマンドツールで、device および osdevice の位置を指定し、起動できるようにする。

ここではシングルブートしている場合を記す。

ブートデバイスが C:ドライブ の場合、カーソルの位置に、以下の2つのコマンドおよびを入力する。

[ bcdedit /set {default} device "partition=C:" ] を入力し、[Enter] キーを押す。「この操作を正しく終了しました。」と表示されれば成功である。

[ bcdedit /set {default} osdevice "partition=C:" ] を入力し、[Enter] キーを押す。「この操作を正しく終了しました。」と表示されれば成功である。

写真

入力が成功したら確認するため、カーソル位置に [ bcdedit ] と入力して [Enter] キーを押し、Windows ブート ローダーを確認する。

device は、partition=C: に変更されている。

osdevice は、partition=C: に変更されている。

写真

確認できたらカーソル位置に [ shutdown /s ] と入力し、[Enter] キーを押してパソコンをシャットダウンする。

完全にシャットダウンできたら、パソコンを起動する。

3、最後に

このページでは、UEFIモードの起動デバイス変更を記してきたが、レガシモードも同様に変更できる。

また、基本的には UEFIモードは GPTファイル形式で、レガシモードの場合は MBRファイル形式を使用している。

UEFIモードまたはレガシモードを調べるには、ファイル名を指定して実行 を開き、テキストボックスに [ msinfo32 ] と入力し [OK] ボタンをクリックする。

するとシステム情報が表示され、BIOSモード 項目の右側の値を見ると確認できる。

page_top