使用的系统是linux rhel5.4 先下载相关的文件, xen-4.1.0.tar.gz 这个到www.xen.org可以下载到: http://www.xen.org/products/xen_archives.html 内核源码包: 最新内核取自 git clone git:// git.kernel.org/pub/scm/ linux/kernel/git/jeremy/xen. git l
使用的系统是linux rhel5.4
先下载相关的文件,
xen-4.1.0.tar.gz 这个到www.xen.org可以下载到:http://www.xen.org/products/xen_archives.html
内核源码包:最新内核取自 git clone git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen.git linux-2.6-xen
在asdfasdfzxc的博客中有一个链接,已经包含了xen的版本跟内核的版本,内核版本已经打过补丁,现在用的是他的包。下载地址:http://u.115.com/file/aqppqqc4# xen4.1.zip 。网上有报说,linux将在2.6.39以后的内核中集成xen,以后就省事了
先测试下相应的安装包是否齐全。包解开后,有3个文件,config.txt跟xen包及内核包。
在xen4.1.0下面有一个tools/check/chk脚本,执行 ./chk build 跟./chk install测试
一般来说需要dev86/iasl/python-devel/libX11-devel 等rpm包,可以用yum安装,其中iasl是xen3.4.1里带的
先 安装内核,跟普通的内核编译没什么两样,默认的,我们系统只支持8个loop设备,这里可以修改drivers/block/loop.c 文件的1615行,把 nr = 8 改成 nt = 32以使默认运行32个loop设备,当时也可以在编译内核后/etc/sysctl.conf 配置文件里修改。
cp ../config.txt .config
make oldconfig
make bzImage #编译大内核(如果想编译压缩形式的内核,可以用make zImage
make modules #编译选择的模块
make modules_install #安装刚才编译的模块
make install #把压缩内核映象拷贝/boot目录下,并创建相应的System.map符号链接,调用mkinitrd程序创建内核的initrd映象。
cp -a .config /boot/config-2.6.32.39
编 译xen (在编译stubdom之前,需要下载pciutils-2.2.9.tar.bz2/lwip-1.3.0.tar.gz 等5个包,编译tools之前需要tools/firmware/etherboot/ipxe.tar.gz ,如果是不能联网,请提前准备好)
make -j 12 xen
make -j 12 tools
make -j 12 stubdom
make install-xen
make install-tools
make install-stubdom
下来我们必须修改两个配置文件:
在/etc/fstab中添加
none /proc/xen xenfs defaults 0 0
如果不添加,你的xencommons就不能启动
在/etc/modprobe.conf 中添加
install xen /sbin/modprobe xen-evtchn; /sbin/modprobe xen-netback; /sbin/modprobe xenfs; /sbin/modprobe xen-blkback; /bin/true
ok,最后我们需要修改grub
重启就OK了, 还需要注意的是,启动起来的话,需要首先启动xencommons服务,然后启动xend服务。
留言
張貼留言