ようこそゲストさん

mitc - 日記

2007/06/06(水) VMWare6で仮想ディスクの容量を拡張してみた

はてブ 2007/06/06 27:43 Linuxmiff
環境:VMWare Workstation 6*1 + CentOS5(LVM2) + Windows Vista

作業は,仮想ディスクファイルの容量を拡張することと
それをOSから認識できるようにすることの二段階にわかれます.

仮想ディスクの容量拡張にはコマンドプロンプトを使い,
OSにマウントする作業はVMWare越しに仮想ディスク内のOSを立ち上げて行います.

コマンドプロンプト起動方法

XPまで
  1. ファイル名を指定して実行を開く
  2. "cmd"と入力*2してエンター
Vista
  1. スタートメニューの検索欄
  2. "cmd"と入力*2
  3. 検索結果に"CMD Shell"があるので右クリックして管理者として実行

*1 : 5系でも変わらないと思います多分

*2 : "は入力しない

仮想ディスクの容量拡張

参考文献:Networld, Corp. >> VMware
http://www.networld.co.jp/vmware/tech/dis028.htm
【デフォルトインストール先】
1.Windows版
C:\Program files\VMware\VMware GSX Serve\vmware-vdiskmanager.exe
VMWare Workstationなら次のパスになります.まあ,一緒ですね.
C:\Program Files\VMware\VMware Workstation\vmware-vdiskmanager.exe
仮想ハードディスクの容量拡張に関しては,ここに載っているコマンドでそのままOKです.
# 分割指定しているのを一つにまとめる(容量拡張とは関係無し多分)
vmware-vdiskmanager -r 分割された仮想ディスクファイル.vmdk -t 0 結合後の仮想ディスクファイル.vmdk
# 容量拡張
vmware-vdiskmanager.exe -x <拡張後のサイズ> 仮想ディスクファイル.vmdk
私はこんな感じでコマンドを発行しましたが,問題ありませんでした.
vmware-vdiskmanager.exe -r C:\user\VirtualMachine\CentOS5\CentOS5.vmdk -t 0 CentOS5ex.vmdk
vmware-vdiskmanager.exe -x 10Gb CentOS5ex.vmdk
ただ,原因がわからないんですが,仮想ディスク格納用のフォルダでは読み書きができなかったので,御覧のようにvmware-vdiskmanager.exeと同じフォルダに仮想ディスクを入れて作業しています.
他の環境で再現するかはわかりません.
出たエラーは,こんなの
C:\Program Files\VMware\VMware Workstation>vmware-vdiskmanager.exe -x 10Gb C:\us
er\VirtualMachine\CentOS5ex.vmdk
Using log file C:\Users\miff\AppData\Local\Temp\vmware-miff\vdiskmanager.log
Failed to open the disk 'C:\user\VirtualMachine\CentOS5ex.vmdk' : The system can
not find the file specified (27).
Failed to open disk 'C:\user\VirtualMachine\CentOS5ex.vmdk' : The system cannot
find the file specified (27).
容量を拡張した仮想ディスクを作成したら,仮想マシンに使っているディスクをそれに変更します.
VMWareのメニューから【VM > Settings】を選択し,
Hard Diskを選択状態にしてからRemoveボタンを押します.
すると,容量が拡張される前の仮想ディスクが仮想マシンから削除されます.
そして,Addボタンを押して"Add Hardware Wizard"でHard Diskを選択し,
Use an existing virtual diskで新しく作成した仮想ディスクを選択すればOK.

増量した分をOSに認識させる

LVM2を使った方法なので,その他の方法でディスクをマウントしている場合には使えません.別のやり方が必要です.

参考文献:VMware仮想ディスクの拡張 - Ogawa::Memoranda
http://as-is.net/blog/archives/001186.html

シングルユーザモードでの起動は,
@ITの記事のRedHatの欄の通り.

参考文献では,hdaとなっている部分がVMWareのデフォルトではsdaなので注意.
(IDEのHDDならhda,SCSIのHDDならsdaになります)

他には……
# /usr/sbin/vgextend VolGroup00 /dev/hda3 Volume group "VolGroup00" successfully extended
私の環境では,ここで「hdcの実体が見つかりません」というエラーメッセージが出ました.無視しました.
# /usr/sbin/lvextend -L +2G /dev/VolGroup00/LogVol00 Extending logical volume LogVol00 to 9.34 GB Logical volume LogVol00 successfully resized
私の環境では,「ディスクのサイズが足りなくてリサイズできない」というエラーメッセージが出ました.
仕方がないので+1.9Gにしました.

ほかは問題無し.無事容量を増やせました.
有用な情報を発信してくださる方々に感謝です.本当に.

ところで,fdiskでやっていることがよくわからないので再度容量を拡張することになったら非常に困りそうです.


名前:  非公開コメント   

E-Mail(任意/非公開):
URL(任意):
  • TB-URL  http://mitc.s279.xrea.com/adiary.cgi/039/tb/