Rick Stevens
2007-Feb-07 18:33 UTC
[Fedora-xen] Having issues with Windows 2003 as a guest
System configuration: Opteron 1210, 2GB RAM, Abit motherboard with nVidia chipset, but running "vesa" video driver. I''m trying to get Windows 2003 Server SP2 up and running on Xen as a guest. The installation gets stuck at the blue "Starting Windows" screen. I read somewhere that early in the boot process, at the "Press F6 to install SCSI drivers", I should press F5 instead, then select the HAL version for "Standard PC". All well and good. The problem is that when I use VNC as the console, the system ignores keyboard input, and when I try to switch to SDL, I get no console at all. Needless to say, this is bloody frustrating. Here''s my config file: -------------------------------- CUT HERE ---------------------------- # -*- mode: python; -*- #===========================================================================# Python configuration setup for ''xm create''. # This script sets the parameters used when a domain is created using # ''xm create''. # You use a separate script for each domain you want to create, or # you can set the parameters for the domain on the xm command line. #=========================================================================== import os, re arch = os.uname()[4] if re.search(''64'', arch): arch_libdir = ''lib64'' else: arch_libdir = ''lib'' #---------------------------------------------------------------------------- # Kernel image file. kernel = "/usr/lib/xen/boot/hvmloader" # The domain build function. HVM domain uses ''hvm''. builder=''hvm'' # Initial memory allocation (in megabytes) for the new domain. # # WARNING: Creating a domain with insufficient memory may cause out of # memory errors. The domain needs enough memory to boot kernel # and modules. Allocating less than 32MBs is not recommended. memory = 512 # Shadow pagetable memory for the domain, in MB. # Should be at least 2KB per MB of domain memory, plus a few MB per vcpu. shadow_memory = 8 # A name for your domain. All domains must have different names. name = "win2k3" # 128-bit UUID for the domain. The default behavior is to generate a new UUID # on each call to ''xm create''. #uuid = "06ed00fe-1162-4fc4-b5d8-11993ee4a8b9" #----------------------------------------------------------------------------- # the number of cpus guest platform has, default=1 #vcpus=1 # enable/disable HVM guest PAE, default=0 (disabled) #pae=0 pae=1 # enable/disable HVM guest ACPI, default=0 (disabled) #acpi=0 # enable/disable HVM guest APIC, default=0 (disabled) #apic=0 # List of which CPUS this domain is allowed to use, default Xen picks #cpus = "" # leave to Xen to pick #cpus = "0" # all vcpus run on CPU0 #cpus = "0-3,5,^1" # run on cpus 0,2,3,5 # Optionally define mac and/or bridge for the network interfaces. # Random MACs are assigned if not given. #vif = [ ''type=ioemu, mac=00:16:3e:00:00:11, bridge=xenbr0, model=ne2k_pci'' ] # type=ioemu specify the NIC is an ioemu device not netfront vif = [ ''type=ioemu, bridge=xenbr0'' ] #---------------------------------------------------------------------------- # Define the disk devices you want the domain to have access to, and # what you want them accessible as. # Each disk entry is of the form phy:UNAME,DEV,MODE # where UNAME is the device, DEV is the device name the domain will see, # and MODE is r for read-only, w for read-write. disk = [ ''file:/var/lib/xen/images/win2k3.img,hda,w'', ''phy:/dev/cdrom,hdc:cdrom,r'' ] #---------------------------------------------------------------------------- # Configure the behaviour when a domain exits. There are three ''reasons'' # for a domain to stop: poweroff, reboot, and crash. For each of these you # may specify: # # "destroy", meaning that the domain is cleaned up as normal; # "restart", meaning that a new domain is started in place of the old # one; # "preserve", meaning that no clean-up is done until the domain is # manually destroyed (using xm destroy, for example); or # "rename-restart", meaning that the old domain is not cleaned up, but is # renamed and a new domain started in its place. # # The default is # # on_poweroff = ''destroy'' # on_reboot = ''restart'' # on_crash = ''restart'' # # For backwards compatibility we also support the deprecated option # restart # # restart = ''onreboot'' means on_poweroff = ''destroy'' # on_reboot = ''restart'' # on_crash = ''destroy'' # # restart = ''always'' means on_poweroff = ''restart'' # on_reboot = ''restart'' # on_crash = ''restart'' # # restart = ''never'' means on_poweroff = ''destroy'' # on_reboot = ''destroy'' # on_crash = ''destroy'' #on_poweroff = ''destroy'' #on_reboot = ''restart'' #on_crash = ''restart'' #=========================================================================== # New stuff device_model = ''/usr/'' + arch_libdir + ''/xen/bin/qemu-dm'' #----------------------------------------------------------------------------- # boot on floppy (a), hard disk (c) or CD-ROM (d) # default: hard disk, cd-rom, floppy #boot="cda" boot="dc" #----------------------------------------------------------------------------- # write to temporary files instead of disk image files #snapshot=1 #---------------------------------------------------------------------------- # enable SDL library for graphics, default = 0 # Crikey, VNC''s not working, let''s try SDL. #sdl=0 sdl=1 #---------------------------------------------------------------------------- # enable VNC library for graphics, default = 1 # For now, we''re trying SDL #vnc=1 vnc=0 #---------------------------------------------------------------------------- # address that should be listened on for the VNC server if vnc is set. # default is to use ''vnc-listen'' setting from /etc/xen/xend-config.sxp #vnclisten="127.0.0.1" #---------------------------------------------------------------------------- # set VNC display number, default = domid #vncdisplay=1 #---------------------------------------------------------------------------- # try to find an unused port for the VNC server, default = 1 vncunused=1 #---------------------------------------------------------------------------- # enable spawning vncviewer for domain''s console # (only valid when vnc=1), default = 0 vncconsole=0 #---------------------------------------------------------------------------- # set password for domain''s VNC console # default is depents on vncpasswd in xend-config.sxp vncpasswd='''' #---------------------------------------------------------------------------- # no graphics, use serial port #nographic=0 #---------------------------------------------------------------------------- # enable stdvga, default = 0 (use cirrus logic device model) stdvga=0 #----------------------------------------------------------------------------- # serial port re-direct to pty deivce, /dev/pts/n # then xm console or minicom can connect #serial=''pty'' #----------------------------------------------------------------------------- # enable sound card support, [sb16|es1370|all|..,..], default none #soundhw=''sb16'' #----------------------------------------------------------------------------- # set the real time clock to local time [default=0 i.e. set to utc] #localtime=1 #----------------------------------------------------------------------------- # start in full screen #full-screen=1 #----------------------------------------------------------------------------- # Enable USB support (specific devices specified at runtime through the # monitor window) #usb=1 # Enable USB mouse support (only enable one of the following, `mouse'' for # PS/2 protocol relative mouse, `tablet'' for # absolute mouse) #usbdevice=''mouse'' #usbdevice=''tablet'' -------------------------------- CUT HERE ---------------------------- Any help will be GREATLY appreciated and you''ll win major good karma points! ---------------------------------------------------------------------- - Rick Stevens, Senior Systems Engineer rstevens@vitalstream.com - - VitalStream, Inc. http://www.vitalstream.com - - - - BASIC is the Computer Science version of `Scientific Creationism'' - ----------------------------------------------------------------------