Xen ist ein Softwarepaket zur Virtualisierung eines physikalischen Computers. Dies ist eine kurze Anleitung ohne viele Kommentare und Anspruch auf Vollständigkeit.
Xen anpassen und selbst compilieren notwendige Pakete: libcurl3-dev zlib1g-dev python2.3-dev wget bzip2 Auspacken und Compilieren: tar -xzf xen-2.0-src.tgz cd xen-2.0 make world Die Linux-Kernel v2.4.30 und v2.6.11 werden dabei automatisch heruntergeladen und in einer Standardkonfiguration übersetzt. Kernel anpassen: cd linux-2.6.11-xen0 # oder cd linux-2.6.11-xenU für die Gastsysteme make ARCH=xen menuconfig cd .. make kernels Hinweis: Um wie unten angegeben XFS als Dateisystem in den Gastsystemen zu nutzen, sollte dieses hier aktiviert werden. Einfache Installation notwendige Pakete: libcurl3 bridge-utils python-twisted iproute Auspacken und Installieren: tar xvfz xen-2.0.x-install.tgz cd xen-2.0.x sh install.sh Xen starten Bootmanager (Grub!) anpassen: title Xen 2.0 / XenLinux 2.6.11 kernel /boot/xen.gz dom0_mem=131072 module /boot/vmlinuz-2.6.11-xen0 root=/dev/sda4 ro console=tty0 Nach dem Neustart Xen starten: /etc/init.d/xend start Virtuelle Maschinen anlegen Loop-Devices anlegen (10GB für / und 500MB für swap): dd if=/dev/zero of=guest.root bs=1k count=10M dd if=/dev/zero of=guest.swap bs=1k count=500k mkfs.xfs guest.root mkswap guest.swap Grundsystem auf guest.root installieren: mount -o loop guest.root /mnt debootstrap --include=udev,hotplug,libreadline4,xfsprogs,ssh \ --arch i386 sarge /mnt http://ftp.<countrycode>.debian.org/debian System-Konfiguration editieren: /etc/hostname /etc/fstab /etc/network/interfaces /etc/apt/sources.list Xen 2.0 kann nicht so recht mit TLS, darum: mv /mnt/lib/tls /mnt/lib/tls.disabled Wenn schon die Maschine virtuell ist, kann man deren Konsolen nicht noch virtueller machen. Also, schalten wir das Feature in der /mnt/etc/inittab ab: 1:2345:respawn:/sbin/mingetty tty1 #2:2345:respawn:/sbin/mingetty tty2 #3:2345:respawn:/sbin/mingetty tty3 #4:2345:respawn:/sbin/mingetty tty4 #5:2345:respawn:/sbin/mingetty tty5 #6:2345:respawn:/sbin/mingetty tty6 Xen-Konfiguration erstellen (/etc/xen/guest, wenigstens die fetten Werte sollten angepaßt werden): # -*- mode: python; -*- kernel = "/boot/vmlinuz-2.6.11-xenU" memory = 256 name = "guest" disk = [ 'file:/srv/xen/guest.root,sda1,w','file:/srv/xen/guest.swap,sda2,w' ] hostname = "guest" root = "/dev/sda1 ro" extra = "4" ... und starten: umount /mnt xm create -f guest -c base-config |