Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I am trying to convert a physical server to a virtual one. I know that there are tools for this, but they either cost a lot or have extreme requirements.

I have tried to use Norton Ghost to make a copy of the disk, then restore that copy inside a VM. I made this work, but after I restore it, Windows won't boot. I can boot to a PE disk and verify that the file system is intact, but I think the hard disk drivers for Windows are wrong. The physical server was a Dell PowerEdge 1950 with a SCSI PowerEdge RAID Controller (PERC) 6 card.

Is there a way to add the VM's hard disk drivers to the drive from a Windows PE disk, without booting into Windows? I am using Virtual Server 2005.

I know that I can do it on the physical machine before I take the image, but it is a production machine that I don't want to take a chance with.

EDIT 1: Virtual Server 2005 Migration Toolkit has extreme requirements, because it needs ADS installed. The only time I sucessfully used it I had to build a whole temporary test network around it (a big hassle). There is also System Center's VMMC (very expensive).

When I try to boot the new VM, I see the POST screen, and if I have a bootable CD loaded it will boot to the CD. If not, then the CPU usage drops to 0 and the VM locks up. I have tried to update the hal.dll in the system32 folder, but that didn't fix it.
I think that I need to disable the SCSI driver from the 1950 that is trying to get loaded.
The VM/physical machine that I am converting is running Windows 2003.

share|improve this question
add comment

5 Answers

up vote 2 down vote accepted

Yes.

Most virtualization systems support IDE devices, so replacing the HAL and the Miniport drivers is often enough:

  1. Boot the recovery console
  2. Use EXPAND HAL.DL_ C:\WINDOWS\SYSTEM32
  3. Use EXPAND NTOSKRNL.EX_ C:\WINDOWS\SYSTEM32
  4. Enable the ATAPI driver with ENABLE ATAPI SERVICE_BOOT_START

Note that most virtual machine mangers have some virtual disk driver (VMWare's is called VMSCSI.SYS) that you can simply copy over whatever the system's ATAPI.SYS file.

  5. Disable your old disk drivers (depends on your VM). Try LISTSVC and look for ones marked SERVICE_BOOT_START, for example: DISABLE MYSCSIVENDOR

Of course, if you decided to copy over the virtual disk driver, you could simply copy it over the old disk drivers.

At this point, you should be able to boot your guest up normally.

share|improve this answer
add comment

you could try the P2V product from vizioncore, it is designed to create a VM for VMware but has quite a few useful features and is free to use.

share|improve this answer
add comment

A program that I have been using recently is ShadowProtect Server edition. You can take a hot snapshot of the system to an external disk, then booting from their recovery CD, you do a Hardware Independent Restore. During the wizard, you are prompted to provide drivers for storage devices, pop your RAID/SATA/whatever drivers in there, and off you go.

I've restored servers to workstation class hardware, and vice versa.

ShadowProtect

share|improve this answer
add comment

Have you tried booting your VM to a 2003 setup disk and running a repair setup? Every single P2V I've done has been different, but in one case, this solved it for me.

I've also got to add a vote for the VMWare Converter. I'm runing Hyper-V exclusively and had to use the VMWare for 2 of my P2V conversions, nothing else would work.

share|improve this answer
add comment

What do you mean by "extreme requirements" for conversion? Surely all that is needed on the VM host for the conversion processes is the same requirements for actually running the VM afterwards? Or are you trying to run the VM on the machine you are trying to make the VM out of? (I can imagine the latter making tools refuse to operate).

Also on cost: the official VMWare conversion tool was free (legally free, not free-with-five-fingered-discount) last time I used it IIRC, so I would imagine there is an equivalent tool for vserver that is too.

How far does Windows get through booting? What messages do you get at that point? Any error messages before that point? "Won't boot" covers a great many problems so can only guess without more detail. Also, which version and edition of Windows? Also, more detail about the original hardware and the VM setup might help diagnostics - CPU spec(s)? Number of vCPUs given to the VM? And so on.

It might not be the controller drivers that are the problem: Windows uses a different HAL for single and multi processor setups, and I think for certain other hardware differences too. At least WinNT/2K/XP/2003 do - I have not tinkered in that much detail with Vista/2K8/7. It will respond badly if moved to different hardware (from your physical hardware to the VMs hardware) like this.

Getting Windows to move manually from one hardware platform to another is often no easy feat so you might have to deal with an automated tool irrespective of the requirements, or instead install a free OS into the VM and move the tasks the machine performs over to the VM manually afterwards.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.