VMware Communities
alan_klette
Contributor
Contributor
Jump to solution

VMDK corrupt "Module 'Disk' power on failed" after host crash

Host drive went offline while VM was running.

VMWare (Workstation, 16.2.4) complained several times about not being able to access disk files, giving options to pass errors back to the host OS (Windows 11) or on to the VM or to power off the VM.  The only option that worked was to power-off the VM.

The problem appears to be in the base disk files; when run on the base disk vmware-vdiskmanager reports The virtual disk, '...', is corrupted and cannot be repaired. I believe the vmdk chain is okay (manual checking of CID & parentCID in vmdks, E&OE).

My objective is not to recover a bootable system (I already have replacement up and running) but to mount the disk to recover a fairly substantial body of recent work (i.e. I need to mount the most recent snapshot).

I am out of my depth here, any assistance in fixing disk to achieve (even partial) recovery would be greatly appreciated

Attached files per https://communities.vmware.com/t5/VMware-Workstation-Pro/VMDK-corrupted/td-p/2849369 discussing similar problem.

 

1 Solution

Accepted Solutions
a_p_
Leadership
Leadership
Jump to solution

The metadata in this file has been completely overwritten by hex zeroes, so there's unfortunately nothing I can do in this case.

What you can do, is to rename/backup the corrupted file "Metadata-035505SAWKS02.za.sbicdirectory.com-000017-s026.vmdk", and replace it with a copy of "035505SAWKS02.za.sbicdirectory.com-000008-s026.vmdk". This should allow you to mount the virtual disk, and to extract/backup important data.

If you want to try booting the VM, remember to take another snapshot before powering it on, so that the current files will not get modified.

I don't know what may have caused the issue, but issues like this are sometimes caused by on-access anti virus scanning. What I do on my systems is to exclude *.vmdk files from being scanned, and rather - if required - run a virus scan within the guest OS.

André

View solution in original post

Reply
0 Kudos
4 Replies
a_p_
Leadership
Leadership
Jump to solution

From a first look at the log file, it's the "...-000017-s026.vmdk" (Size: 4 500 946 944 Bytes) in which some metadata has been zeroed out.
I need to a look at the first 1.245.184 Bytes of this file, to see whether there's a chance to recreate the metadata.

In order to extract the required data, you may simply modify "Get-VmdkHeader.ps1" and set the $HeaderSize to 1245184. Then run the script for only the mentioned file.

Doe you see any other errors in the vmware.log?

André

Reply
0 Kudos
alan_klette
Contributor
Contributor
Jump to solution

Thanks for taking an interest André,

Attached is the vmdk bin extract and part of the output of vm-support.vbs containing logs for this VM (the rest of the dump is quite large - about 8MB aggressively zipped) but let me know if you need anything else.

Regards

Alan

Reply
0 Kudos
a_p_
Leadership
Leadership
Jump to solution

The metadata in this file has been completely overwritten by hex zeroes, so there's unfortunately nothing I can do in this case.

What you can do, is to rename/backup the corrupted file "Metadata-035505SAWKS02.za.sbicdirectory.com-000017-s026.vmdk", and replace it with a copy of "035505SAWKS02.za.sbicdirectory.com-000008-s026.vmdk". This should allow you to mount the virtual disk, and to extract/backup important data.

If you want to try booting the VM, remember to take another snapshot before powering it on, so that the current files will not get modified.

I don't know what may have caused the issue, but issues like this are sometimes caused by on-access anti virus scanning. What I do on my systems is to exclude *.vmdk files from being scanned, and rather - if required - run a virus scan within the guest OS.

André

Reply
0 Kudos
alan_klette
Contributor
Contributor
Jump to solution

Some recent experimental work and script changes are missing but up to 23 July 100% is there.  Much appreciated! 

Reply
0 Kudos