Hyper-Vで仮想環境を構築した上でWindowsを利用するには、Hyper-V上に新たなOSをインストールする必要がありますが、実はもっと簡単に利用する方法があるのをご存知でしょうか。それは、既存のPC上にインストールされているOSをそのままHyper-V上に移行するという方法で、一般的にP2V (Physical to Virtual)と呼ばれています。ここでは、その方法をご紹介します。
P2V(Physical to Virtual)とは
Hyper-Vで構築した仮想マシン上に、いわゆる通常のPC(物理PC)にインストールされているOSを移植することをP2V (Physical to Virtual)といいます。この方法では、OS だけでなくアプリケーションやユーザーデータなども、すべてそのまま仮想マシンに移動できますので、インストール作業が大幅に短縮できます。何らかの理由で既存の環境を違うPC上へ移植したい時などに、便利な方法です。
今回は、物理PCにインストールされているWindows 7を、Windows 10上のHyper-V仮想PCに移植する例を紹介します。Windows 7に限らず、Hyper-V上で動作するOSであれば、同様の方法で物理PCからHyper-Vの仮想マシンに移植ができます。
ただし、P2Vで移植できるOSには、ライセンス上の条件があります。基本的に、仮想マシンのOSには物理PCとは別のライセンスが必要になります。仮想マシン用のライセンスを別途持っているならば問題ありませんが、「物理PCのOSは今後使わないから仮想PCにライセンスを移動したい」という場合は、元のOSライセンスが別のPCに移動可能なライセンスかどうかが問題になります。
メーカー製のPCなど、WindowsがプリインストールされているPCの場合、WindowsはそのPCでのみ利用できるライセンスであることが一般的で、基本的にそのWindowsは仮想マシンに移動できないので注意してください。リテール版のWindowsであれば移動可能です。
物理PC上のOSを仮想マシンに移動する手順
物理PCから仮想マシンへの移動は、次の手順で行います。
① 物理PCのOSのディスクイメージを作成
② 仮想マシンを作成・設定
③ 仮想マシンに①で作成したディスクイメージを展開
④ 仮想マシンに対応したドライバ類をOSにインストール
このうち①については、マイクロソフトから無償で提供されている「Disk2vhd」というツールを使うと、簡単に仮想マシン用のディスクイメージファイルを作成することができます。また③は、このディスクイメージファイルを仮想マシンのディスクとしてそのままアタッチできますので、展開の作業が不要になります。
事前準備(Disk2vhdのダウンロードとディスクイメージ作成)
最初に事前準備として、Disk2vhdのダウンロードとディスクイメージの作成を行います。
Disk2vhdのダウンロード
まず、以下のマイクロソフトのサイトからDisk2vhdをダウンロードしてください。
“Disk2vhd – Windows Sysinternals | Microsoft Docs”
https://docs.microsoft.com/en-us/sysinternals/downloads/disk2vhd
現在の最新版は2.01です。
「Download Disk2vhd (879KB)」をクリックすると、Disk2vhd.zipがダウンロードされますので、これを解凍します。解凍されたdisk2vhd.exeが、今回必要になるプログラムです。
ディスクイメージを作成する前に、作成されたイメージファイルを格納するディスクを用意しておきます。Disk2vhdでは作成対象のOSが入ったディスク上に、イメージファイルを作成することができますが、この方法だと大きな空き容量が必要となり、パフォーマンスが悪い上にトラブルが起きる可能性が高くなりますので、できれば別のディスク (外付けハードディスクやNASなど) を用意しておくとよいでしょう。
そのディスクに、ダウンロード・解凍したDisk2vhdもコピーしておきます。
Windows 7のディスクイメージを作成
Disk2vhdを使ってWindows 7のディスクイメージを作成する方法は、2つあります。1つは、作成対象のWindows 7からDisk2vhdを起動して、ディスクイメージを作成する方法です。Disk2vhdにはボリュームシャドウコピー (スナップショット) 機能がありますので、稼働中もWindows 7のディスクイメージを作成することができます。
システムの状態によってはスナップショットがうまく機能せず、エラーになる場合があります
もう1つの方法は、ディスクイメージを作成したいOSとは別のOSを起動して、そこからディスクイメージを作成する方法です。この場合はボリュームシャドウコピー機能を使いませんので、エラーが起きることは少なく、確実にディスクイメージを作成できます。
今回は前者の方法でディスクイメージを作成することにします。
1.disk2vhd.exeをダブルクリック
Windows 7のエクスプローラから、disk2vhd.exeをダブルクリックして起動します。
「ユーザーアカウント制御」画面が表示されたら、 [はい] をクリックします。
2.ライセンスに同意
ライセンスの同意画面が表示されたら、 [Agree] をクリックします。
3.パーティションにチェック
Disk2vhdの画面で、Windows 7に必要な2つのパーティション (“システムで予約済み” と ”C:\”) にチェックをつけます。画面上で “E:\” と表記されているのは外付けのハードディスクなので、チェックを外します。「VHD File name」の欄に、作成したいVHD/VHDXファイルのパスを入力します。「Use Vhdx」にチェックを付けると、Windows 8.1/10で利用できるVHDXファイルが作成されます。ボリュームシャドウコピー機能を使う場合は、「Use Volume Shadow Copy」にチェックをつけてください。設定が終わったら、 [Create] をクリックします。
4.ディスクイメージ作成が完了
「Disk export to VHD completed successfully」と表示されたら、ディスクイメージの作成が完了です。[Close] をクリックして、Disk2vhdを閉じます。
Hyper-Vの設定
続いてHyper-Vの設定を行いましょう。ここでは、すでにHyper-Vが利用できるようになっていることを前提にして進めます。こちらの設定がお済みでない方は、Hyper-Vの要件や有効化の方法などについて「Hyper-Vの使い方 Windows 10にWindows 7インストール」(https://www.pc-koubou.jp/magazine/2372) を参照してください。
仮想マシンの作成
次の手順で、新たに仮想マシンを作成します。
1.「Hyper-Vマネージャー」を起動し、「操作」メニューの [新規] → [仮想マシン] をクリックします。
2.「仮想マシンの新規作成ウィザード」画面で [次へ] をクリックします。
3.「名前と場所の指定」画面では、新しい仮想マシンの名前を入力します(ここではWindows 7とします)。仮想マシンの保存場所をデフォルト以外にしたい場合は、「仮想マシンを別の場所に格納する」にチェックをつけて、「場所」欄に入力します。ここまでが終わったら、[次へ] をクリックします。
4.「世代の指定」画面では、仮想マシンの世代を選択します。Windows 7の場合は「第1世代」を選択し、[次へ] をクリックします。
5.「メモリの割り当て」画面では、仮想マシンに割り当てるメモリ量を指定し、[次へ] をクリックします。ここでは「2048」と入力しました。
6.「ネットワークの構成」画面では、「既定のスイッチ (Default Switch)」を選択して [次へ] をクリックします。
7.「仮想ハードディスクの接続」画面では、「既存の仮想ハードディスクを使用する」にチェックをつけてください。「場所」欄に、Disk2vhdツールで物理PCから作成したディスクイメージファイル (ここではWIN7.VHDX) を指定し、[次へ] をクリックします。
8.「要約」画面で、[完了] をクリックします。これでWindows 7の仮想マシンが作成されました。
Windows 7の起動とドライバの更新
1.「Hyper-Vマネージャー」で仮想マシンとして作成した「Windows 7」を選択し、右ペインから「接続」をクリックします。
2.「仮想マシン接続」画面で [起動] をクリックします。
3. Windows 7が起動します。最初の起動時はハードウェアが変更されたため、数多くのドライバが読み込まれますが、終了すると通常のWindows 7の画面になります。
これですべて完了です。このように、物理PCから仮想マシンへの移植は比較的簡単にできますが、物理PCと仮想マシンとの環境が大きく異なっていると、移植先のHyper-V上でWindows 7が起動できないこともあるので、注意してください。
Windows 7 をどうしても使用したい人に仮想化は便利
Windows 7は2020年1月14日でサポートが終了します。サポート終了後は仮に脆弱性が見つかったとしても修正プログラムが提供されません。そのため、サポート終了後はWindows 7を使わないことが望ましいのですが、Windows 10では動作しないアプリケーションを使いたいなどの理由でPCをWindows 10搭載のものに買い替えたくない人もいるかもしれません。そんな時にHyper-Vの仮想化を利用すればPC1台でWindows 10もWindows 7も使用することができます。
Hyper-V上にWindows 7を置いてインターネット接続をOFFにしておけば危険は少なくなりますし、仮に問題が発生したとしても、ホストOSに影響を与える可能性は低くなります。また、正常時にチェックポイントを作成しておけば、すぐに正常時のWindows 7に戻すこともできますので、対処も比較的容易です。
またサポート終了に伴い、周辺機器のドライバなども提供されなくなりますので、最新の物理PC上にWindows 7をインストールすることは困難になることが予想されます。Hyper-V上にWindows 7を置く方法であれば、最新PC上でもWindows 7が利用できます。どうしても既存のWindows 7環境を残したい人は、ぜひこの方法でPCの引っ越しをしてみてはいかがでしょうか。
[ネクスマグ] 編集部
パソコンでできるこんなことやあんなこと、便利な使い方など、様々なパソコン活用方法が「わかる!」「みつかる!」記事を書いています。