Virtual BoxのさまざまなUbuntuインストールから動的に成長する仮想ディスク(VDI)は、実際に着実に「成長」しています。
仮想マシンのファイルを削除しても、VDIファイルがホストのハードディスクスペースから取ったスペースは解放されません。
これらのファイルを圧縮して、未使用のハードディスク領域をホストに戻すにはどうすればよいですか?
動的に拡大するVirtual Box仮想ハードドライブファイルは、仮想マシンの要求に応じて、このファイルの設定で定義した最大サイズまで拡大できます。ただし、ゲストOSで削除したファイルのスペースは解放されません。
ディスクが大きくなりすぎた場合は、未使用のスペースがゼロで埋められていて、ドライブがVDI形式である限り、再度圧縮できます。
Ext2からext 4のファイルシステムの場合、コマンドラインユーティリティ zerofree * 。
zerofree /dev/sdxX
これには、ドライブが使用中でなく、unmountedである必要があります。したがって、この目的のために作成した別のVMに一時的にバインドするか、このVMでUbuntuライブ環境を起動する必要があります。
/dev/sdxX
を問題のext2、ext3、またはext4でフォーマットされたpartitionに置き換えます。
複数のパーティションで、各パーティションに対してzerofree
を繰り返す必要があります。ゼロで埋めることにより、仮想ファイルが一時的に最大サイズまで大きくなることに注意してください。
すべての未使用ドライブ領域がゼロで満たされると、ドライブを次のように縮小します
VBoxManage modifyhd <name>.vdi --compact
これにより、VDIファイルのファイルサイズが大幅に減少します。
* Windowsゲストでは、未使用のスペースをユーティリティsdelete
で置き換えることができます。