The power went out while I was doing a build on a VirtualBox machine, when I restarted the vmdk for the disk the vm was using was corrupted, apparently irrecoverably. I have been able to grep the 66GB vmdk file and it finds strings from the code I was working on that hadn't gotten in to subversion yet (yeah, yeah I know). But the strings are either in the shell history or what look to be strings inside object files.

Any ideas for finding/recovering the source code?

If it helps the vm was Linux, Fedora Core 10 on an ext3 filesystem. The host is an ubuntu 10.04_amd64 and has an ext4 filesystem.

  • Have you tried a chkdsk/fsck on your physical machine's hard drive? – usr-local-ΕΨΗΕΛΩΝ Oct 29 '10 at 15:07
  • @djechelon it seems that fsck is smart enough to know the file isn't a device and doesn't do anything with it. It just prints the help. – Neth Oct 29 '10 at 15:11
  • 2
    Sorry, you misunderstood me. I suggested you to do fsck on your physical machine's hard drive, not the vmdk file. It is possible that during the power loss event, your machine was writing to the vmdk file but that write was interrupted by the outage. An error on your physical hard disk might be present and affect the possibility to read the vmdk file. After you are sure your physical hard drive is sane, you can start attempting to recover the virtual file system. – usr-local-ΕΨΗΕΛΩΝ Oct 29 '10 at 15:26

Perform the process to repair highly corrupt or damaged VMDK files and restore recovered records in workable VMDK file. You can retrieve VMDK files without installing Virtual environment and regain all your images, videos, audios, database etc. Repairing the damaged VMware Virtual disk file, software lists all recovered object in explorer view. Here you can select any particular file/folder and perform selective VMDK file recovery. After that you can easily save your data in desired location or previous drive by selecting “Extract” or “Extract As Original” option.

Utilize this VMware recovery software application and rescue data from deleted as well as formatted, lost or missing VMDK.

To know more: http://gallery.technet.microsoft.com/Recover-VMDK-Data-from-bd1ecd39


Try using something that does partition recovery like GetDataBack.

The partition tables are within the vmdk and the software should detect a new partition. Software like this will do what you need but last time I tried it (over a year ago) they don't do well with multiple VM hard disks on the same drive as you now have multiple, valid, partition tables that span the whole drive. If the vmdk is intact and can be moved try moving it to a disk that has had all free space wiped and then run the recover software, that should clear up all the oddities of these type issues.

  • Well that might help, but it's a Linux vm so the filesystem is ext3. – Neth Oct 29 '10 at 16:17

If you can mount the image file, you might be able to use the same tools you would use on a physical drive to recover files - such as testdisk, or photorec. If not, no, there's not much you can do. If its a vmdk, i believe vmware might have a tool for mounting it.

Not the answer you're looking for? Browse other questions tagged or ask your own question.