Error when converting VmWare virtual disk to HyperV

I found some adhoc solution – a bit hack perhaps but it works at least.

Digging into similar issues found on google I came to a tool to extract disk descriptor out of the VMDK file. The content of the descriptor for my VMDK was something like this:

# Disk DescriptorFile
version=1
encoding="windows-1252"
CID=5379bf0f
parentCID=ffffffff
isNativeSnapshot="no"
createType="monolithicSparse"

# Extent description
RW 209715200 SPARSE "00054_C8PHS1096_151216-disk2.vmdk"

# The Disk Data Base 
#DDB

ddb.adapterType = "lsilogic"
ddb.geometry.biosCylinders = "13054"
ddb.geometry.biosHeads = "255"
ddb.geometry.biosSectors = "63"
ddb.geometry.cylinders = "13054"
ddb.geometry.heads = "255"
ddb.geometry.sectors = "63"
ddb.longContentID = "64d4e008b7227bcce8aa54995379bf0f"
ddb.toolsInstallType = "1"
ddb.toolsVersion = "10241"
ddb.uuid = "60 00 C2 96 f7 70 f2 fd-b5 02 9e 46 6c df 00 2e"
ddb.virtualHWVersion = "10"

The error message together with the content of the extracted descriptor came to my attention, specifically the line:

ddb.toolsInstallType = "1"

as it contains the strange value of 1 from my error message. I edited the descriptor – just comment out that single line with # (hash mark), injected it back into VMDK and voila – the conversion works now.

Credits to this link https://communities.vmware.com/thread/343214?start=0&tstart=0 and of course to tools by Dariusz Stanislawek.

Just for reference, the steps I have done:

  • download and extract dsfok tools
  • use dsfo.exe "c:\temp\disk2.vmdk" 512 1024 descriptor1.txt to extract the descriptor
  • edit the descriptor file in Notepad++: comment the above mentioned line (as I added the extra single character (#) I also deleted one NULL character from the end to keep the file size of 1024 bytes (not sure if this is needed).
  • use dsfi.exe "c:\temp\disk2.vmdk" 512 1024 descriptor1.txt to inject the descriptor back into the VMDK
  • repeat these steps for the other disk (my VM has two .vmdk files)
  • reissue the ConvertTo-MvmcVirtualHardDisk command

REMARK

After creating VM in Hyper-V, the machine didn’t boot, it remained in black screen with fast blinking cursor (so called black screen of death). I don’t know if it was caused by the conversion or by the fact that original disks in VMWare had been SCSI while I attached them as IDE. To fix it, I attached DVD with image of Windows and booted from DVD. I ran the Rapair system, started the command line and ran

bootrec.exe /fixBoot

Finally, the VM boots and runs.. end of story.

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)