热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

在Ubuntu10.10系统中安装xen4.0.1虚拟机

官方ubuntu10.10desktop版不支持xen,所以安装起来相对比较麻烦,但是xen对于虚拟化的研究以及云计算来说还是很有帮助的。本人也是经历了一系列痛苦,将此文章交与后来人,希望在安装xen的时候可以走更少的弯路。一,在安装之前,有几点注意的地方:1,你

     官方ubuntu 10.10 desktop版不支持xen,所以安装起来相对比较麻烦,但是xen对于虚拟化的研究以及云计算来说还是很有帮助的。本人也是经历了一系列痛苦,将此文章交与后来人,希望在安装xen的时候可以走更少的弯路。

     一,在安装之前,有几点注意的地方:

     1,你的物理机,开机时请修改bios之中的security选项,本人及其HP,在默认的时候是将Intel-VT功能disable的。开机,进入bios。选择security选项,然后把关于Intel-VT的全部选择enable。

     2,你的ubuntu10.10Desktop(64bit)在安装的时候,尽量把文件系统选择为ext3,因为现在的ext4系统xen支持的不好,有时候会报错。

     3,grub2请降成grub1。当你安装好ubuntu10.10Desktop版之后,输入如下命令: 

     
#sudo apt-get purge grub-pc
#sudo rm /boot/grub/*
#sudo apt-get install grub
#sudo grub-install --recheck /dev/sda
#sudo update-grub
#sudo vi /boot/grub/menu.lst

     二,xen安装步骤: 

     1,网络管理工具,禁用网络管理器,然后修改,重启。 

    
#chkconfig network-manager off
#gedit /etc/network/interfaces

     将下面内容添加到/etc/network/interfaces中:

    
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
  

     重启: 

    
#sudo /etc/init.d/networking restart

     2,安装和编译一些工具: 

    
# sudo apt-get install build-essential libssl-dev bzip2 gettext zlib1g-dev python libncurses5-dev libjpeg62-dev libx11-dev libgcrypt11-dev pkg-config bridge-utils bcc bin86 libpci-dev libsdl-dev python-dev texinfo libc6-dev uuid-dev bison flex fakeroot crash kexec-tools makedumpfile libncurses5 libncurses5-dev iasl linux-headers-`uname -r`
# sudo apt-get build-essential xen-3.3 linux-headers-`uname -r`
 

       获得kernel with xen的代码:

    
# cd /usr/src
# git clone http://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen.git linux-2.6-xen
# cd linux-2.6-xen
# git checkout -b xen/stable-2.6.32.x origin/xen/stable-2.6.32.x
 

     进入linux-2.6-xen文件夹,输入#make menuconfig 然后 到: http://wiki.xen.org/xenwiki/XenParavirtOps 下找到你下载的内核对应的内核配置文件,例如本人下载的内核是2.6.32.27-pv的,修改你的.config文件见下图:

  

      3,编译安装打过xen补丁的内核(在/usr/src/linux-2.6-xen文件夹下)。

        
$ aptitude install kernel-package fakeroot
$ export CONCURRENCY_LEVEL=(number_of_cores) +1
$ make-kpkg clean
$ fakeroot make-kpkg --initrd --append-to-version=-pv kernel-image kernel-headers
$ dpkg -i ../linux-image-2.6.32.24-pv_2.6.32.24-pv-10.00.Custom_amd64.deb
# sudo gedit /etc/modules

      修改、etc/modules文件

        
# /etc/modules: kernel modules to load at boot time.
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
lp
rtc
xen-evtchn
xen-gntdev
xen-netback
xen-blkback
xenfs
blktap

      4,下载并编译xen源码:

      我建议你不要到官网下官方源代码,里面很多bug,且更新很慢,建议你下载test版,很多错误在里面得到了修正。当然,这个过程可能会比较长,请耐心等待,并且保证没有错误。

        
#sudo hg clone http://xenbits.xen.org/xen-4.0-testing.hg
#cd /usr/src/xen-4.0-testing
#make xen
#make tools
#make install-xen
#make install-tools PYTHON_PREFIX_ARG=
      5,将相关服务设置为自动启动: 

         
# update-rc.d xend defaults 20 21
# update-rc.d xendomains defaults 21 20
# update-grub
# reboot

      6,重新启动之后,利用xm info等命令看看是不是xen已经安装好了。 

     三,libvirt0.83安装: 

        
$ sudo apt-get install virtinst python-libvirt virt-viewer virt-manager
# sudo gedit /etc/xen/xend-config.sxp
  

         然后找到里面#(xend-unix-server no) 将前面的#号去掉,并且把里面的no改为yes.

然后保存 退出,输入如下命令: 

         
#export VIRSH_DEFAULT_CONNECT_URI="xen:///"
# reboot
  

      再次开机的时候可利用virsh version来验证你的安装是否已经OK。如果OK恭喜你!还有问题可以留言,我会随时更新回答。


推荐阅读
  • Python 工具推荐 | PyHubWeekly 第二十一期:提升命令行体验的五大工具
    本期 PyHubWeekly 为大家精选了 GitHub 上五个优秀的 Python 工具,涵盖金融数据可视化、终端美化、国际化支持、图像增强和远程 Shell 环境配置。欢迎关注并参与项目。 ... [详细]
  • 本文详细介绍了 Python 中的条件语句和循环结构。主要内容包括:1. 分支语句(if...elif...else);2. 循环语句(for, while 及嵌套循环);3. 控制循环的语句(break, continue, else)。通过具体示例,帮助读者更好地理解和应用这些语句。 ... [详细]
  • Linux环境下C语言实现定时向文件写入当前时间
    本文介绍如何在Linux系统中使用C语言编程,实现在每秒钟向指定文件中写入当前时间戳。通过此示例,读者可以了解基本的文件操作、时间处理以及循环控制。 ... [详细]
  • 本文探讨了为何相同的HTTP请求在两台不同操作系统(Windows与Ubuntu)的机器上会分别返回200 OK和429 Too Many Requests的状态码。我们将分析代码、环境差异及可能的影响因素。 ... [详细]
  • 离线安装Grafana Cloudera Manager插件并监控CDH集群
    本文详细介绍如何离线安装Cloudera Manager (CM) 插件,并通过Grafana监控CDH集群的健康状况和资源使用情况。该插件利用CM提供的API接口进行数据获取和展示。 ... [详细]
  • Symfony是一个功能强大的PHP框架,以其依赖注入(DI)特性著称。许多流行的PHP框架如Drupal和Laravel的核心组件都基于Symfony构建。本文将详细介绍Symfony的安装方法及其基本使用。 ... [详细]
  • 2012年7月30日,语言岛团队宣布其智能记单词软件V0.3.4.554版本正式开源。该版本不仅支持跨平台使用,还引入了多项创新功能,旨在帮助用户更高效地记忆单词。 ... [详细]
  • Android 6.0 切换指定 Wi-Fi 的解决方案
    本文详细介绍了在 Android 6.0 系统中切换到指定 Wi-Fi 的方法,包括常见的问题、原因分析及解决方案。通过官方文档和代码示例,帮助开发者更好地理解和实现这一功能。 ... [详细]
  • 在编译BSP包过程中,遇到了一个与 'gets' 函数相关的编译错误。该问题通常发生在较新的编译环境中,由于 'gets' 函数已被弃用并视为安全漏洞。本文将详细介绍如何通过修改源代码和配置文件来解决这一问题。 ... [详细]
  • Python自动化测试入门:Selenium环境搭建
    本文详细介绍如何在Python环境中安装和配置Selenium,包括开发工具PyCharm的安装、Python环境的设置以及Selenium包的安装方法。此外,还提供了编写和运行第一个自动化测试脚本的步骤。 ... [详细]
  • 本文介绍了如何通过Java代码计算一个整数的位数,并展示了多个基础编程示例,包括求和、平均分计算、条件判断等。 ... [详细]
  • 本文详细介绍了Java中实现异步调用的多种方式,包括线程创建、Future接口、CompletableFuture类以及Spring框架的@Async注解。通过代码示例和深入解析,帮助读者理解并掌握这些技术。 ... [详细]
  • Python notes
    6.1.1.执行模块当你用下面的方式运行一个Python模块pythonfibo.py模块中的代码将会被执行,就像导入它一样,不过此时__name__被设置为__main__。 ... [详细]
  • CentOS 7.6环境下Prometheus与Grafana的集成部署指南
    本文旨在提供一套详细的步骤,指导读者如何在CentOS 7.6操作系统上成功安装和配置Prometheus 2.17.1及Grafana 6.7.2-1,实现高效的数据监控与可视化。 ... [详细]
  • Shell脚本中变量操作详解
    本文基于《鸟哥的Linux私房菜》一书,详细介绍了Shell脚本中变量的使用方法,包括变量的赋值规则、字符串处理技巧以及环境变量的管理等,旨在帮助读者更好地理解和使用Shell中的变量。 ... [详细]
author-avatar
依然-狠幸福
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有