2010-03-28

Inject VMware drivers into Source OS before P2V

P2V a machine - who does not want to get rid of all their physical machines to get the rid of the old hardware? If so raise you hand!

So now that we have that out the way - P2V'ing a Windows 2000 Operating System is not always as straight forward as a the other operating systems.

Take into account the following scenario. you have a Windows 2000 SP6 Server running a customized app. You start the Convert process, either using Converter Standalone - or the Guided consolation plug-in. You let the process run - and anything from 45minutes to  hours later - you have a new VM registered in you virtual infrastructure.

Yey! - But - the conversion process - reported as failed somewhere between 97-99%.

The VM - is there so you power on the VM - and BAM! Blue Screen!!!

  • STOP 0x7B INACCESSIBLE_BOOT_DEVICE

or

  • STOP 0x0000007B INACCESSIBLE_BOOT_DEVICE

And of course I could not boot the converted machine.

This brought me to this KB article on VMware's site - which provided this solution
Injecting SCSI controller device drivers into Windows

Before you convert the virtual machine you should perform the following on the source OS.

All Windows Versions (vmscsi only)

To copy the appropriate disk controller driver from a working virtual machine with a Windows guest operating system:

Download the VMware SCSI Disk Controller driver diskette here.

Copy the contents of the floppy either by mounting it or extracting the files

Right-click vmscsi.inf and click Install. The VMware SCSI drivers are installed.

Restart the source machine to complete installation.


Windows XP / 2000 / NT (buslogic and vmscsi)

Find a working VM installed with the same OS. Export these 3 registry keys.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BusLogic

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CriticalDeviceDatabase\
pci#ven_104b&dev_1040

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\vmscsi

(Note
: The vmscsi service registry key may not exist if VMware Tools is not installed on the virtual machine.)

Import these 3 registry keys onto your source machine.

Perform your conversion


Windows 2003 (lsilogic and vmscsi)

Find a working VM installed with the same OS. Export these 3 registry keys.

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\symmpi

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CriticalDeviceDatabase\
    pci#ven_1000&dev_0030

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\vmscsi

    (Note
    : The vmscsi service registry key may not exist if VMware Tools is not installed on the virtual machine.)

    Import the registry keys onto your source machine.

    Restart the source to complete installation.

    Perform another conversion with VMware Converter.

    Now will this be needed every time? No! I have performed many a P2V on all of the above Operating Systems - without any problems at all and without injecting the registry keys beforehand. But for the case that the conversion will fail  - this should help you out immensely.

    Personally -  I would make this best practice and inject the drivers in by default.