6

I have a .SAV and .VHD file from a backup. Since these files were created the revert to snapshot feature was used, by design this deleted everything since the snapshot was created. However I now need to access the data that was in the snapshot.

Is there any way of using the .sav and associated vhd file to restore the virtual machine?

mrmike
  • 323
  • 1
  • 3
  • 10

2 Answers2

5

After much exploration I have found that this is possible!

NB I don’t have any experience with XML so please excuse the terminology......also please backup any configuration files before making any of the changes suggested..

I could not find any references to this in the VirtualBox documentation or on any websites. In case anyone ever has the same problem here are the steps I went through to resolve the problem:

  1. I Turned off the virtual machines and took a copy of the VirtualBox directory, which contains all of the virtual machine folders and configuration files.
  2. Created a new snapshot of the machine in question
  3. Compared the copy of the VirtualBox folder with the original after the snapshot was created to see what changes were made.

I was happy to see the changes were fairly simple. To restore the snapshot from the backup I:

  1. Opened the VirtualBox.xml file from the VirtualBox folder and found the node named
  2. Under the node I located the child node of the virtual machine I wanted to add the snapshot to - which you can tell by the name of the VHD file.
  3. As the temporary snapshot I added to compare the directories was no longer needed I found the folder where it was created and replaced it with the snapshot from the backups.
  4. I then amended the line which contained the information about the temporary snapshot by changing the uuid of the temporary snapshot with the uuid of the snapshot from backup as well as changing the name of the snapshot file. The section looked like:

Notice that the uuid is the same as the snapshot file name, if you need to find out what the uuid is just copy and paste the snapshot filename without the extension.

  1. That’s it for the VirtualBox.xml file, save it and close it. Now open the MachineName.xml file from within the virtual machines directory
  2. Scroll down to the section that looks similar to this:

  1. Replace the uuid of the temporary snapshot with the uuid of the snapshot from backups.
  2. Save the file and close it

That worked for me. The machine booted up fine with the snapshot restored from backup and all the data back!

mrmike
  • 323
  • 1
  • 3
  • 10
0

In order to restore a dead VirtualBox VM from its .sav file I did the following (5.1.28 on Windows 7):

(1) clone your old VM within the VBox GI

go into the new directory

(2) Get VM uuid

open your cloned .vbox file with your editor & copy the uuid from line starting with

     Machine uuid={"uuid of your vm

(without the curly braces)

(2) to restore your vm with its latest .sav file

adopt this path to your environment:

    cd C:\Program Files\Oracle\VirtualBox
    VBoxManage.exe adoptstate <VM uuid> <path to latest .sav file>

Restart your VM

MarkHelms
  • 171
  • 5
  • 15
  • This [throws an error](https://superuser.com/questions/1395072/recovering-saved-machine-state-in-virtual-box) when I try this. – Michael Jan 16 '19 at 19:51