
複数の Windows インストールを別々のハード ドライブ/SSD にセットアップしたいと考えています。システムには内部 SATA ドックと内部オンボード NVMe SSD が搭載されているため、ケースを開けずに SATA ドライブを挿入したり取り外したりできます。
Windows インストーラーから起動し、新しい SATA ドライブに Windows インストールを配置すると、インストーラーは内部 NVMe ドライブのブートローダー ファイルを更新し、デュアル ブート構成になります。後で SATA ドライブのインストールが不要になった場合は、BCD ストアから手動で削除する必要があります。さらに、複数のインストールをセットアップすると、それぞれがマルチブート メニューに追加されます。さらに悪いことに、各インストールには「Windows 10」という名前が付けられるため、再起動時に混乱してしまう可能性が非常に高くなります。
私がやりたいのは、Windows を SATA ドライブにインストールするときに、ブート ファイルを SATA ドライブにインストールすることです。UEFI ブート選択メニュー (マザーボードに応じて F12/ESC/F7 などで表示されるメニュー) で、どのディスクからブートするかを選択できるようにしたいのです。こうすることで、各 Windows インストールは他のインストールから独立します。
新しくインストールした OS に接続されていないドライブはすべて取り外すようにという推奨事項を見たことがありますが、NVMe ドライブはマザーボード上の GPU の下なので、SATA ドライブに別の一時的/テスト用の Windows インストールをセットアップするために、そこにアクセスして取り外すだけでも膨大な作業になるため、これは不便です。Windows セットアップにブート ファイルを配置する場所を指示する方法があるはずです。
また、Windows セットアップ環境内から diskpart にアクセスして、内部 NVMe ドライブをオフラインにしようとしました。これを行うと、パーティション (システム、MSR、OS) は外部 SSD に作成されますが、その後すぐにインストールがエラー 0xc0000005 で終了します。
VM でインストールをセットアップし、そのディスクを VM から削除し、新しいディスクを追加して別のインストールを実行し、最初のディスクを再接続してテストしたので、最終結果が可能であることはわかっています。UEFI ブート メニューを使用して、どのディスク (つまり、どの Windows インストール) を起動するかを選択できます。
TL;dr: 既存のインストールで既存のブートローダーを検索して更新するのではなく、Windows セットアップにブートローダーをインストールする場所を指示するにはどうすればよいでしょうか。
(誰かが提案する前に言っておきますが、GPU やその他のネイティブ ハードウェア テストなど、仮想化では簡単には実現できないタスクの場合、VM は選択肢になりません。)
答え1
Windowsではそれができません。
唯一の方法は、インストール中に不要なドライブを取り外すことです。
マザーボードによっては、UEFI セットアップで NVMe または SATA を無効にできるオプションがある場合があります。これは、ドライブを取り外すのと同じ効果があります。