vmware-vdiskmanager.exe -d corrupted at least 8 of 39 vmdks.
I defragmented my vmdks for the first time, with this command to be exact
set VMDKHOME=M:\My Virtual Machines
cd "%VMDKHOME%"
M:
FOR /F "tokens=*" %%G IN ('DIR /B /A /S *.vmdk') DO vmware-vdiskmanager.exe -d "%%G"
on 39 vmdks. I let the defragmentation finish in all instances and never canceled it mid-process. Now so far five of the vmdks that were defragmented have shown to have been corrupted so that they won't boot.
Only x64 vmdks were corrupted, but it may have been a coincidence.
The corruption is fairly small, a couple of dozen files it seems, so the vmdks with Windows 2000 and up have been fixable with sfc, some of then required only a
startrep
sfc /scannow /offbootdir=d:\ /offwindir=d:\windows
and some required additional help as vital systems files were corrupted in %windir%\winsxs too, which this sfc helper tool http://social.technet.microsoft.com/Forums/ar/w7itprogeneral/thread/1faec0b5-cb63-44d2-b70c-cb4461ca007b takes care of.
Two Server 2008 R2 x64 could not load the vmdk at all, but could be started again after recreating the vmdk with vmware-vdiskmanager.exe -r -t.
I use VMWare Workstation 7.1.3 build-324285 in Windows 7 x64.
How can vmware-vdiskmanager.exe -d be so unreliable? A defragmenter should go to greath lengths to never corrupt data no matter what happens.