web-dev-qa-db-ja.com

Windows(GPTディスクでUEFIブートを使用)は、MBRハードディスクを追加した後にブートしなくなりました

最近、UEFIブートとGPTを使用して新しいSSDにWindows 764ビットをインストールしました。システムは正常に機能しました。古いシステムHDを(MBRを使用する)システムに追加すると、Windowsが正しく起動しなくなります。SSDから起動すると、通常の起動画面が表示され、Windowsはファイルを読み込んでいることを通知します。その後、起動画面が消え、EFIシェルにいるので起動できません。古いHDのプラグを抜くと、Windowsは文句なしに再起動します。

古いハードディスクを最初にフォーマットせずに、どういうわけかこの構成で起動できますか?

MSIZ77-G65Aボードを持っています。 SSDから起動するUEFI起動用に構成されています。両方のドライブが独立したHDとして設定されています(誤ってアクティブ化されたRAIDはありません)。 SSDはSATA-6Gポートに接続され、古いドライブはSATA-3Gポートに接続されます。

6
shiin

ディスク署名を削除すると、問題が解決しました。これは、コマンドで実行できます

dd if=/dev/zero of=/dev/sdb bs=1 count=4 seek=440 conv=notrunc

ルート権限を持つLinuxシェルで。

バックグラウンド:
Windows 2000以降、Microsoftは4バイトの値(ディスク署名)を各ディスクのMBRに書き込み、各ディスクを識別できるようにします。 2つのディスクに同じ識別子がある場合、問題が発生します。前述のコマンドは、この署名をゼロに置き換え、Windowsに新しい一意の値を割り当てるように促します。

ディスク署名を上書きする前に、ブートローダー(MBRのバイト0〜439)をゼロに置き換えようとしたことにも注意してください。それ自体では、これは私の問題を解決するのに役立ちませんでした。

編集:このソリューションは、1回の起動で問題を解決しました。もう一度起動しようとすると、同じ問題が再発しました。ディスクの署名をもう一度上書きすることで、起動することができましたが、もう一度だけです。
上記の背景から判断すると、Windowsが不適切なディスク署名を選択しているため、問題が再発しているようです...

編集2:UEFIモードで起動すると、Windows 764ビットはMBRを備えたディスク上の拡張パーティションを正しく処理できないようです。バグはここで説明されています:

hotfix-1hotfix-2

明らかに、拡張パーティションはUEFIパーティションとして誤って認識されます。これらの2つの修正プログラムは問題を解決するはずですが、インストールメディアにすでに統合されている必要があります。

6
shiin

私も同様の問題を抱えていました。 Windows DiskManagerを使用して2番目のディスクドライブに追加のプライマリパーティションと拡張パーティションを追加しました。合計で4つのパーティションです。その後、Windowsを起動できなくなり、修復オプションも機能しなくなりました。

回避策は、BIOSで2番目のディスクドライブを無効にすることでした。

私の解決策は、システム修復ディスクから実行されているdiskpartコマンドを使用して、2番目のディスクドライブをMBRからGPTに変換することでした。後から考えると、Windowsをインストールしたとき、デフォルトでGPTになっているはずの最初のディスクドライブ(SSD)のみをフォーマットしました。 Windows Disk Managerを使用して2番目のドライブをフォーマットしましたが、ソフトウェアはデフォルトでMBRである必要があります。

この投稿は、2つのディスクドライブの1つやマザーボードではなく、ソフトウェアにあると特定されているので、この投稿を見つけてよかったです。

0
Harry Twinotter