В заметке показано как запустить Xen 4.0.0 (dom0) с Linux ядром 2.6.32.10
поверх 64-разрядной сборки Ubuntu 10.04-beta.Устанавливаем необходимые для сборки пакеты:
sudo aptitude install build-essential libncurses5-dev dpkg-dev debhelper fakeroot
Загружаем Linux ядро с dom0-патчами:
sudo -s
cd /usr/src
git clone git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen.git linux-2.6-xen
cd linux-2.6-xen
git checkout -b xen/stable origin/xen/stable
Копируем файл с параметрами конфигурации ядра:
curl http://opennet.ru/soft/xen40_config.txt > /usr/src/linux-2.6-xen/.config
Анализируем различия с базовым файлом конфигурации Ubuntu и при необходимости вносим изменения:
diff /boot/config-2.6.32-17-generic /usr/src/linux-2.6-xen/.config | vim -
Собираем ядро:
make menuconfig # включаем поддержку dom0 и Xen
make
chmod g-s /usr/src -R # для того чтобы избежать ошибки "dpkg-deb: control directory has bad permissions..."
make deb-pkg
Собираем и устанавливаем пакет с ядром, настраиваем initramfs и grub:
dpkg -i ../linux-image*2.6.32.10*.deb
depmod 2.6.32.10
update-initramfs -c -k 2.6.32.10
update-grub
echo "xen-evtchn" >> /etc/modules
Готовим окружение для сборки
apt-get build-dep xen-3.3
aptitude install uuid-dev iasl texinfo
Загружаем Xen
cd /usr/src
hg clone -r 4.0.0 http://xenbits.xensource.com/xen-unstable.hg
cd xen-unstable.hg
Собираем
make xen
make tools
make stubdom
make install-xen
make install-tools PYTHON_PREFIX_ARG=
make install-stubdom
update-rc.d xend defaults 20 21
update-rc.d xendomains defaults 21 20
Настраиваем Grub2 через создание файла /etc/grub.d/40_custom:
#!/bin/sh
exec tail -n +3 $0
menuentry "Xen 4.0.0-rc8 / Ubuntu 10.4 kernel 2.6.32.10 pvops" {
insmod ext2
set root=(hd0,1)
multiboot (hd0,1)/xen-4.0.0.gz dummy=dummy
module (hd0,1)/vmlinuz-2.6.32.10 dummy=dummy root=/dev/mapper/HyperDeskVG01-tcmc-dell-lucid ro
module (hd0,1)/initrd.img-2.6.32.10
}
Не забудьте изменить значение параметра "root=" на корневой раздел текущей системы.
Обновляем параметры Grub:
update-grub
Перезагружаем систему с dom0-ядром:
reboot
Проверяем работает ли Xen:
xm list
xm info
Если нет, пытаемся выполнить:
/etc/init.d/xendomains stop
/etc/init.d/xend stop
/etc/init.d/xend start
/etc/init.d/xendomains start
URL: http://lists.xensource.com/archives/html/xen-users/2010-03/m...
Обсуждается: http://www.opennet.dev/tips/info/2342.shtml