vmwareのハードディスク(vmdk)は、使った分だけ大きくなり、大きくなった分は元に戻らないので、どんどん大きくなってしまう。これはvmdkを成長型で作成した場合。
vmware-toolsにはハードディスクを圧縮する機能がありwindowsの場合はタスクトレイから起動して簡単に行える。ただしLinuxでLVMを使っている場合は不可。
Linuxの場合はgtkを使って作られているようなので、gnomeを使っていたり、gtkライブラリがインストールされていてXが動いていればrootでvmware-tools実行してハードディスクを圧縮できる。
しかしサーバとして動かしていてX環境をインストールしていない場合はコマンドラインでやりたいのだが、その方法は提供されてないみたいだった。VMware’s backでコマンドラインツールがいろいろ公開されているのでこれを使えばできるかも知れないがここではWindowsにCygwinのX環境をインストールしてそれをディスプレイにしてやってみた。なおvmdkを圧縮するにはあらかじめホストに十分な空き容量がないとならない。vmdkファイルを新しく作り直すため。2Gで分割してある場合は2Gの空き容量があれば十分なはず。
Cygwinのページに言ってセットアップファイルをダウンロードして実行する。インストールするソフトウェアの選択画面でX11を[Install]にしてインストールする。
コマンドラインからipconfigを実行してIPアドレスを確認しておく。ここでは192.168.0.204。
スタートメニュから[Cygwin]→[Cygwin Bash Shell]を起動してstartxを実行。
$ startx
xtermが起動するので、xhostを実行してサーバからの接続を許可。
$ xhost +192.168.0.34
192.168.0.34 being added to access control list
ここで192.168.0.34はサーバとして動いているvmwareゲストのIPアドレス。
サーバではX環境の全部は必要ないがライブラリは必要なので、XOrg-libsなどのパッケージをインストール。
# apt-get install XOrg-libs
次にrootでvmware-toolboxを起動。このときDISPLAYを指定する。
# DISPLAY=192.168.0.204:0 vmware-toolbox
成功すればWindowsにvmware-toolboxが表示される。
あとはShrinkタブからvmdkを圧縮することができる。