Hyper-Vで遊ぼう

スポンサーリンク
IT

そもそもHyper-Vってなんでしょうか。
Hyper-Vでググるとたくさんサイトで出てきます。詳しい説明はそちらに任せて、ここでは、次のポイントに絞って書いてみたいと思います。

  • ざっくり言うとどんなもの?
  • どのような時に使うもの?
  • とりあえず使ってみたい!

ざっくり言うとどんなもの?

Hyper-Vというのは仮想化ソフトウェアの一つです。
他にもいくつかありますが、ここではHyper-Vについて書きたいと思います。
簡単に言ってしまうと、今使っているパソコンの中に更にOSをインストールして別の環境を作るためのソフトウェアです。
例えば、今使っているWindows10のパソコンの中にLinuxをインストールして動かしたり、別のWindows10をインストールすることだって出来ます。
このスクリーンショットは、Windows10のHyper-VでWindows7とWindowsXPを起動して動かしているところです。
え?そんなことする必要があるの?って声が聞こえてきそうです。

もともとHyper-VはWindows Serverに搭載されていたものなので個人では高嶺の花でしたが、なんとWindows10 Professional だと使えるのです。ただ一般の方は使わない機能なので標準ではOFFになっていますが、ちょっと設定変更すればすぐに使えます。

どのような時に使うもの?

普通にインターネットやメールを使うぐらいの方は必要ないと思います。だけど、次のような方々にはとても便利なツールです。

  1. 昔のWindowsじゃないと動かないアプリを使いたい
  2. パソコンにアプリをお試しインストールしたいけど汚れるのは嫌だ
  3. 他のOSも触ってみたい。例えばLinuxとか
  4. いろいろなスペックでアプリの動作を確認したい

一般の方だと1の人が多いと思います。2は潔癖症の人。私はリアルはデスクの上や部屋は汚いのですが、パソコンの中はキレイにしておきたい派なのでこれに該当します。
3はシステム開発系の人でLinuxや他のOSを触りたい人か、Windows7がそろそろサポート切れちゃうからこの際タダで使えるLinuxに乗り換えちゃおうかなーという人。
4もシステム開発系の人で、開発中のシステムが低スペック環境でもちゃんと動くか試したい人とかetc…

1.昔のWindowsじゃないと動かないアプリを使いたい

お気に入りのアプリがWindows10では動かなくなってしまって困っている、という方は結構いると思います。私も愛用しているアプリ2本がWindows10では使えなくなってしまいました。まだ使い方が変わってしまうけど代替えアプリがある場合は仕方なく受け入れればよいのですが、他に代替えがない唯一無二のアプリもあります。今回私の2本中1本はこのパターンです。もうどうにもなりませぬ。Windows7のノートPCをもう一台持ち歩くわけにはいかないですし・・・

そこでHyper-Vの出番というわけです。
今までのWindowsでも実行ファイル(exe)を過去のOSのバージョンで実行させるオプションがあり、ある程度はだましだまし動かせたんですが、プログラム単体レベルでのエミュレーションなので動けばラッキー程度でした。

もうひとつのWindowsXPモードは、Hyper-Vと仕組みは大体同じ仮想環境でXPを動かすというものなので、こちらはかなり高確率で動かないアプリが救済されましたが、XPだけしか動かせないため、応急処置的なものだったのかもしれません。

そして、Windows10ではWindows7モードとXPモードがないじゃないか・・・過去の資産は完全に切り捨てかよ、、と思っていたら、なんとHyper-Vが開放されているではありませんか。それなら納得、、というか、むしろあざーすって感じです。
但し、WindowsXPモードと違って、Hyper-V上でWindowsを動かす場合は本体とは別にライセンスが必要なので、古いWindows7のライセンスキーを持っている人はそのままWindows10上で動かせますが、持っていない人やOEMの人は残念ながら別途ライセンスが必要です。来年2020年の1月14日にサポートが切れるWindows7のライセンスを今から買うのは微妙ですが、どうしても動かしたいアプリがあるなら買っておくしかないでしょう。

ちなみに2020年の1月でサポートが切れてしまうWindows7ってそれ以降も使い続けることはできるの?

使い続けることは出来ます。但し、セキュリティパッチの更新は無くなりますので、セキュリティ的に見ると穴だらけになっていきますので、インターネットに接続はしない方がよいでしょう。パソコン本体はインターネットに接続しながら、Hyper-V上のWindows7はインターネットから遮断するということができますので、利便性が落ちるということはありません。

2.パソコンにアプリをお試しインストールしたいけど汚れるのは嫌だ

インストールして使ってみて、要らなくなったらアンインストールすればいいじゃないか、という声が聞こえてきそうです。

はい、確かにそれで問題ないです。ただ、アンインストールしてもアプリによってはハードディスク上にゴミが残ったり、レジストリというWindowsの設定等を集中的に管理しているデータベースから設定を完全に消さなかったり、、と完全に消えないことが多々あります。
これらが蓄積していくと僅かかもしれませんがパソコンの性能が劣化していく可能性もあります。なにより、もう使わないアプリのゴミがパソコンの中に残っているということ自体が気持ち悪いです。

Hyper-V上に更にWindows環境を作ることでこの問題が解消できます。試してみたいアプリはHyper-V上のWindowsにインストールして動きを確認することで、要らなくなったらアンインストール、、というか、それすら不要です。Hyper-Vには「チェックポイント」という機能があり、現在の状態をWindowsまるごと保存しておけるのです。ゲームで例えるとセーブポイントです。つまりセーブしておけばその後、アプリを入れても消せるというか、そもそもインストールしていなかった状態に戻せるので、先に説明したゴミが残ることもありませんし、なんならWindowsの設定を無茶苦茶にいじったりシステムのファイルを消したりしてWindowsが壊れたりしても、セーブした時点に戻せるのです。

3.他のOSも触ってみたい。例えばLinuxとか

さて、この辺からが仮想環境の真骨頂と言ったところでしょうか。
Windows以外のOSに興味があって使ってみたいけど、今のWindowsパソコンに入れるのは怖い・・・
例えばLinuxを使ってみたい場合、選択肢は次のどれかぐらいでしょうか。

  1. Linux専用のパソコンを用意する
  2. 今使っているWindowsパソコンに同居させる
  3. USBブートできるLinux環境を作って動かす
  4. 仮想環境上に構築する

1.Linux専用のパソコンを用意する

これが一番安全です。今使っているWindowsのパソコンが壊れることはありません。但し、もう一台パソコンを準備しなければなりません。コストもかかりますし、やはりノートを2台持ち歩きたくはないですよね。

2.今使っているWindowsパソコンに同居させる

これがうまく行けば一台のパソコンでWindowsとLinuxのどちらも使えるマルチ機体となります。ただ、こちらはLinuxのインストールに失敗するとWindowsも起動しなくなってしまう可能性もあり、WindowsとLinuxの起動部分やMBRの知識が無いと壊れた時に戻せなくなりますので、あまりオススメしません。またマルチ機体が完成しても動かせるのはどちらか片方だけで、両方一緒には動かせません。

3.USBブートできるLinux環境を作って動かす

これは2を比較的安全に実現できる方法です。LinuxをUSBメモリから起動できるようにするため、Windowsのパソコンを普通に起動するとそのままいつものWindowsが起動します。Linuxを使いたい時はUSBメモリを挿して起動するとLinuxが起動します。これならLinux環境とWindows環境は切り離されているため無茶しても大丈夫です。ただ、この場合でもやはりWindowsとLinuxを同時に使うことはできません。

USBから起動するLinuxでもWindows環境のハードディスクにアクセスできるものがありますので、その場合はLinux起動中でもWindows上のファイルを操作するとWindowsが起動しなくなる可能性もありますのでご注意ください。

4.仮想環境上に構築する

やっと本題です。結局1~3だとパソコン1台で同時にWindowsとLinuxを動かすことができないのです。私はしばらく3のUSBメモリを持ち歩いていましたが、切り替えに時間がかかるので、結局ほぼWindowsしか使わなくなってしまいました。

やはり、どちらもシームレスに使えなければ不便なのです。そうなると、Windowsパソコン上で仮想環境を構築してその上にLinuxをインストールすると、どちらも同時に動かせますし、お互いの環境を干渉しないので安全です。仮想OS上でむちゃくちゃしても本体のWindowsには影響がありません。こんな安全が確保された遊び場が他にあるでしょうか。

4.いろいろなスペックでアプリの動作を確認したい

Hyper-V上に仮想環境として構築したOSは割り当てるリソースを調整することが可能です。パソコン本体のリソースはもう決まっています。例えば、CPUのコア数が4つ、メモリが8ギガ搭載しているパソコンだとして、Hyper-V上にWindows7をインストールするとします。

そのWindows7にはどれぐらいのマシンパワーを割り当てるのか決めることができます。仮に半分を割り振るとすると、CPUのコア数は2つ、メモリは4ギガをセットすると、そのスペックの環境でWindows7を動かしているのと同じ環境が作れます。

例えば、システム開発をしていて、Windowsアプリケーションを作ったとします。メモリは1ギガあれば動くように設計・開発したけど、本当に大丈夫?

そんな時は仮想環境のメモリを上限1ギガにセットして動かせば、1ギガで足りるのかどうか確認することかできます。足りなければメモリ不足のエラーになります。

物理的にやるなら、わざわざ1ギガのパソコンを調達するか物理メモリを買ってきてOSからインストールして試して、検証が終わったら、無用の長物と化します。なんて時間とコストがかかるんでしょう。ゴミも出ますし。

仮想環境なら、Hyper-V上ならマウスでリソースの割当設定をポチポチして起動!、検証が終わったら、ポチっとすれば再利用可能な状態に戻ります。

どうですか?Hyper-V上になにか環境作りたくなってきましたか?
いろんな仮想環境を作って遊んでいきますので、興味がある方は是非御覧ください。
Hyper-Vの使い方も合わせて書いていきたいと思います。

コメント

タイトルとURLをコピーしました