The hard-drive(s) of your virtual machines are simply files which are stored typically on the host's filesystem. On my Mac they're in

~/Library/VirtualBox/HardDisks/ VirtualBox understands several disk formats including:

  • .vdi or "Virtual Disk Image", the native format for VirtualBox
  • .vmdk - VMware's format
  • .vhd - Microsoft's format

This means that if you have an existing hard drive from another virtualization platform, you can plug it into a VirtualBox vm by telling the system about it using the Virtual Media Manager...

And then configuring it in the vm's Storage configuration dialog (or via the command line):

Given that VirtualBox not only understands, but can also create, these different formats, one obvious question is "what is the difference?" or "which one is best?"

One of the VirtualBox team (thanks Klaus) explained:
"The major difference is that VDI uses relatively large blocks (1MB) when growing an image, and thus has less overhead for block pointers etc. but isn't ultimately space efficient in the sense that if a single byte is non-zero in such a 1MB block the entire space is used.
VMDK in contrast uses 64K blocks, and thus has more management overhead and generally a bit less disk space consumption
What offsets this is that VDI is more efficient when it comes to snapshots."
So now you know!

- FB