Is it possible to convert a VMWare vmdk image file to physical hardisk drive? I know VMWare 6.5 can use physical harddisk drive directly to get good performance, can I convert an existing vmdk file to physical harddisk drive go gain better performance?
If you have qemu-img, you should be able to do all of this from a command line dealing just with image files.
That will write out whatever raw format the vmdk was out to a physical drive. Its better to use copy-on-write FS for this. Make sure that all source data allocated within first N Gb to fit the target disk of N-Gb size.
A bit late, but for reference I have successfully:
You didn't mention what OS you're using and Alex's answer will not work on Windows and someone asked how to do this on Windows in the comments, so here's how:
You should use Cygwin to be able to use
dd
and accomplish the task.Download and install Cygwin from here: http://www.cygwin.com/
Open Cygwin terminal as Administrator and type in:
You can see all your hard disks with their partitions. The numbers indicate the partitions.
X in sdX is the drive that you want to write to. But remember it's different to Windows' drive letters. Don't mix them up!
status=progress will show you a progress line of dd.
bs=256k is block size (cache), you can use bs=4M for today hard disks but I am using 256k since I'm wring to a USB thumb drive.
Note: Beware that if the source machine is Windows 10,
dd
may not be compatible with converting the VMDK to RAW(disk), some similar situation reported here.More info and commands on qemu-img here if you want to make sure it's not possible on Windows: https://cloudbase.it/qemu-img-windows/
Have you tried booting into a BartPE cd (i.e. UltimateP2V ) and using Ghost? You'll probably run into driver problems once it gets on the hardware but, those are easy enough to deal with (in theory, lol).
If you want to create your own P2V (V2V, V2P, etc) disk check out Mike Laverick's write up (its the best): http://www.rtfm-ed.co.uk/docs/vmwdocs/whitepaper-ultimateP2V.pdf
Try UDPCast
The idea is to stream the whole your vmdk out of it's Virtual Machine to physical machine, where it is written to the physical hdd.
Procedure is outlined below.
Since you have a vmdk file, you might have a VMWare Workstation at your disposal, even complete Virtual Machine this vmdk is attached to. Run your Virtual Machine with this particular vmdk attached, but instead of ordinary boot use PartedMagic liveCD to boot from.
When liveCD is started, navigate to main menu and find the
UDPCast Disk Cloning
. Its dialogs are self-explanatory (see the screenshot)After selecting this Virtual Machine to be the
sender
, you should select which drive you want to broadcast (using Unix notation, like /dev/sda).After you've started the
sender
, you need to startreceiver
as well. Since you have a physical hdd, I'm assuming, you also have a complete PC with this hdd attached to it. Same thing here: you need to start liveCD withUDPCast Disk Cloning
selectingreceiver
this time as well as appropriate physical hdd.Worth noting, that you should make all the necessary arrangements to have network connectivity between your Virtual Machine and physical hardware. You should take necessary precautions if your vmdk contains private data, since its contents would be effectively streaming over your network. Another thing is that your target hdd should have no less storage capacity, than your vmdk's capacity. It is obvious, but also worth noting that your image is laid out one-to-one on your target hdd and you need to perform suitable operations with gparted or the like to make use of greater capacity of your new hdd.
Mount the drive in a VM or however, and snapshot it (www.drivesnapshot.de). Then mount the raw disk in a VM and restore the snapshot onto the disk. That will transfer the drive sector by sector. In Linux I think you can use dd to do the same thing.
Isn't use of physical disks for VM volumes deprecated in VMWare these days?
JR