[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 /







-開発メモ

関連記事

ADO.NET Entity Data Model をOracleで使う

かれこれ数ヶ月のエラー 以前、会社のノートPCのHDDをSSDに変えたわけですが、それからずっと、あるエラーに悩まされておりまして・・・ その内容は、 エラー 175: 不変名が ‘Ora …

続) 何度だって引っかかるORACLEのエラー・・・。ORA-01008:バインドされていない変数があります。

この土日は休日出勤でした・・・ そして、昨日・・・新しい現象が発生しました。 日本の中心付近で仕様変更と闘うSE日記日本の中心付近で仕様変更と闘うSE日記http://ht-jp.net/blog/p …

[Oracle]破棄されたオブジェクトにアクセスできません。 オブジェクト名 ‘oracleconnection’ です。

破棄されたオブジェクトにアクセスできません。 オブジェクト名 ‘oracleconnection’ です。 破棄されたオブジェクトかどうかの判断(MSDK) MSDNでも破棄さ …

「再起動」それは、魔法の言葉:iOSでオンスクリーンキーボードが表示されない問題を解決する

客先へ送付予定の時に発生しました。 iPadを設定していた時に、キーボードが出てこなあい・・・ で、公式ページで下記の内容を発見。   Apple : iOS でワイヤレスキーボードを使った …

[C#]リストをカンマ区切りの文字列で出力する

リストの項目をカンマ区切りで出力したい 卵が先か鶏が先か~って話じゃないんですが、リストで出力した内容をカンマ区切りのデータにする必要が出てきたので、調べました。 List<string> …


カテゴリー