ubuntu 9.10上(linux 2.6.33.1内核)安装xen3.4.2
发表于 : 2010-04-03 21:54
经过半个月的努力,终于在ubuntu 9.10上,编译了最新的linux 2.6.33.1和最新的xen 3.4.2,成功的用xen虚拟化内核。
自从ubuntu 9.10出来之后,很多人尝试安装xen,都没有成功,原因有很多。
我综合了各种版本,总结出了一个教程。(教程是死的,很多情况未必能完全覆盖到,如果按照以下教程出了问题,可以一起讨论)
首先,安装ubuntu 9.10,我用的9.10 server版,(desktop版也应该可以安装)安装过程省略,这个比较简单。
安装完成后,以下我用root登陆,拥有最高权限,所有命令不加sudo。
1.complie xen hypervisor 编译xen
apt-get install libx11-dev gettext bin86 texinfo bcc bridge-utils build-essential zlib1g-dev libncurses5-dev python-dev gawk mercurial libssl-dev libcurl4-openssl-dev
cd /usr/src
wget http://bits.xensource.com/oss-xen/relea ... 4.2.tar.gz
tar -xzf xen-3.4.2.tar.gz
wget http://www.bltweb.net/patches/xen-3.4.2-ubuntu.patch
cd xen-3.4.2
patch -p1 < ../xen-ubuntu.patch
make dist-xen dist-tools dist-stubdom
make install-xen install-tools install-stubdom
2.complie xen kernel 编译xen化的内核
cd ../
wget http://www.kernel.org/pub/linux/kernel/ ... .1.tar.bz2
tar -xjf linux-2.6.33.1.tar.bz2
mv linux-2.6.33.1 linux-2.6.33.1-xen0-amd64
wget http://gentoo-xen-kernel.googlecode.com ... -1.tar.bz2
mkdir xenpatches-v1_2.6.33.1
cd xenpatches-v1_2.6.33.1
tar -xjf ../xen-patches-2.6.33-1.tar.bz2
cd ../
cd linux-2.6.33.1-xen0-amd64
for i in `ls ../xenpatches-v1_2.6.33.1/`; do patch -p1 < ../xenpatches-v1_2.6.33.1/"$i"; done
cp /boot/config-2.6.31-14-server .config
make menuconfig
make
make install
make modules_install
mkinitramfs -o /boot/initrd.img-2.6.33.1-xen0-amd64 2.6.33.1-xen0-amd64
3.update grub 升级grub(ubuntu9.10使用了grub2,虽然grub2在很多地方有了不错的长进,但是grub2是不兼容xen的,以下是手动编写grub启动项,不想手动的人就降级到grub,这是个难点)
vi /etc/modules
vi /etc/grub.d/40_custom
vi /etc/grub/grub.cfg
vi /etc/default/grub
update-grub
编译的整个过程需要3-4小时,需要耐心。
PS:有问题可以直接和本人讨论。
自从ubuntu 9.10出来之后,很多人尝试安装xen,都没有成功,原因有很多。
我综合了各种版本,总结出了一个教程。(教程是死的,很多情况未必能完全覆盖到,如果按照以下教程出了问题,可以一起讨论)
首先,安装ubuntu 9.10,我用的9.10 server版,(desktop版也应该可以安装)安装过程省略,这个比较简单。
安装完成后,以下我用root登陆,拥有最高权限,所有命令不加sudo。
1.complie xen hypervisor 编译xen
apt-get install libx11-dev gettext bin86 texinfo bcc bridge-utils build-essential zlib1g-dev libncurses5-dev python-dev gawk mercurial libssl-dev libcurl4-openssl-dev
cd /usr/src
wget http://bits.xensource.com/oss-xen/relea ... 4.2.tar.gz
tar -xzf xen-3.4.2.tar.gz
wget http://www.bltweb.net/patches/xen-3.4.2-ubuntu.patch
cd xen-3.4.2
patch -p1 < ../xen-ubuntu.patch
make dist-xen dist-tools dist-stubdom
make install-xen install-tools install-stubdom
2.complie xen kernel 编译xen化的内核
cd ../
wget http://www.kernel.org/pub/linux/kernel/ ... .1.tar.bz2
tar -xjf linux-2.6.33.1.tar.bz2
mv linux-2.6.33.1 linux-2.6.33.1-xen0-amd64
wget http://gentoo-xen-kernel.googlecode.com ... -1.tar.bz2
mkdir xenpatches-v1_2.6.33.1
cd xenpatches-v1_2.6.33.1
tar -xjf ../xen-patches-2.6.33-1.tar.bz2
cd ../
cd linux-2.6.33.1-xen0-amd64
for i in `ls ../xenpatches-v1_2.6.33.1/`; do patch -p1 < ../xenpatches-v1_2.6.33.1/"$i"; done
cp /boot/config-2.6.31-14-server .config
make menuconfig
make
make install
make modules_install
mkinitramfs -o /boot/initrd.img-2.6.33.1-xen0-amd64 2.6.33.1-xen0-amd64
3.update grub 升级grub(ubuntu9.10使用了grub2,虽然grub2在很多地方有了不错的长进,但是grub2是不兼容xen的,以下是手动编写grub启动项,不想手动的人就降级到grub,这是个难点)
vi /etc/modules
vi /etc/grub.d/40_custom
vi /etc/grub/grub.cfg
vi /etc/default/grub
update-grub
编译的整个过程需要3-4小时,需要耐心。
PS:有问题可以直接和本人讨论。