[VMWare]仮想マシンの容量を最適化して圧縮する

投稿日:2018-01-07

Vmwareを使っているわけですが、長い間使っているとどうしてもゴミというか仮想マシンのフォルダ自体が肥大化してきます。
かといって、フォルダ内のファイルを適当に削除する訳にもいかないんですよねー。
過去に、大丈夫そうなファイルを手動で削除して、仮想マシンが起動しなくなったことがあったので、手動での削除は恐怖ですw

まぁ、普通のPCのシステムファイルを削除しても、起動しなくなるので、当たり前っ茶当たり前ですが。

OSのイメージを圧縮して容量を減らす方法を試してみました。

VMware Toolsのインストール

OSのイメージの圧縮をするためには、VMware Toolsがインストールされている必要があります。

今回の作業は、それを前提として進めます。

ちなみに今回使用したVMwareプレイヤーのバージョンは14ですが、他のバージョンでも変わらないかと。

ディスクの圧縮をやってみる

今回は使用しているOSがウィンドウズなので、コマンドプロンプトを使用して作業を進めます。

コマンドプロンプトを起動して、以下のコマンドを入力します。


C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe disk list

この仮想マシンでは、Cドライブしか運用していないので対象のドライブが「C:\」しかありません。
複数のパーティションを切っているのであれば、各ドライブ名が表示されるじゃないかなと思います。

次に、以下のコマンドを入力します。


C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe disk shrink c:\

 

このコマンドで圧縮を行いたいドライブを指定します。

圧縮の実行

実際にOSイメージの圧縮をしてみます。

圧縮前の仮想マシンのフォルダの容量

OSイメージの圧縮の実行

圧縮後の仮想マシンのフォルダの容量

今回は2GBほどの容量を圧縮することができた。
ゲストOSがウィンドウズXPだからと言うのもあるかもしれないけど、もともと容量自体は少なめなところがある。
なので劇的な容量の変化と言うのはなかった。

けど、実際に容量を圧縮することができたので今回の事件としては成功!!

今度は、Windows 7のOSイメージでやってみよ。

OSごとのコマンド

ゲストがWindowsの場合(コマンドプロンプト)

C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe disk list
C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe disk shrink C:\

ゲストがLinuxの場合(シェル)

sudo vmware-toolbox-cmd disk list
sudo vmware-toolbox-cmd disk shrink /

ゲストがMacの場合(シェル)

sudo /Library/Application\ Support/VMware\ Tools/vmware-tools-cli disk list
sudo /Library/Application\ Support/VMware\ Tools/vmware-tools-cli disk shrink /







-開発メモ

関連記事

[ORACLE]ORA-00918:列の定義が未確定です・・・のエラーにならなかった

なんでエラーになるものをマージしてるんだ? と、怒られました。 一瞬、理解が出来ず・・・ で、エラーを再現してもらう・・・と。 あっさり発生。 早く修正しろって突っ返されました。 頭には「?」しか浮か …

コマンドプロンプトのFor文で、ファイルの一覧を表示する。

コマンドプロンプトの出力結果を引数として、別のコマンドを実行させる。 なんてことが出来ることは知ってるんだけど、どうやってやるのかは良く分からない。 おもむろにコマンドプロンプトを立ち上げて、以下のコ …

no image

[Xcode]C#とは違うエラーキャッチ方法

先日から、Swiftの勉強をしているわけですが、未だに仕事でメインで使っているC#との違いで戸惑うことがちらほらと。 repeat文なんて、VBやC#じゃ見ないよな。forやwhile文が対応してるけ …

[C#]systemcolorを使う

ボタンとかを作成した時に、BackColorとかにデフォルトで設定される色を変更したいけど、何かのアクション以外は、デフォルト職を使いたい。 って時に多分使える。 SystemColorsクラス(Mi …

[Oracle]regexp_replaceで、改行コード・タブとかのCSV出力時に邪魔になるものを消す

通常、スペースを消したい時とかなら、replaceとかtrimとかで一括で処理してたんだけど、CSVに出力したい時に、複数の処理を纏めるのがスゲェ面倒くさかった。 それがregexp_replaceで …


カテゴリー