Distros
LINUX DISTRIBUTIONS: WHAT TO TEST AFTER PACKAGING
mkinitrd, mkinitramfs and dracut
mkinitrd, mkinitramfs or dracut should be able to generate bootloader entries for Xen, see this page for an example.
Dom0 support in Linux
The Linux kernel packaged with the distribution should be compiled with Xen support, see this page. Booting the machine with Xen and the default kernel should complete successfully.
init scripts: xencommons
Xen relies on an init script called xencommons to initialize all the services. It should be executed by default at boot time.
qemu-xen-traditional and qemu-xen
The two device model binaries Xen relies on should be installed in the location where Xl expect them to be, that by default is /usr/lib/xen/bin, and can be changed modifying tools/libxl/_libxl_paths.h.
Xen udev scripts
The Xen udev scripts should be installed correctly, see /etc/udev/rules.d/xen-backend.rules: after manually creating the default bridge named xenbr0, starting a guest with a vif, the vif should be added to the bridge automatically.
External Links
patch to reduce spurious Xen entries in grub menu
LINUX DISTRIBUTIONS: SUGGESTED CONFIGURATIONS
LVM
Setting up lvm is strongly suggested: storing raw disk images in lvm volumes is the fastest possible configuration as you can exploit the in-kernel disk backend (CONFIG_XEN_BLKDEV_BACKEND in the Linux kernel config).
Then you can use:
disk = [ 'phy:/dev/vol0/lvm_volume0,xvda,w' ]
in your VM config file.
LINUX DISTRIBUTIONS: USER EXPERIENCE
Meta packages
For convenience, a Xen meta-package should be provided that contains the hypervisor, the xen tools and documentation.
Installation
The basic flow of Xen installation should be:
- Install distro;
- Install Xen packages or the Xen meta-package (as part of this the bootloader entries would be updated);
- Update-grub (or equivalent);
- Reboot, and you are ready to go.
Man pages
Xen comes with man pages, see
These should be mader available from within the distro. The source and makefiles for the man pages (and documentation in general) are in xen-unstable.hg/docs