一、    准备工作

a)    一台计算机(是否支持intel-VT或AMD-V均可)

注:支持intel-VT或AMD-V技术可以实现全虚拟化(full virtualization),不支持的话只能实现半虚拟化(para-virtualization)。
支持intel-vt的cpu型号:http://ark.intel.com/VTList.aspx    
支持amd-v的cpu型号:http://nforcex.blogbus.com/logs/8039294.html
注2:查看cpu信息:# cat /proc/cpuinfo,从中能够查看cpu的基本信息,包括型号等;查看cpu使用何种虚拟化技术:# lscpu,其中有一项virtualization type注明了使用的虚拟化技术。
注3:若当前主机的cpu支持虚拟化技术,但在lscpu的virtualization type项显示“none”,这表示你的cpu的虚拟化技术没有启用。启用虚拟化技术的方法是重启主机并进入BIOS,找到virtualization technology或类似项并enable。

b)    CentOS 6.0的iso安装文件,minimal版本即可,下载地址:

http://www.centos.org/modules/tinycontent/index.php?id=30

c)    Xen 4.1的tarball,最新版本是4.1.2,下载地址:

d)    http://www.xen.org/products/xen_archives.html

e)    linux-3.0 kernel的tarball,最新版本是3.0.4,下载地址:

http://www.kernel.org/

f)    acpica的tarball,下载地址:

http://www.acpica.org/downloads/

g)    dev86的rpm包,下载地址

i.    x86_64: ftp://mirror.switch.ch/pool/2/mirror/fedora/linux/development/rawhide/x86_64/os/Packages/dev86-0.16.18-1.fc15.x86_64.rpm

ii.    i386:ftp://ftp.funet.fi/pub/mirrors/ftp.redhat.com/redhat/linux/9/en/os/i386/RedHat/RPMS/dev86-0.16.3-8.i386.rpm

iii.    i586 ftp://ftp.pbone.net/mirror/carroll.cac.psu.edu/pub/linux/distributions/mandrakelinux/official/10.0/i586/Mandrake/RPMS/dev86-0.16.3-2mdk.i586.rpm

iv.    i686

二、    安装CentOS 6.0

图形化的安装界面,只要按照提示进行设置即可。这里值得注意的是存储布局的配置。假设所有虚拟机镜像都存储在本地存储中,则需要至少3个逻辑分区:

a)    主目录分区,建议15G以上,挂载到”/”目录。

b)    Swap分区,根据内存大小分配。

c)    存储虚拟机镜像的分区。

三、    安装依赖软件(dependencies)

a)    升级yum

# yum update

b)    安装一些基本软件,比如wget、lrzsz(如果使用secureCRT的话)等等

# yum –y install wget lrzsz

c)    安装一些xen所依赖的包

i.    # yum –y install transfig tetex-latex ocaml ocaml-findlib hmaccalc ncurses-devel zlib-devel openssl-devel python-devel bridge-utils libtool-ltdl iasl xorg-x11-drv-evdev xorg-x11-drv-fbdev xorg-x11-drv-i810-devel xorg-x11-drv-via-devel xorg-x11-proto-devel xorg-x11-server-sdk xorg-x11-xtrans-devel libuuid-devel readline-devel gcc gcc-gfortran gcc-c++ flex pcre-devel blas-devel lapack-devel curl-devel bison gperf gnuplot texinfo-tex tetex-dvips

ii.    安装刚才下载的dev86的rpm

# rpm - i [包名].rpm

d)    安装“开发工具”组 # yum groupinstall “Development Tools”

# yum –y groupinstall “Development Tools”

e)    编译安装acpica

i.    进入compiler目录

# cd /acpica/compiler

ii.    编译安装

# make&&make install

四、    安装Xen

a)    解压缩tarball

# tar zxvf xen-4.1.x.tar.gz

b)    编译安装

i.    # cd xen-4.1.x/

ii.    # make world && make install

c)    将xen加入到启动脚本

i.    # chkconfig --add xencommons

ii.    # chkconfig –add xend

iii.    # chkconfig –add xendomains

iv.    # chkconfig xencommons on

v.    # chkconfig xend on

vi.    # chkconfig xendomains on

注:一定要按照上述顺序,xencommons必须在xend之前启动

五、    安装3.0内核

a)    解压缩linux-3.0.x的tarball

# tar jxvf linux-3.0.x.tar.gz

b)    安装配置

i.    # cd linux-3.0.0

ii.    # make menuconfig

iii.    进入一个菜单界面,选择Device Drivers --> Xen driver support,并将所有项目都勾选成[*](用空格键勾选),保存,退出。

iv.    # make&&make modules&&make modules_install&&make install&&depmod 3.0.x

注:32位系统上安装会出现一个i2e_core的错误,但这不影响dom0的启动。

六、    设置Grub

a)    # vi /boot/grub/menu.lst

b)    更改之前的内容大致如下(以2.6.32为例)

……

default=1

timeout=5

splashp_w_picpath=(hd0,0)/boot/grub/splash.xpm.gz

hiddenmenu

title CentOS Linux (3.0.4)

……

title CentOS Linux (2.6.32-71.29.1.el6.x86_64)

root (hd0,0)

kernel /boot/vmlinuz-2.6.32-71.29.1.el6.x86_64 ro root=UUID=ab9d8f92-40ce-476e-abc2-14489517db94 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us crashkernel=auto rhgb quiet

initrd /boot/initramfs-2.6.32-71.29.1.el6.x86_64.img

……

c)    更改后的内容如下,注意红色字体

……

default=0

timeout=5

splashp_w_picpath=(hd0,0)/boot/grub/splash.xpm.gz

hiddenmenu

title CentOS Linux (3.0.4)

root (hd0,0)

kernel /boot/xen-4.1.1.gz

module /boot/vmlinuz-3.0.4 ro root=UUID=ab9d8f92-40ce-476e-abc2-14489517db94 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us crashkernel=auto rhgb quiet

module /boot/initramfs-3.0.4.img

title CentOS Linux (2.6.32-71.29.1.el6.x86_64)

……

P.S. 总的来说,就是将默认启动项变成新安装的3.0内核,并将3.0内核的kernel从vmlinuz换做xen,而选来的vmlinuz变成一个module,下面这个.img文件也变成一个module。
    P.P.S 在改grub之前最好先备份一下,这样改残了还可以重新从备份那个文件重新改一次。

七、    完工验收

a)    重启

# reboot

b)    查看dom0是否运行# xm list

c)    如果你看见下面的内容,说明xen的安装启动成功了

Name        ID  Mem   VCPUs   State   Time(s)

Domain-0     0   6195     8     r-----   8449.4

八、    参考内容

a)    《centos6.0编译安装xen-4.1+linux3.0》

http://singlegod.blog.51cto.com/1909710/675330

b)    Xen4.1 Release Notes

http://wiki.xen.org/xenwiki/Xen4.1?highlight=(xen%204.1)

转载于:https://blog.51cto.com/dchampion/715095

CentOS6下Xen 4.1的安装(编译linux3.0内核)相关推荐

  1. win10下llvm的源码安装编译

    win10下llvm的源码安装编译 1.下载llvm源码 2.下载安装cmake 你好!如需转载请标明本文出处. 1.下载llvm源码 下载llvm源码:https://github.com/llvm ...

  2. Linux下的Ubuntu系统下载安装python3.9.0

    在安装python3.9.0之前,首先要进行换源,这样才能防止下载过慢的情况. 我这里换的是阿里云的镜像源,在终端输入一下命令. 其他镜像源可以查看:https://www.myfreax.com/u ...

  3. linux环境下(SUSE 11)安装ArcSDE 10.0 的注意事项(Oracle 11g)

    写在前面的话 在学习安装ArcSDE之前,我想大多数人和我一样对ArcSDE的了解是建立在文字概念上的," ArcSDE,即数据通路,是ArcGIS的空间数据引擎,它是在关系数据库管理系统( ...

  4. Tiny210 编译Linux3.0.8

    一.编译内核 cp mini210-tvp5150_linux_deconfig .config make 没有出现错误,烧到板上,12寸屏不能显示,修改LCD参数为屏的参数,在arch/arm/ma ...

  5. 编译3.0的linux内核,Ubuntu 编译 Linux 3.0-rc4 内核

    Linux 内核经过漫长的 2.6 版本之后终于主版本+1了,现在已放出 3.0 RC4 版,最近又有消息称 3.0 会比 2.6.39 快,喜欢折腾的你又不介意当小白鼠的话不妨试试下载 Linux ...

  6. linux系统乌班图18.04安装xenomai3.1,内核4.9.38

    乌班图18.04安装xenomai3.1,内核4.9.38 乌班图系统:18.04 xenomai版本:3.1 linux内核:4.9.38 乌班图18.04安装xenomai3.1,内核4.9.38 ...

  7. 编译小米4的linux内核,初次编译 linux kernel 3.0 内核

    第一次编译 内核,在网络上找了教程-于是就怀着玩玩的 当时的想法是能够进入系统就不错鸟--- 现在用着这个 3.0 的内核,一个字--爽.比之前系统自带的内核快多了--比如打开 LibreOffice ...

  8. CentOS6.9下手动编译并安装Python3.7.0

    CentOS6.9默认安装的python版本为2.6.6,若想安装python3以上版本,只能手工编译安装 下面介绍Python-3.7.0版本的手动编译并安装的步骤 1.下载Python-3.7.0 ...

  9. mysql 5.5 编译安装教程,Centos6下mysql 5.5.* 编译安装步骤详解

    MySQL5.5的源码编译采用cmake,与此前的版本有所区别,下面是一次完整的编译安装过程: 1.下载 wget http://dev.mysql.com/get/Downloads/MySQL-5 ...

最新文章

  1. 不看不知道 Vista回收站暗藏的大秘密
  2. 2020科目一考试口诀_科目一考试口诀,看完少练超多题,需要轻松备考的学员请收藏!...
  3. isfull mysql_MySQL数据库之MySQL 出现 The table is full 的解决方法
  4. iApp对接hybbs社区APP源码
  5. tpch测试mysql_MySQL数据库之MySQL-tpch 测试工具简要手册
  6. 两台usrp实现收发_选购光纤收发器时应该注意哪些事项?
  7. 外螺纹对照表_常用螺纹规范对照表
  8. DSP2812入门3——硬件设计
  9. 华为android贡献度,米粉别不信,华为对安卓系统的贡献比小米更多
  10. 小米手机v3.exo 合并_Android 3.0预览版SDK已发布,eXo启动了Elastic Beanstalk的IDE
  11. 以太网rxp rxn txp txn
  12. 诺亚方舟售票系统V4版本了
  13. 华为浏览器html页样式没了,华为TE40web页面无发登录如何解决?
  14. 我的CSDN现在没有C币,没办法下载
  15. Qt操作SQLite数据库——创建、打开、关闭、增加、删除和修改操作
  16. 引导方法深度补全系列—基于SPN模型—1—《Depth estimation via affinity learned with convolutional spatial propagat》文章细读
  17. h5基于canvas的凹凸拼图碎片生成
  18. 双碳丨碳库、碳平衡、温室气体、碳循环等多领域监测与模拟
  19. 台湾燃太TN905/TN901模块的使用及驱动程序
  20. 华为云CDN助力企业抢占先机

热门文章

  1. java hs_err 路径_JVM致命错误日志(hs_err_pid.log)解读
  2. java 读取数据库输出_java 读取数据库数据转化输出XML输出在jsp页面
  3. 插件代码_我们开源了一款 SonarQube iOS 代码扫描插件
  4. 液压支架销轴力学计算分析研究_技术 | 篦冷机液压管路问题分析及改造措施
  5. Linux计算内存,正确计算linux系统内存使用率
  6. vue 指令 v-on
  7. Flink AggOperator 增量聚合函数
  8. javascript window alert
  9. CUDA C编程权威指南 第八章 多GPU编程
  10. pencv candy边缘检测