[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-24344:正常に終了しましたが、コンパイル・エラーがあります。

全然、正常に終われてねぇんじゃん?? って思った。 ビューの作成時に発生。 ネットで検索するも、明確な回答は見当たらず・・・ ただ、エラーには違いないので、ビューが正しく作成されていないことになる。 …

[Windows]タスクバーに表示される「最近使ったもの」が多すぎて消せないので、一括削除する方法

さて、Windows使いの人なら、地味に便利に使っている・・・かもしれない「最近使ったもの」という一覧。 確かに、同じフォルダを開きたい時とかは重宝します。 が、たまにウザいw 場合によっては消さなき …

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

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

[ORACLE]最初の有効値を返すCOALESCE・・・読み方分からねぇw

知らなかったら、多分CASEとかで判定してた。 まぁ、人の書いたSQLは勉強になるよねって話・・・じゃないなw 事の発端は、今のプロジェクトで別の人が作った画面の修正をやることになったこと。 その人は …

[ORACLE]SQLのIN句にパラメータを適用する方法

カンマ区切りの文字列を取得した理由 こないだの続きです。 日本の中心付近で仕様変更と闘うSE日記[C#]リストをカンマ区切りの文字列で出力するhttp://ht-jp.net/blog/pc/c/c- …


カテゴリー