Hello,
The .vmx file is dynamically generated when a reservation is made. Your original .vmx file created when you made the base image isn't used. The VCL VMware code does not currently support 64-bit images and sets guestOS=winxppro in the .vmx file for all XP images regardless of the architecture.

Windows XP is one of the OS's that VMware uses different adapter types based on the architecture -- vlance for 32-bit and e1000 for 64-bit. I think the problem is occurring because the .vmx file contains guestOS=winxppro when the image is loaded and the VM is turned on. VMware creates a vlance Ethernet adapter because of this. Sysprep minisetup then runs and attempts to install drivers for all of the hardware it finds but fails to find a 64-bit vlance driver.

Try the following as a test:
-Make an imaging reservation for the 64-bit XP image (this causes the hard drive to be set to persistent mode so you don't lose changes when the VM is rebooted)
-Wait for the reservation to fail
-Shut down the VM
-Edit the .vmx file and change guestOS to winxppro-64
-Boot the VM, can Windows detect and automatically install a driver for the 
adapter?

You can also try to manually re-run Sysprep after changing the guestOS line:
-Copy C:\cygwin\home\root\VCL\Utilities\Sysprep to C:\Sysprep
-Copy C:\cygwin\home\root\VCL\Drivers to C:\Sysprep\Drivers
-Run C:\Sysprep\sysprep.exe /quiet /reseal /mini /reboot
-Does Sysprep install the correct driver for the adapter?

If changing the guestOS line in the .vmx file fixes the problem, you can edit the code so that guestOS gets set to winxppro-64 when a reservation is made:
-Edit /usr/local/vcl/lib/VCL/Module/Provisioning/vmware.pm
-Find: $guestOS = "winxppro" if ($requestedimagename =~ /(winxp)/i);
-Change it to: $guestOS = "winxppro-64" if ($requestedimagename =~ /(winxp)/i);
-Restart vcld
-Try to make a reservation

This will obviously cause 32-bit XP VMs to break. I don't have a 64-bit XP image to test with but if you can figure out what changes need to be made to the .vmx file, I can create a patch with a more elaborate change to vmware.pm to account for both 32-bit and 64-bit versions of XP.

-Andy




Alexander Patterson wrote:
Hello,

Just wanted to know with the VCL system, how are you getting Windows XP 64
bit to work correctly.
When I load up bridged network drivers I get Intel 1000 Drivers installed
because those are the 64 Bit Drivers.
The VMX file says it's Windows XP 64 Bit
When I go to load up my images they will never boot. When I load into the
machine to see why; it is due to the network driver not being installed.
The network is isntalled and working fine when I load it Vmware Server on
the blade.
When the VM guest is loaded up, it changes over to Other Operating system
and never installs the correct drivers.
I have already tired to manually changing the VMX file for Windows XP 64 Bit
network drivers.

ethernet0.virtualDev = "e1000" is the default and after the machine boots,
It ask to install the network drivers on the blade as it loads and never
boots in the system.

New Hardware found Ethernet controllers

I have tired and change to "e1000". 'ethernet0.virtualDev = "vlance"
'ethernet0.virtualDev = "vmx" Says not a 64 Bit Driver ect.

How is everyone else doing this?
-Alex

Reply via email to