ubuntu 10.10 server on XenServer 5.6 FP1 beta

Well XenServer 5.6 FP1 beta is out.  I decided to finally see what tickets I entered during the 5.6 beta for ubuntu support were added.  Turns out they all were!  However there is at least one new patch needed.

All the requested additions to XenServer for ubuntu support were added for the final release.  This really helped with Grub2 support and easily switching an ubuntu box to PV mode.  There has been a little change to the grub file since 10.04 that requires a patch to one of the python scripts.  Once applied, switching the VM to PV mode is very easy.  If you do not want to edit your python script then you will need to manually specify the kernel files using VM parameters in XS.  Check my older posts for information on that.

  1. Create a new VM in XS and install ubuntu 10.10 server.  I used the Windows 2008 64-bit template.  Currently I have only tested with ext3.  If you install SSH you will have access to the VM even if the console connection does not work.
  2. The console for the DomU in PV mode will be hvc0.  You will need to tell getty to use this.  Copy the existing tty1.conf and edit it to replace “tty1″ with “hvc0″.
    sudo cp /etc/init/tty1.conf /etc/init/hvc0.conf
    sudo nano -w /etc/init/hvc0.conf
  3. Shutdown the VM.
  4. Add the needed support to pygrub for named partitions.  See this debian bug.  The file you are altering is /usr/lib/python2.4/site-packages/grub/GrubConf.py.  The patch is so small that I just manually edited the script.  Make sure to back up your original file.  If you do not want to alter your GrubConf.py script, refer to my older posts to see how to manually specify the kernel.
  5. Retrieve the UUID for the VM. Assuming your VM is named “ubuntu10”:
    xe vm-list name-label=ubuntu10 params=uuid
  6. Retrieve the VBD UUID for the storage attached to the VM.
    xe vm-disk-list uuid=<UUID>
  7. Clear out the HVM boot policy.
    xe vm-param-set uuid=<UUID> HVM-boot-policy=
  8. Set the PV bootloader to pygrub.
    xe vm-param-set uuid=<UUID> PV-bootloader=pygrub
  9. Lastly, set the VBD for the VM to be bootable.
    xe vbd-param-set uuid=<VBD UUID> bootable=true
  10. Boot the VM.  Once you log in it will be time to install the XenTools.  If you receive a message about finding two bootable volumes, see this post.
  11. Attach the xs-tools.iso to the VM and mount the image.  For my install the cdrom showed up as sdd under /dev.
    sudo mount /dev/sdd /mnt
  12. Install the XenServer tools. Make sure you use the proper file for your architecture (x86_64 or i386) is being installed.
    sudo /mnt/Linux/install.sh
  13. Unmount the iso image and then detach it in XenCenter.  If it claims it is in use, skip to the next step.
    sudo umount /mnt
  14. Reboot the VM to complete the XenTools installation.

I’ll be submitting the Debian bug to the FP1 bug list so hopefully it will make it into the final release.  FP1 is based on Xen 3.4.2.

About Adam Oliver

Adam Oliver has been working in the IT field for over 10 years and is a Sales Engineer for Citrix Systems, Inc. Follow Adam on twitter at http://twitter.com/theadamoliver. Find out more about Citrix at www.citrix.com.
This entry was posted in XenServer and tagged , , , . Bookmark the permalink.

8 Responses to ubuntu 10.10 server on XenServer 5.6 FP1 beta

  1. Prashant says:

    Hi Adam,
    Thanks for these notes.
    I remember 10.04 x64 Intel wont work domU. I managed to get a AMD x64 domU working instead.
    For this tutorial, which architecture did you use.


  2. Adam Oliver says:

    I haven’t tried the 10.04 64-bit build. However there is not an Intel 64-bit and AMD 64-bit. Back in the day they used amd64 because AMD had it first. Seems now it is just x86_64. I could probably download the 10.04 iso and give it a try. I will not be able to try against 5.6 release as I only have one XenServer.

  3. Andrea says:


    I’ve just download the XenServer 5.6 FP1.
    The Ubuntu 10.10 (64-bit) now, working fine?



  4. Andrea says:

    Thanks Oliver,

    I have written a simple steps, that you can see here

    Thanks for your info


  5. Braden says:

    Ubuntu 10.04 (32 & 64 bit) are now supported by XenServer (in 5.6 FP1)…. they are experimental but I was able to get them installed with XenTools.

    Does anyone have experience getting the desktop to work (it is cli and when I install the desktop it doesn’t work). Startx gave an error that /dev/fb0 didn’t exist… I tried to use an xorg.conf file and I am being told that there is no device.


    • Adam Oliver says:

      I remember before you had to install VNC and the XenCenter Console would connect that way. I am back on XS 5.6 until XenDesktop 5 is fully compatible with FP1 so I cannot do any testing currently.

      • Adam Oliver says:

        I was just reading some documentation about this. XenCenter will give you the Switch to X Console option at the top right of the Console tab if it finds VNC running on port 5900 at the IP address reported by XenTools. So there should be three things to check.
        1) XenTools reports an IP address.
        2) VNC server is running on the default port of 5900.
        3) There is no firewall blocking port 5900.

  6. Robert Oram says:

    I sucessfully installed Ubunto 10 LTS, both 32 and 64 bit on 5.6 fp1. However, after updating my XenServer to 5.6 sp2, and XenCenter to 6.0, the templates or something seem broken! The new VM seems to be created normally, but when the net install of Ubuntu launches, it fails with weird errors. It looks like the disk partition is not being completed properly. Anyone else had this problem? Is there a fix?


Leave a Reply

Your email address will not be published. Required fields are marked *