Does anyone have a good complete strategy for backing up a bunch of virtual machines running under VirtualBox?

I intend to run a handful of virtual machines on a single hardware platform and back them up nightly to external disks, which will be taken off site every weekend in rotation.

(Just to clarify, I don't intend to shut the machines down during this process, if I can avoid it)

Am I right in thinking I can just write a script which, each night, creates a snapshot, copies the 'main' disk image to the external media, then removes the snapshot again?

Better ideas are much appreciated!


In the VirtualBox 2.2+, there is a feature that allows you to import/export VM's in the Open Virtualization format. This format puts everything together for you in one nice file.

  • To import

    • From the GUI: File -> Import Appliance
    • From the console:

      VBoxManage import SomeName.ovf

  • To export

    • From the GUI: File -> Export Appliance
    • From the console:

      VBoxManage export "Name of VM" -o SomeName.ovf