第一步:解压软件包,查看Xen源码包所带的文件; 第二步:配置内核;
linux-2.6-Xen-sparse/arch/Xen/configs/目录下是内核的配置文件,先设置Xen内核配置文件,可以手动,也可以通过命令配置。
第三步:编译和安装Xen;
Xen的编译需要在原有的内核代码上打补丁,这样编译出的Xen内核支持虚拟技术。在编译之前,先将linux内核源码包linux-2.6.16.tar.bz2拷贝到Xen根目录下(否则Xen安装程序将从kernel.org上下载内核linux-2.6.16.tar.bz2进行安装)。
[root@localhost Xen-3.0.2]# make all
[root@localhost Xen-3.0.2]# make install
编译具体方法
第一次编译
# make KERNELS=linux-2.6-Xen all //如果不指定KERNELS,那么将编译两个内核镜像Xen0,XenU,指定KERNELS=linux-2.6-Xen那么将生成一个共用的linux内核镜像vmlinuz-2.6.x-Xen。在Xen-3.0.2默认的是只编译一个共用内核,指定KERNEL=”linux-2.6-Xen0 linux-2.6-XenU”将分别编译出Dom0,DomU内核。
(注意:编译两个内核最好的方法是直接在Makefile文件中设置KERNELS= linux-2.6-Xen0 linux-2.6-XenU)
# make install
重新编译
# make linux-2.6-Xen-config CONFIGMODE=menuconfig (or xconfig)
# make linux-2.6-Xen-build
# make linux-2.6-Xen-install (经测试linux-2.6-Xen-build和linux-2.6-Xen-install编译功能完全相同,只需使用linux-2.6-Xen-install就能满足要求)
如果分两个内核编译那么执行下面的命令
# make linux-2.6-Xen0-config CONFIGMODE=menuconfig (or xconfig)
# make linux-2.6-Xen0-install
# make linux-2.6-XenU-config CONFIGMODE=menuconfig (or xconfig)
# make linux-2.6-XenU-install
为新编译的Xen内核生成ram disk文件
Depending on your config, you may need to use 'mkinitrd' to create an initial ram disk, just like a native system e.g.
# depmod 2.6.16-Xen #2.6.16-Xen是Xen内核版本号
# mkinitrd -v -f --with=aacraid --with=sd_mod -- with=scsi_mod /boot/initrd-2.6.16-Xen.img 2.6.16-Xen
两个内核可以分别制作initrd
配置grub启动项
title Xen 3.0 (XenLinux 2.6)
root (hd0,7)
kernel /boot/Xen-3.0.2.gz
module /boot/vmlinuz-2.6.16-Xen root=LABEL=/12 rhgb quiet selinux=0
module /boot/initrd-2.6.16-Xen.img
转载于:https://blog.51cto.com/charlesxie/734268