Windows 7時代の新常識-仮想ハードディスクをドライブとして使う【後編】
VHDファイルをブートドライブにする
VHD(Virtual Hard Disk)は、Hyper-VやVirtual PCなどで使われている仮想ハードディスクのファイルフォーマットだ。これまで仮想環境で使われていたVHDファイルだが、Windows 7とWindows Server 2008 R2では、ドライブとしてマウントしたり、OSのブートドライブとして利用できるようになる。
今回は、VHDファイルをブートドライブとして使用する方法を紹介する。
■新しく作るVHDファイルを使ってブートドライブを作る
まずは、HDDの代わりにVHDファイルをブートドライブにする方法を紹介する。ここでは、未フォーマットのHDDに対して、新たにVHDファイルを作成し、作成したVHDファイルにWindows 7をインストールする方法を紹介する。
注意が必要なのは、VHDファイルをブートドライブにできるOSは、Windows 7/Windows Server 2008 R2だけだ。Windows XP/Vista、Windows Server 2008は利用できない。
Windows 7のインストールメディアを起動する。言語やキーボードの種類を選択し、次に進む | 左下にある[コンピューターを修復する]をクリックする | [Windowsの起動に伴う...]を選択し、次に進む |
一番下にある[コマンドプロンプト]をクリックする | diskpartと入力する | select disk 0と入力し、HDDを選択する |
cleanと入力し、HDDの内容を消去する | create partition primaryと入力し、プライマリパーティションを作成する | format FS=NTFS LABEL="System Drive" quickと入力し、HDDをフォーマットする。ここではラベル名をSystem Driveとしているが、ほかの名前をつけてもかまわない |
attach vdiskと入力し、VHDファイルをアタッチする。これでインストーラからVHDファイルがドライブとして認識できるようになった | exitと入力し、diskpartコマンドを終了する | setupと入力し、Windows 7のセットアップを再開する |
Windowsのインストーラが起動するので、指示にしたがって進めていく | インストールの種類では、「新規インストール」を選択 | インストール先で、[ディスク1 未割り当て領域]というドライブが表示されているので、これを選択する。あとは指示に従ってインストールを進めていく |
インストールが終了すると、VHDファイルのドライブがCに、VHDファイルが置かれている物理HDDがDドライブに割り当てられているのがわかる。
VHDファイルのドライブがC、VHDファイルが置かれている物理HDDがDに割り当てられている | Dドライブを見ると、作成したVHDファイルが置かれているのがわかる |
■VHDファイルを使ってマルチブート環境を作る
マルチブート環境を作るのは簡単だ。VHDファイルを使ってブートドライブを作る手順と同じ要領で作成し、そのVHDファイルにOSをインストールすればOKだ。なお、VHDファイルの名前はインストールするOSにあわせて変更してかまわない。
- インストールしたいOSのインストールメディアで起動
- 「新しく作るVHDファイルを使ってブートドライブを作る」で説明した手順でコマンドプロンプトを起動
- diskpartを実行
- create vdisk file=C:\Windows7x64.vhd maximum=20000 type=expandableを実行
- select vdisk file=C:\Windows7x64.vhdを実行
- attach vdiskを実行
- exitを実行
- setupを実行
- メッセージに従ってインストールを実行する
なお、コマンドプロンプトでVHDファイルを作らずに、Windows 7やWindows Server 2008 R2のディスク管理ツールで空のVHDファイルを作成し、セットアップ時にそのVHDファイルを選択してもOKだ。createコマンドの手順を省略し、selectで作成したVHDファイルを指定すればいい。ただし、内蔵HDDにVHDファイルを作らないとアクセスできないので気をつけよう。また、Windowsのディスク管理ツールで作成した直後のVHDファイルはマウントした状態にあるので、切断しておくことも忘れないように。
このようにして、Windows 7/Windows Server 2008 R2をVHDファイルでブートすることができる。いったんVHDファイルでブートできるようにしておけば、VHDファイルごと保存し、いつでもオリジナル環境に戻すことができる。テストで何度も再インストールを行う筆者にとっては、時間のかかるインストール作業がコピーだけで終わるのは便利だ。
■ブートメニューをわかりやすくする
マルチブート環境を作ると、PCの起動時にブートメニューが表示され、起動可能なOS名が表示される。ただし、同じ種類のOSをインストールすると、メニューには同じOS名が表示される。このOS名を変更したければ、OS名を変更したいOSを起動し、管理者権限を持ったアカウントでBcdeditコマンドを使えば変更できる。
スタートメニューにあるコマンドプロンプトを右クリックし、[管理者として実行]を選択 | コマンドプロンプトのタイトルバーに[管理者]と表示されていればOK | 現在起動しているOSのブートメニューの名前を変更するには、bcdedit /set description "Windows 7 RC 64bit"と入力 |
これで、ブートメニューで表示される名前が変更できる。また、もう一方のOS名も変更したい場合は、コマンドプロンプトで「bcdedit」を実行し、変更したいOSのidentifier({}でくくられている文字列)を指定すれば変更できる。
bcdeditと入力した直後の画面。起動しているOSのidentifierは{current}と表示されている。それ以外のOSを変更するには、identifierに表示されている名称を使って変更する | bcdedit /set {202716e1-5726-11de-9f4d-bf0f14838494} description "Windows 7 RC 32bit"と入力する |
■VHDのパフォーマンスは?
では、VHDファイルでブートしたOSのパフォーマンスは、どの程度なのだろうか? 今回、Windows 7 RC x86版を、「物理ディスク」「VHD固定容量ディスク(20GB)」「VHD容量可変ディスク(20GB)」の3つのパターンでテストしてみた。
ベンチマークソフトには、CrystalMarkDisk2.2を使用し、条件としては、100MBを対象に5回繰り返した。
物理ディスクとVHDファイル(固定容量・容量可変)では、パフォーマンスはそれほど変わらない。ただし、VHD容量可変ディスクは、容量を拡張していくと、パフォーマンスが低下する可能性がある。また、VHD容量固定ディスクは、物理ディスクのクラスタを大きくすれば、よりパフォーマンスがアップする可能性がある。
このベンチマークから、VHDを利用してもパフォーマンス面で劣らないことがわかる。ただし、VHDファイルでOSをブートした場合、ページファイルがVHDファイル上に作成できなかったり、バックアップ機能が利用できないなど、Windows 7/Windows Server 2008 R2のいくつかの機能に制限ができる。
とはいえ、VHDファイルを使ったブート機能はうまく使えば便利な機能だ。例えば、多くのPCを管理しているIT管理者なら、マスターになるVHDファイルを作成しておき、必要に応じてクライアントPCに配布すればいい。最新の環境にアップデートする場合も、VHDファイルをコピーするだけでいい。クライアントPCにOSをインストールする手間を考えれば、非常に便利だ。
Windows展開サービスでVHDファイルを配布して、ブートすることも可能だ。将来的には、VDIと同じような使い方もできるかもしれない。
2009/7/10/ 00:00