[M.D.L] VMware の仮想 disk 増強化計画

<Home> → <M.D.L.> → <[M.D.L] VMware の仮想 disk 増強化計画>

はじめに

この page では VMware の仮想 disk のサイズを増やす方法について記載しています。

ほぼ FAQ と化しているこのネタですが、VMware 側も単純に仮想 disk を増やす方法は無いとの見解らしいです。本家に以下の page がありました。

私はバックアップツールでサイズ変更を行い、問題が無いことを確認しています。

この方法は VMware 3.2 でも通用することを確認しています。


Norton Ghost 2002 による仮想 disk 増強化

以下の手順にて仮想 disk を 4.0GB → 8.0GB に増やしました。

Host OS は Windows 2000 SP4、Guest OS は Windows 2000 です。

1. 仮想 disk を増設します

増設と言ってもそれは仮想 disk で物理的に増やすわけではないですよ。

  1. SnapShot の削除
    念の為、SnapShot は削除しておいた方が良いでしょう。
    SnapShot を使用している場合、『スナップショット』→『スナップショットの削除(E)』を選択し、SnapShot を削除します。作業中に誤って SnapShot 機能を動作させてしまい、辻褄が合わなくなることがありました。SnapShot が無いと不安であるならば物理的に Image をコピーする方法をお勧めします。
  2. 『編集(E)』→『仮想マシン設定...(V)』を選択
    「仮想 コントロール パネル」が開きます。
  3. 『追加...(A)』を選択
    「ハードウェア追加ウィザード」が開きます。
  4. 『次へ>』を選択
    「ハードウェアの種類」が表示されます。『ハードディスク』が選択されているのを確認します。
  5. 『次へ>』を選択
    「ディスクの選択」が表示されます。『仮想ディスクの新規追加(V)』が選択されていることを確認します。
  6. 『次へ>』を選択
    「ディスク容量」の指定が表示されます。デフォルトで 4.0GB ですが、ここでは希望の容量の 8.0GB に変更します。

    VMware でのディスク容量設定 (8.0GB)
  7. 『次へ>』を選択
    「ディスクファイルの指定」が表示されます。そのままで問題なければそのままにしておきます。
  8. 『完了』を選択
    これで元のハードディスク『ハードディスク 1 (SCSI 0:0)』に加え『ハードディスク 2 (SCSI 0:1)』が増設されているはずです。

    VMware 上の 2 つの Harddisk

2. Norton Ghost 2002 の起動

Norton Ghost 2002 の起動用 Disk を使用して起動します。

3. Disk to Disk copy

『Local』→『Disk』→『To Disk』の後、」License Key 入力後 Source drive を 1 に Distination drive を 2 に設定、Disk copy を開始。問題が発生しなければ 8.0GB の Harddisk に OS Image がコピーされているはずです。

VMware 上での Norton Ghost

4. ハードディスクの切り替え

disk to disk コピー終了後、新しい disk に切り替えましょう。

  1. ハードディスクの削除
    再度「仮想 コントロール パネル」を開き、『ハードディスク 1 (SCSI 0:0)』を削除します。
  2. ハードディスク設定の切り替え
    コピーした『ハードディスク 2 (SCSI 0:1)』を ハードディスク 1 にします。
    『ハードディスク 2 (SCSI 0:1)』が選択されているのを確認し『詳細(A)...』を選択します。『仮想デバイスノード』の設定を『SCSI 0:1 ハードディスク 1』→『SCSI 0:0』に変更します。
    VMware の変更前の仮想デバイスノード

これでハードディスクの交換が終了しました。無事、起動することが出来ましたら元の仮想 disk は削除しておきましょう。


Drive Image 2002 による仮想 disk 増強化

作業手順は Norton Ghost とほぼ同じです。Drive Image 2002 の場合は Bootable CD に対応していますので、そのまま Boot させることが出来ます。

Boot 出来ない場合には Boot 用の Floppy を作成することをお勧めします。デフォルトの BIOS 設定では CD Boot が HDD Boot より後になっていますので何も考えていないと HDD か Boot してしまいます。Guest OS の BIOS 設定を変更することで CD Boot が可能になります。


Knoppix (dd+QtParted) による仮想 disk 増強化

#ここからが本番 =)

上記のソフトウェアはよく出来ていますが、有償です。そこで無償でなんとか増強出来ないか試行錯誤してみました。結論からすると今から説明する方法は推奨出来ません。かなり失敗や危険を伴う方法ですので、通常ならば上記のソフトウェアを使用することをお勧めします。

唯一、利点を挙げるとするならば、Linxu 等の partition image もサポートしているため、Windows 以外の Guest OS では役に立つ可能性があります。その程度です。

手順は以下の通り。

1. 仮想 disk の増設

この手順は上記の Norton Ghost と同じです。

2. Knoppix の用意

Knoppix は CD Boot の出来る Linux distribution の一つです。OS を Harddisk に Install することなく起動出来ることが特長です。以下より ISO Image を Download します。700MB 程度と非常に大きい Image なので、気をつけてください。最近では雑誌のオマケにも付いています。

Knoppix の情報については <Knoppix(LiveCD Linux) 関連> でも取り扱っています。

3. Knoppix の CD 起動

上記でも説明しましたが、デフォルト状態では HDD からの起動が優先されてしまい、CD 起動が出来ません。Guest OS 内の BIOS の設定を変更することで CD 起動が可能になります。

  1. Guest OS 起動中に [F2] キーを押します
    BIOS 画面が表示されます
  2. 『BOOT』にて『CD-ROM Drive』を一番上にします
    これで HDD よりも CD の方に Boot が優先されるようになります。

    VMware の BIOS 画面(BOOT)

ちなみに CD-R に焼く必要性はありません(もちろん焼いてもいいんですよ)。CD-ROM の『接続』設定で『ISOイメージを使用(I):』で Download してきた ISO イメージを指定してあげれば CD-R に焼かずとも Boot 出来ます。[VMwareでISOイメージを使ってLinuxをインストールするには(@IT)] が参考になるでしょう。

4. Root Shell の起動

『KNOPPIX』→『Root Shell』にて Root shell を起動します。以後の作業は Root でなければ権限が足りません。Root 権限を得るには Root Shell の起動が必要になります。

5. dd による harddisk image copy

SCSI 接続ならばコピー元が「/dev/sda」、コピー先が「/dev/sdb」と認識されているはずです。QtParted から確認出来ます。

QtParted は Root Shell から以下のコマンドを実行します。

# qtparted &

この時点で不用意に「/dev/sdb」をクリックしてしまうと QtParted が落ちます。注意しましょう。

覚悟が完了しましたら dd で harddisk の image copy を行います。 Root Shell から以下のコマンドを実行します。

# dd if=/dev/hda of=/dev/hdb

20-30 分位掛かります。気長に待ちましょう。

待っているあなたに明日役に立つわけが無いトリビアを一つ。[UNIX 用語 由来/読み方辞書 version 1.6 (Feb 13 1995)] によると dd の名前の由来は「 "Convert and Copy"の略で cc としたかったが、 既にそれは存在していたので dd になった」とのこと。2文字ですからねぇ。

6. QtParted による partition 拡張

最新の QtParted (v0.32) では NTFS の partition 拡張に対応していますので resize してみます。

dd が終了した時点での QtParted

dd で copy しただけだと 4.0GB の partition がそのまま copy されるだけなので美味しくありません。QtParted にて 4.0GB → 8.0GB へ partition 拡張を行います。

QtParted を起動し /dev/sdb の partition を resize します。

ここで絶妙な partition の resize が必要になります。8.0GB 全部を resize すると意図不明なエラーになってしまいます。そこで全部を resize せずに8MB 程度空けて resize すると正常に resize 出来るようになりました。理由はわかりませんが多分 NTFS の仕様に由来しているのでしょう。

QtParted による絶妙な resize (-8MB は任意)

QtParted の作業が終了しましたら、速やかに shutdown しましょう。

7. ハードディスクの切り替え

この手順も上記の Norton Ghost と同じです。

ちなみに再起動後、NTFS が壊れたと認識するらしく Windows 2000 起動中に chkdsk が入ります。特に問題は無いようですが、本当に問題無いかは不明です。今後の更なる QtParted の発展を期待しています =)。

0. 総論

この方法は良くないです。

ここでは敢えて成功例のみを記載しましたが実際の所、失敗だらけです。FAT32 の resize はうまく動作しませんでした。今後、QtParted (というより GNU Parted の方かな) が進化してこれらの問題点が少なくなってくれることを期待しつつ、Knoppix (というより Linux かな) は面白いなあ、ということで。

オモチャとしてはどの方法よりも面白い =)。是非、体験を。


<Home> → <M.D.L.> → <[M.D.L] VMware の仮想 disk 増強化計画>
Copyright (c) 2003 Makoto NARA (Mc.N), All rights reserved.
<Terms of Use>

Valid CSS! Valid HTML 4.01!