VirtualBox の OVA ファイルのサイズを縮小する

VirtualBox の OVA ファイルのサイズを縮小する

約 1 GB の ova ファイルから派生した Ubuntu 64 ビット VM があり、VMware vSphere で使用してさらにソフトウェアをインストールし、2~3 GB のスペースを占めるいくつかのデータセットに対してシステムを使用しましたが、これらの大きなファイルを削除したため、新しく生成された ova ファイルも約 1.1 GB のスペースを占めると予想していましたが、実際には約 3 GB を占めています。VirtualBox で .vmdk ファイルの詳細を確認すると、次のようになります。

Hart Disk: SATA Port 0
Type (Format): Normal (VMDK)
Virtual Size: 8.00 GB
Actual Size:  7.90 GB
Details: Dynamically allocated storage
Location: /somewhere/myVM-disk1.vmdk
Attached To: myVM.virtualbox

このマシンにエクスポートするときの ova のサイズは約 3 GB です。

どうすれば縮小できるでしょうか?

答え1

.vmdk 内のスペースは、OS が特定のセクターに初めて書き込みを行ったときに割り当てられます。一度書き込まれると、そのスペースは永久に割り当てられます。

したがって、仮想マシンに 2 番目の動的サイズ調整可能な仮想 HDD を追加し、LiveCD から VM を起動し、fdisk を使用してパーティションを作成し、すべてのファイルをコピー (cp -R) する必要があります。次に、VM をシャットダウンし、仮想 HDD を交換し、再度起動してすべてが機能していることを確認し、元の仮想 HDD を VM から切り離し、ホスト システムのディスク上のファイルとして削除します。

VM で dd を使用して直接コピーすることはできません。これは、各セクターがターゲットの .vmdk ファイルに書き込まれるため、縮小されるのではなく、フル サイズまで拡張されるためです。

答え2

記事を見る動的に拡張するゲスト VirtualBox イメージを縮小する方法

ディスクを縮小する方法を以下で説明します。

  1. 空き領域をゼロにするには、ゼロフリーUbuntuの場合
  2. VMを縮小するには
    VBoxManage modifyhd my.vdi –compact

関連情報