Virtualbox, merging snapshots and base disk
What you want to do is from the snapshots dialog, select your parent snapshot that you want to merge all snapshots afterwards to a single VDI.
From your description it sounds like this is the root of the tree.
Right click and select 'Delete Snapshot'.
This will do what you want --- it will merge all the changes from all child snapshots into a single VDI.
Additionally - cloning the disk image that is in the latest snapshot - will also merge the differencing disk with its parent (and its parent, so on, until you get to a 'normal' hard disk type).
I suspect that 'deleting a snapshot' runs the clonehd command.
Check your VM settings (specifically IO APIC enabled/disabled) and make sure they match.
If you only want to keep a single snaphot, make it your current state & then export the VM & re-import it. Exported appliances don't retain their snapshot history.
Or you could use this vboxmerge.py script to handle the merging for you. Given the number of snapshots you have, I would expect the export/import cycle to be quicker.
Here's a technique (tested on VirtualBox 4.3.4) that uses the 'Clone' command to merge and compact all the snapshots to a new VM containing a single VDI file:
Rename the VM so you can reuse its current name for cloned VM (you can change the VM name from the 'Basic' tab of the 'General' settings).
Right-click on the VM and run the 'Clone...' command:
- Set the name to the VM's original name.
- Accept the remaining defaults i.e. Clone type: 'Full clone'; Snapshots: 'Current machine state'.
Delete the old VM (right-click on the VM and run the 'Remove...' command).