Xen

Introduction
Xen is a virtual machine monitor for x86 that supports execution of multiple guest operating systems with unprecedented levels of performance and resource isolation.

Links

 * Xen.org
 * User's Manual
 * Wiki Xen
 * Wiki Xen em português

Installation
Download the RPM files for your Linux distro at http://www.xen.org/download/.

Below the installation instructions for OpenSuse:

error: Failed dependencies: bridge-utils is needed by xen-tools-3.2.0-0xs.osuse10.i586 multipath-tools is needed by xen-tools-3.2.0-0xs.osuse10.i586 python-curses is needed by xen-tools-3.2.0-0xs.osuse10.i586 pyxml is needed by xen-tools-3.2.0-0xs.osuse10.i586
 * 1) rpm -i xen-3.2.0-0xs.osuse10.i586.rpm
 * 2) rpm -i xen-doc-pdf-3.2.0-0xs.osuse10.i586.rpm
 * 3) rpm -i xen-libs-3.2.0-0xs.osuse10.i586.rpm
 * 4) rpm -i xen-tools-3.2.0-0xs.osuse10.i586.rpm
 * 1) rpm -i xen-tools-3.2.0-0xs.osuse10.i586.rpm

Note: In the case above, it was necessary to install the missing packages from Yast Control Center.

Pdf files can be found under.

Compiling Xen from source
Unpack the tarball with the lastest version of Xen.

$ tar xyvf xen-3.2.0.tar.gz

Certify that you have installed the Mercurial packages version up to 0.95. If not go to the Mercurial website and install the latest version.

Now in the same level of the extracted directory with the Xen source code, clone the source code of the linux version 2.6.18:

$ hg clone http://xenbits.xensource.com/linux-2.6.18-xen.hg destination directory: linux-2.6.18-xen.hg requesting all changes adding changesets adding manifests adding file changes added 441 changesets with 22294 changes to 20817 files 20806 files updated, 0 files merged, 0 files removed, 0 files unresolved

If something goes wrong it is better to make a copy of this directory to somewhere:

$ cp linux-2.6.18-xen.hg/ bkp_linux-2.6.18-xen.hg

Before compiling XEN, certify that some Python packages are installed like:


 * python
 * python-curses
 * python-devel
 * pyopenssl
 * pythonpam
 * python-sip
 * python-tk
 * python-xml
 * pyxml

Other important packages are
 * pciutils-devel
 * fig2dev

Now you can compile Xen:

$ cd xen-3.2.0 $ make prep-kernels KERNELS="linux-2.6-xen0 linux-2.6-xenU" $ make world KERNELS="linux-2.6-xen0 linux-2.6-xenU"

Install it:

$ cd dist $ ./install.sh

Depending on your config, you may need to use 'mkinitrd' to create an initial ram disk, just like a native system e.g. $ depmod 2.6.18.8-xen0 $ mkinitrd -v -f --with=aacraid --with=sd_mod --with=scsi_mod initrd-2.6.18.8-xen.img 2.6.18.8-xen

If you use OpenSuse execute the following command after the command depmod:

$ mkinitrd -v -f -u

Now, you have to insert the following lines in the file :

title Xen 3.2 / XenLinux 2.6.18.8 root (hd0,5) kernel /boot/xen-3.2.gz dom0_mem=262144 module /boot/vmlinuz-2.6.18.8-xen0 root=/dev/disk/by-id/scsi-SATA_SAMSUNG_HD501LJS0MUJ1NP929091-part6 console=tty0 initrd /boot/initrd-2.6.18.8-xen0