I'd like to be able to create a guest VM with VirtualBox and take two snapshots of it:

* "Clean Config" - just the OS and minimal dependencies installed, no purposeful software stack on it yet
* "Fully Configured" - the Clean Config + my software stack (app server, database, web server, etc.)

This way I will always be able to either wipe the VM clean and start over with a brand new VM (Clean Config) or I can wipe my software stack clean and start over with not only a Clean Config but newly-installed server software.

When I create my VM (using a SATA controller and VDI drive for simplicity) I see three files associated with it:

* `my-first-vbox-vm.vbox`
* `my-first-vbox-vm.vbox-prev`
* `my-first-vbox-vm.vdi`

I assume the VDI file is my hard drive and actually contains all the data (OS + software stack) for the VM, and that the VBOX file is every other configuration for the VM that doesn't have to do with storage (monitor/display config, mobo, etc.). Not sure what the VBOX-PREV file is...

My question(s) have to do with actually implementing such a snapshot-backup system. I bought a 1TB external HD that I want to use for storing these snapshots. So:

* What file(s) do I need to backup in order to have these two configs (Clean & Full)? Do I need all three or just the VDI? I guess it comes down to this: can I just save the VDI and "plug it in" to any old VBOX file (VM)? Or are all these files tied together at the hip?

Thanks in advance!