I had to install Xen para-virtualized openSUSE 11.2 (PVM), lucky for me 11.2 DVD iso has broken xen kernel so it does not install, the live CDs do not have any xen kernel at all so they are not useful either. After reading up all the posts on the bugzilla and forums about the subject, found the way to get it done, here is a howto for anyone else who is looking for the solution.
1. Set up http installation source
Install web-server pattern from yast to install apache2 in Dom0
Edit apache configuration /etc/apache2/default-server.conf to follow symlinks, it should look something like this:
#Options none
Options Indexes FollowSymLinks
Mount the DVD iso and copy all the files to your webserver root.
mount openSUSE-11.2-DVD-i586.iso /mnt -o loop
mkdir -p /srv/www/htdocs/suse-11.2
cp -ar /mnt/* /srv/www/htdocs/suse-11.2/
cd /srv/www/htdocs/suse-11.2/boot/i386/
rm *-xen*
wget http://download.opensuse.org/distribution/11.2/repo/oss/boot/i386/initrd-xen
wget http://download.opensuse.org/distribution/11.2/repo/oss/boot/i386/vmlinuz-xen
ln -s initrd-xen initrd-xenpae
ln -s vmlinuz-xen vmlinuz-xenpae
cd /srv/www/htdocs/
wget http://download.opensuse.org/update/11.2/rpm/i586/kernel-xen-2.6.31.12-0.1.1.i586.rpm (or the latest)
mv kernel-xen-2.6.31.12-0.1.1.i586.rpm kx.rpm
rcapache2 start
2. Start installation via “yast2 vm-install”, select para-virtualization and as installation source use http://dom0IP/suse-11.2/
3. The hack part:
When the install is about 80%Â or “Stop” the reboot after the completion of first stage install, switch to tty2 by using “Sendkey > ctrl+alt+F2”.
chroot /mnt
rpm -Uvh http://dom0IP/kx.rpm –force
Reboot and let the install run its course, at the end of it there should be working domU
Edit: If you have fast internet connection available during install, add the update repository as “Addon product”, with that in place the above hack will not be necessary.
Edit2: If the image still don’t boot, mount the disk image to edit grub’s menu.lst:
mount -o loop,offset=32256 /full/path/to/image/disk0 /mnt
cd /mnt
ln -s vmlinuz-….-xen vmlinuz-xen
ln -s initrd-…..-xen.img initrd-xen
vi /mnt/grub/menu.lst #to look like below:
title XEN
root (hd0,0)
kernel /vmlinuz-xen root=…..
initrd /initrd-xen