设为首页 收藏本站
查看: 1379|回复: 0

[经验分享] ubuntu11.04 安装 xen

[复制链接]

尚未签到

发表于 2016-1-9 13:28:32 | 显示全部楼层 |阅读模式
Ubuntu 11.04(natty) 安装Xen 4.0.1
Posted on 2011-04-29 by Jeoygin in 技术, 虚拟化 Leave a comment

  最近在看Xen 4.0.1的源码,总得编译出来玩玩吧,于是又开始了Xen的编译之旅。去年差不多这个时候也在学习Xen,算是有点经验了,不过之前的一周也真够折腾的,装了多个系统,编译出来的内核不是启动不了Xen就是Xen不正常工作,最后还是用了刚发布的Ubuntu 11.04。编译过程有点挫折,将安装过程记录如下。

我的安装是从网上两篇文章参考的:
1.Xen4.0 – Xen Wiki
2.在 Ubuntu 上源码安装 Xen

一、准备源码

  首先,为系统安装需要的包:

    sudo apt-get install bcc bin86 gawk bridge-utils iproute libcurl3 libcurl4-openssl-dev bzip2 module-init-tools transfig tgif texinfo texlive-latex-base texlive-latex-recommended texlive-fonts-extra texlive-fonts-recommended pciutils-dev mercurial build-essential make gcc g++ libc6-dev zlib1g-dev python python-dev python-twisted libncurses5-dev patch libvncserver-dev libsdl-dev libjpeg62-dev iasl libbz2-dev e2fslibs-dev git-core uuid-dev ocaml libx11-dev bison flex libssl-dev gettext libgcrypt11-dev pkg-config fakeroot crash kexec-tools makedumpfile libncurses5
    sudo apt-get build-dep linux
    apt-get install gcc-multilib
    apt-get install xz-utils

  下载源码:
  Xen 4.0.1: http://bits.xensource.com/oss-xen/release/4.0.1/xen-4.0.1.tar.gz
  Linux Kernel 2.6.38.4: http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.38.4.tar.gz

  还需要下载内核的xen补丁:
  xen-patches-2.6.38-2: http://gentoo-xen-kernel.googlecode.com/files/xen-patches-2.6.38-2.tar.bz2

  将所有包移动到/usr/src后展开各个包:

    sudo tar zxvf linux-2.6.38.4.tar.gz
    sudo tar zxvf xen-4.0.1.tar.gz
    sudo mkdir xen-patches
    cd xen-patches
    tar jxvf ../xen-patches-2.6.38-2.tar.bz2

  进入linux-2.6.38.4目录,打上补丁:

    sudo cat ../xen-patches/*.patch1 | patch -p1

二、编译Xen

    make xen tools stubdom
    make install-xen
    make install-tools PYTHON_PREFIX_ARG=
    make install-stubdom

  在编译的过程中可能会遇到如下问题:

    In file included from tapdisk.h:62:0,
                     from blk_linux.c:4:
    ../lib/blktaplib.h:199:0: error: "WRITE" redefined
    /usr/include/linux/fs.h:160:0: note: this is the location of the previous definition

  这个问题请打补丁:blk_linux.patch1

    netfront.c:41:32: error: variably modified 'tx_freelist' at file scope
    netfront.c:44:34: error: variably modified 'rx_buffers' at file scope
    netfront.c:45:34: error: variably modified 'tx_buffers' at file scope
     
    lib/math.c: In function '__qdivrem':
    lib/math.c:196:9: error: 'tmp.ul[1]' may be used uninitialized in this function
     
    mm.c: In function 'set_readonly':
    mm.c:321:46: error: taking address of expression of type 'void'

  这个问题请打补丁:gcc-4.5.patch1

  如果使用xm命令报以下错误:

    AttributeError: HTTPUnix instance has no attribute 'getresponse'

  请打补丁:xmlrpc.patch1

三、编译内核

  先准备一个编译配置,可以下载我使用的配置.config,执行make menuconfig命令,配置好内核参数后,保存配置文件,之后就可以开始编译了:

    sudo make
    sudo make install
    sudo make modules_install
    sudo update-initramfs -c -k 2.6.38.4
    sudo depmod 2.6.38.4

  将Xen的内核模块加入/etc/modules文件,使系统启动时自动加载:

    sudo vi /etc/modules
    ...
    netbk
    blkbk
    blktap

四、修改grub

  Ubuntu 11.04 使用了Grub2,Grub2与Xen是不兼容的,于是将grub2降级到grub:

    sudo apt-get purge grub-pc
    sudo rm /boot/grub/*
    sudo apt-get install grub
    sudo grub-install --recheck /dev/sda
    sudo update-grub

  手动添加启动菜单,在/boot/grub/menu.lst中添加以下内容:

    title Xen 4.0.1 / Linux 2.6.38.4
    kernel /boot/xen-4.0.gz
    module /boot/vmlinuz-2.6.38.4 root=[root-location] ro cnsole=tty0
    module /boot/initrd.img-2.6.38.4

  重启,不出意外的话xen应该是启动了,可以使用以下命令查看:

    ps -ef | grep xend
    xm list

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-162201-1-1.html 上篇帖子: 在 Xen 下运行 Openfiler 下篇帖子: Linux Xen 基础知识 (转载)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表