連載
» 2010年11月18日 00時00分 UPDATE

仮想PCで学ぶ「体当たり」Windowsシステム管理:第11回 Windowsのディスク管理をマスターする(前) (1/5)

仮想ディスクは何台まで接続できる? ボリュームやファイルサイズの最大値は? シンプルとスパンの違いは何?

[打越浩幸,デジタルアドバンテージ]
仮想PCで学ぶ「体当たり」Windowsシステム管理
Windows Server Insider


「仮想PCで学ぶ『体当たり』Windowsシステム管理」のインデックス

連載目次


 前回までは、4回に渡ってVMwareのVMware PlayerやOracleのVirtualBoxなどについて取り上げてきた。MicrosoftのVirtual PCやHyper-V以外にもいろいろな仮想化ソフトウェアがあり、それぞれ特徴を持っている。機能や目的に応じて使い分けるとよいだろう。

 さて仮想化ソフトウェアを利用すれば、実機ではなかなかできないようなことでも簡単に実行できる。今回と次回の2回では、Windows OSのディスク管理ツール関連の話題について取り上げる。可能な限り大きな仮想ディスクを作成して仮想マシンにつないでみるとか、どこまで大きなボリュームが作成できるか、作成可能なファイルの最大サイズはいくらかなど、いろいろ試してみよう。

作成できる仮想ディスクの最大サイズは?

 仮想ディスクの実験をするには、まず仮想ディスク・ファイルを用意する必要があるが、利用可能な最大の仮想ディスク・サイズはいくらだろうか。すでに連載 第1回「仮想PC環境の準備」やTIPS「仮想ハードディスクのサイズを拡大する」などで触れているが、Virtual PCやHyper-Vなどで利用される.VHDファイルの仕様では、最大2Tbytes(正確には2040Gbytes)までとされている(VMwareで利用される.VMDKファイルでもやはり最大2Tbytesまでとなっている)。

 実際の仮想ディスク作成ウィザードでは次のように表示され、2040Gbytesが最大となっている。

Hyper-Vの仮想ハードディスク新規作成ウィザードの画面
Hyper-Vでは最大2Tbytesの仮想ディスクまで作成できる。
 (1)作成するサイズ。
 (2)最大サイズはほぼ2Tbytes。制限を超えていると、[次へ]ボタンがグレーになって、クリックできない。

 ただし最大2Tbytesの仮想ディスクが作成できるのは、Hyper-VやVirtual Server 2005 R2の仮想ディスク作成ウィザードを使った場合だけである。これらの仮想環境では仮想SCSIインターフェイスが利用できるため、このようなサイズの仮想ディスクが作成できるし、利用もできる。仮想SCSIインターフェイスでは、ディスクのセクタ番号(ブロック番号)を32bit幅の数値で表現しているため、512bytesというセクタ・サイズと掛け合わせると、ディスクの最大サイズが2Tbytesまでとなる。

 これに対し、Virtual PC 2007やWindows 7のWindows Virtual PCの仮想環境では古いIDEインターフェイスしかサポートしていない。IDEではディスクのブロック番号を28bit幅で表現しており、これとセクタ・サイズの512bytes(2の9乗)を掛け合わせて、最大が128Gbytes(2の37乗)となる。これはいわゆる「137Gbytesの壁」と呼ばれる、古いPCの仕様である。現在のIDE(ATA)では、もっと大容量をカバーできるアクセス手法が一般的だが、これらの仮想実行環境では互換性を重視しているためか、古いIDEインターフェイスしかサポートされていないようだ。この制限に合わせ、例えばWindows Virtual PCの仮想ディスク作成ウィザードでは、最大でも127Gbytesまでの仮想ディスクしか作成できないようになっている。

Windows Virtual PCの仮想ハードディスク新規作成ウィザードの画面
これはWindows 7上で利用できるWindows Virtual PCで、新しい仮想ディスクを作成しようとしているところ。
 (1)作成するサイズ。
 (2)最大値は127Gbytesまでとなっている。

 なおWindows 7やWindows Server 2008 R2では、仮想ディスク・ファイル上にシステムをインストールしてブートすることも可能だが(連載「Windows 7新時代」の第10回「Windows 7のVHDファイル・サポート」参照)、この場合は最大で2Tbytesの仮想ディスク・ファイルを利用できる。仮想ディスクの作成にはディスクの管理ツールを使うが、この場合は作成サイズとして2040Gbytesまで指定できる。

ディスクの管理ツールで仮想ディスク・ファイルを作成する
これはWindows 7のディスクの管理ツールで仮想ディスク・ファイルを作成しようとしているところ。Windows Virtual PCの仮想ディスク作成ウィザードと違って、制限いっぱいまで作成できる。
 (1)仮想ディスク・ファイルの名前。
 (2)サイズ。
 (3)単位を選択する。2Tbytesの制限いっぱいの仮想ディスク・ファイルを作成したければ、「2」と「TB」ではなく、「2040」と「GB」となるように指定すること。
 (4)巨大な仮想ディスクを作成する場合は、通常はこちらを選択する。2Tbytesの仮想ディスクを作成すると、初期状態では4Mbytesのサイズになる。
 (5)これを選択すると、実際に空き領域がないと作成に失敗する。

 これ以外にも、コマンド・プロンプト上でdiskpartコマンドを利用しても仮想ディスクは作成できるが、指定できるサイズはやはり2040Gbytes(diskpartではMbytes単位で指定するので、最大2040×1024=208万8960Mbytes)までとなっている。

C:\>diskpart  ……diskpartコマンドの起動

Microsoft DiskPart バージョン 6.1.7600
Copyright (C) 1999-2008 Microsoft Corporation.
コンピューター: WIN7PC001

DISKPART> create vdisk file="d:\vhdboot\vhd-2TB.vhd" type=expandable maximum=2088961  ……大きすぎでエラー

DiskPart にエラーが発生しました: パラメーターが間違っています。
詳細については、システム イベント ログを参照してください。

DISKPART> create vdisk file="d:\vhdboot\vhd-2TB.vhd" type=expandable maximum=2088960  ……1Mbytes小さくしてみる

  100% 完了しました  ……これは正常終了する

DiskPart により、仮想ディスク ファイルが正常に作成されました。

128Gbytes超のディスクをIDEインターフェイスに接続するとどうなるか?

 古いIDEタイプのディスクは最大サイズが127Gbytesまでに制限されているが、それよりも大きなサイズの仮想ディスクを仮想マシンのIDEインターフェイスに接続するとどうなるだろうか。現実のPCの場合は、サイズの大きなディスクを接続しても先頭の127Gbytesしか見えないし、アクセスもできない。仮想マシンの場合も同様と考えられるが、それを試してみよう。まず、上で述べたような方法で2Tbytesの仮想ディスクを作成し、それをVirtual PC 2007やWindows Virtual PCで仮想マシンに接続してみる。

IDEインターフェイスに2Tbytesの仮想ディスクを接続する
2Tbytesの仮想ディスクを接続してみる。
 (1)仮想ディスクを1台追加する。このインターフェイスはIDE。Virtual PC 2007やWindows Virtual PCではSCSIインターフェイスは利用できない。サーバ向け仮想化ソフトウェアを利用するか、ほかの仮想化ソフトウェアを利用する。
 (2)接続する仮想ディスクのパス。

 Virtual PC 2007上の仮想マシンを起動し、ゲストOS(この場合はWindows XP SP3)上でディスクの管理ツールを開くと次のようになった。

ゲストOSから見た2Tbytesの仮想ディスク
ゲストOSからは127Gbytesのディスクに見える。残りの部分へはアクセスできない。なおゲストOS(この場合はWindows XP)でディスクの管理ツールを開くと、最初にディスクの初期化ツールが起動するので(これは正常な挙動)、指示に従って初期化を済ませておく。ディスクの初期化の詳細については後述する。
 (1)ディスクのサイズ。「不明」となっているのは、ディスクの初期化を行っていないため。
 (2)127Gbytesのディスクに見える。

 これを見ると分かるように、2Tbytesの仮想ディスクを接続しても、先頭の127Gbytes分しか認識されていない。このままディスクを初期化してボリュームを確保しても、127Gbytesのボリュームしか作成できない。

 なお同様のことをWindows 7上のWindows Virtual PCで行おうとすると、128Gbytes以上の仮想ディスクではエラーとなって、設定そのものを完了させることができない。間違えて接続するのを防ぐためであろう。さらに構成ファイルをエディタで直接編集したり、仮想ディスク・ファイルを上書きしたりしても、128Gbytes以上の仮想ディスクが接続されていると、起動に失敗するようだ。Windows Virtual PCの場合は、素直に127Gbytes以下の仮想ディスクを利用するのがよいだろう。

Windows Virtual PCに大きな仮想ディスクを接続する
Windows 7のWindows Virtual PCでは、仮想ディスクの設定時にその内容をチェックし、サイズが128Gbytesを超えていたらエラーとなる。
 (1)このインターフェイスに追加してみる。
 (2)追加する仮想ディスクのパス。
 (3)仮想ディスクのサイズ。
 (4)これをクリックするとパラメータがチェックされる。
 (5)最大サイズを超えているとこのように表示され、設定できない。


       1|2|3|4|5 次のページへ

Copyright© 1999-2017 Digital Advantage Corp. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。