[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]regexp_replaceで、改行コード・タブとかのCSV出力時に邪魔になるものを消す

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

ADO.NET Entity Data Model をOracleで使う

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

ORACLE:普段使っていないと、どうしても忘れるSQLメモ。

逆引きSQL構文集 文字列を置換する http://www.sql-reference.com/string/translate.html 文字列を連結する http://www.sql-refere …

[VMWare Fusion]VMWare Fusion 11がBigSurで使えなかった話。

  現在、WindowsとMacの2OS持ちの私ですが、2OSにはデメリットもありまして、それをカバーするために、VMWare Fusionを使用してWindowsとの橋渡しをしたりしてる訳 …

[C#]DateTimePickerは、CloseUpイベントで日付変更を取得する

日付関連で、取得した値がどうか?ってのを検出して判定する必要が出たのでメモ。 CloseUpイベントで何が判定されるのか? https://msdn.microsoft.com/ja-jp/libra …


カテゴリー