In order to merge split vmdk files into one, you need to use the vmware-vdiskmanager command. However, this is only available if you have VMware Fusion or VMware Workstation installed. VMware Player doesn’t have this.
A little utility can be downloaded separately from the VMware site (KB Article 1023856). you can download vdiskmanager-windows-7.0.1.exe.zip as attachment file .
Once downloaded, unzip and rename 1023856-vdiskmanager-windows-7.0.1.exe into vmware-vdiskmanager.exe and copy or move to the directory where VMware Player is installed.
The installation directory path may be look like as
C:\Program Files (x86)\VMware\VMware Player
In order to merge vmdk files, open a Command Prompt and CD to the directory where the vmdk files are located.
Assume you have the following vmdk files :
vmdkname.vmdk vmdkname-s001.vmdk vmdkname-s002.vmdk vmdkname-s003.vmdk .......
To Merge then into single vmdk file. open the command prompt and run the following command
"C:\Program Files (x86)\VMware\VMware Player\vmware-vdiskmanager.exe" -r "d:\VMLinux\vmdkname.vmdk" -t 0 MyNewImage.vmdk
The new vmdk file will then be created:
Creating disk 'MyNewImage.vmdk' Convert: 80% done.
Once done, move the original vmdk files to a different directory. Finally rename MyNewImage.vmdk to vmdkname.vmdk as it was originally named.
I am using this command but do not understand why i get an error.
My command:
C:\Program Files (x86)\VMware\VMware Workstation>vmware-vdiskmanager.exe -r E:\Brookdale\VMs\Dell Univ Desktop\dell Univ Desktop.vmdk -t 0 Dell_Univ_Desk.vmdk
but i keep coming up with this error: Diskname or some other argument is missing.
VMware Virtual Disk Manager – build 1945795.
Usage: vmware-vdiskmanager.exe OPTIONS |
I am not sure why because the the E: drive is where my VMDK is at. This is a external USB 3.0 drive. Any ideas???
Add quotes around your path
You have spaces in your path, that is way you got the error. try to put in quotes. for example.
“E:\Brookdale\VMs\Dell Univ Desktop\dell Univ Desktop.vmdk -t 0 Dell_Univ_Desk.vmdk”
I hope it resolves your problem.
Hi,
I try to merged multiple files vmdk (25 files vmdk) in one file with your command :
C:\Program Files (x86)\VMware\VMware Workstation>vmware-vdiskmanager.exe -r “D:\
utilisateurs\Public\Documents\Shared Virtual Machines\WINXP-TEST\WINXP-TEST.vmdk
” -t 0 “F:\WINXP-TEST.vmdk”
Creating disk ‘F:\WINXP-TEST.vmdk’
Convert: 100% done.
Virtual disk conversion successful.
But only one file is created and it’s an copy of the first file vmdk !
Can you help me to resolve my problem ?
Best regards
Sam
please try to merge into the same directory as i did in my post. for example
C:\Program Files (x86)\VMware\VMware Workstation>vmware-vdiskmanager.exe -r “D:\
utilisateurs\Public\Documents\Shared Virtual Machines\WINXP-TEST\WINXP-TEST.vmdk” -t 0 WINXP-TEST-new.vmdk and then rename accordingly.
I receive this error when i try to converter de the disk. could you help-me?
Failed to convert disk: A file was not found (0x4).
please check the path of the disk and vmware-vdiskmanager.exe file. also make sure there is no space between your path and if there is then add your path in quotes
Hi Shabbir,
Trying to merge multiple VMDK produced though VMWARE.
Looking at your list you have a singe VMDK file without extension “-s001,s002,etc” named “vmdkname.vmdk”
vmdkname.vmdk
vmdkname-s001.vmdk
vmdkname-s002.vmdk
vmdkname-s003.vmdk
But the files which the VMWARE convertor produced are just like the below, there is no “”vmdkname.vmdk”
vmdkname-s001.vmdk
vmdkname-s002.vmdk
vmdkname-s003.vmdk
Please can you advise
Jawed Ahmed
Hi jawed,
The example which I have shown in my article is about VMware workstation disks. VMware workstation splits the disk when you create a new VM. But if you want to use them in vSphere then you need to merge them as one for sake of simplicity and limitation of number of disks of a VM in vSphere. I don’t think so convert will do that (split disks). I have understand as per your comments you have two separate disks and trying to merge them which is not possible.
Hi Ahmed,
I try to merge into the same directory as you says me but it’s the same result. The command line is :
F:\VMWare\vmware-vdiskmanager.exe -r “F:\WINXP-TEST\WINXP-TEST.vmdk” -t 0 WINXP-TEST-new.vmdk
The files are :
WINXP-TEST.vmdk 8 Go
WINXP-TEST-000001.vmdk 95 Go
WINXP-TEST-000002.vmdk 6 Go
WINXP-TEST-000003.vmdk 12 Go
…
WINXP-TEST-000024.vmdk 11 Go
I use VMware version 9.0.2 build-1031769
The size of all these files is about 255 Go and the size final of the new vmdk generated must be about 95 Go.
I don’t understand why only the first file is taking for copy.
Thanks for your help.
what is the error? send me screen shot of what you are doing.
There isn’t an error but there isn’t an merging of the 25 files only a copy of the first file. I use the command :
Microsoft Windows [version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. Tous droits réservés.
C:\Users\Utilisateur 1>f:
F:\>cd vmware
F:\VMWare>vmware-vdiskmanager.exe -r “f:\WINXP-TEST\WINXP-TEST.vmdk” -t 0 WINXP-
TEST-new.vmdk
F:\VMWare>
F is an external disk. I have try to install VMware on drive C at the beginning and after on drive F who contains the vm files.
How i do for send a screen shot on the forum ?
Thanks again !
I can’t seem to get this to work. My command:
./vmware-vdiskmanager -k “/home/aaronfranke/vmware/Windows 9/Windows 9.vmdk” -t 2 Windows9.vmdk
and I just get this as output:
Diskname or some other argument is missing.
VMware Virtual Disk Manager – build 3566099.
Usage: vmware-vdiskmanager OPTIONS |
The option should be -t 0
Just to say thanks! I worked perfect