How to shrink or compact VirtualBox .vdi images


This works for Windows 


You have to do the following steps:

  1. run defrag in the guest (Windows)
  2. nullify free space:

    With Linux guest run this:

    sudo dd if=/dev/zero of=/bigemptyfile bs=4096k sudo rm -rf /bigemptyfile 

    With Windows guest, download SysinternalsSuite and run this:

    sdelete –z 
  3. shutdown the guest VM

  4. now run VBoxManage’s compact command

    VBoxManage.exe modifyhd thedisk.vdi --compact 

This reduces the size.


This works for Mac OS X

Open Terminal

Enter the following command:


VBoxManage modifyhd -compact “/Users/user1/VirtualBox VMs/Windows 7/Windows 7.vdi”



Leave a Reply