一、KVM的编译安装

1、安装基本系统和开发工具

1.1 编译内核

mkdir /root/kvm

cd /root/kvm

wget http://www.kernel.org/pub/linux/kernel/v3.x/linux-3.5.tar.gz

tar -zvxf linux-3.5.tar.gz -C /usr/src

cd /usr/src/linux-2.6.34.4

make menuconfig

vi .config

增加

CONFIG_SYSFS_DEPRECATED_V2=y

CONFIG_STP=m

CONFIG_BRIDGE=m

修改

CONFIG_STP=y

CONFIG_BRIDGE=y

make -j30 all

make modules_install

make install

1.2 安装kvm_mod

wget http://nchc.dl.sourceforge.net/project/kvm/kvm-kmod/3.5/kvm-kmod-3.5.tar.bz2

tar -jvxf kvm-kmod-3.5.tar.bz2

cd kvm-kmod-3.5

./configure

make && make install

reboot

1.3 确认kvm_kmod安装成功

lsmod | grep kvm

kvm_intel              40286  0

kvm                   266256  1 kvm_intel

如果你的系统是64位可以直接进行这一步,因为64位的ubuntu是自带kvm模块的

1.4 安装qemu-kvm

apt-get install -y libglib2.0-dev

cd /root/kvm

wget https://launchpad.net/ubuntu/+archive/primary/+files/qemu-kvm_1.0%2Bnoroms.orig.tar.gz

tar -zxf qemu-kvm-0.12.5.tar.gz

cd qemu-kvm-0.12.5

./configure –prefix=/usr/local/kvm  –disable-vnc-tls  –disable-vnc-sasl  –disable-curl   –enable-system  –static

make && make install

ln -s /usr/local/kvm/bin/qemu-img /usr/bin/qemu-img

ln -s /usr/local/kvm/bin/qemu-io /usr/bin/qemu-io

ln -s /usr/local/kvm/bin/qemu-nbd /usr/bin/qemu-nbd

ln -s /usr/local/kvm/bin/qemu-system-x86_64 /usr/bin/qemu

ln -s /usr/local/kvm/bin/qemu-system-x86_64 /usr/bin/kvm

ln -s /usr/local/kvm/bin/qemu-system-x86_64 /usr/bin/qemu-kvm

二、libvirt的编译安装

apt-get install -y libdevmapper libdevmapper-dev libgnutls-dev libxml2-dev libpciaccess-dev libudev-dev libnl-dev gnutls-bin

cd /root/kvm

wget https://launchpad.net/ubuntu/+archive/primary/+files/libvirt_1.0.2.orig.tar.gz

tar -zxf libvirt_1.0.2.orig.tar.gz

cd libvirt-1.0.2

./configure –prefix=/usr/local/libvirt –enable-debug=no –with-storage-lvm=no

make && make install

ln -s /usr/local/libvirt/bin/virsh /usr/bin/virsh

三、virtinst的编译安装

四、常见错误问题

问题一:configure: error: You must install the GnuTLS library in order to compile and run libvirt

解决方法:

Ubuntu:apt-get  install -y libgnutls-dev

问题二:

/usr/local/libvirt/sbin/libvirtd

19:49:56.942: error : virRunWithHook:857 : internal error 'brctl setfd virbr0 0' exited with non-zero status 1 and signal 0: libvir: error : cannot execute binary brctl: No such file or directory

19:49:56.982: warning : qemudStartup:1832 : Unable to create cgroup for driver: No such device or address

解决方法:

Ubuntu:apt-get install -y bridge-utils

问题三:

19:51:11.368: error : virRunWithHook:857 : internal error '/sbin/iptables –table filter –insert FORWARD –destination 192.168.122.0/255.255.255.0 –out-interface virbr0 –match state –state ESTABLISHED,RELATED –jump ACCEPT' exited with non-zero status 1 and signal 0: iptables: Unknown error 18446744073709551615

19:51:11.368: error : networkAddMasqueradingIptablesRules:637 : failed to add iptables rule to allow forwarding to 'virbr0': Invalid argument

19:51:11.420: warning : qemudStartup:1832 : Unable to create cgroup for driver: No such device or address

如果使用桥接网络独立IP可以忽略

问题四:

checking libxml2 xml2-config >= 2.6.0 … configure: error: Could not find libxml2 anywhere (see config.log for details).

解决方法:

Ubuntu: apt-get install -y libxml2-dev

问题五:

configure: error: You must install the GnuTLS library in order to compile and run libvirt

解决方法:

Ubunut: apt-get install -y gnutls-bin(可省)

apt-get install -y libgnutls-dev

问题六:

configure: error: You must install device-mapper-devel/libdevmapper >= 1.0.0 to compile libvirt

解决方法:

Ubunut:apt-get install -y libdevmapper-dev libdevmapper

问题七:

configure: error: libnl-devel >= 1.1 is required for macvtap support

解决方法:

Ubunut:apt-get install -y libnl-dev

问题八:

# ./configure –prefix=/usr –libdir=/usr/lib64 –localstatedir=/var –sysconfdir=/etc –with-hal=yes –with-udev=yes

checking for UDEV… no

configure: error: You must install libudev-devel >= 145 to compile libvirt

解决方法:

Ubunut: apt-get install -y libudev-dev

问题九:

configure: error: You must install libpciaccess-devel >= 0.10.0 to compile libvirt

解决方法:

Ubuntu: apt-get install -y libpciaccess-dev

问题十:

configure: error: You must install python-devel to build Python bindings

解决方法:

Ubuntu:apt-get install -y python-dev

sudo apt-get install python-dev

注:有时依然不能用virsh nodedev-dumpxml pci_0000_00_19_0

#./configure –prefix=/usr –libdir=/usr/lib64 –localstatedir=/var –sysconfdir=/etc –with-hal=yes –with-udev=yes –with-polkit=yes

….

checking for POLKIT… no

configure: error: You must install PolicyKit >= 0.6 to compile libvirt

# apt-get install libpolkit-agent-1-0 libpolkit-backend-1-0 libpolkit-gobject-1-0 libpolkit-gtk-1-0

kvm编译安装及常见问题解决的更多相关文章

  1. git编译安装与常见问题解决

    1. 先去官网下载一个安装包 ,假设目录/APP/ido   2. cd /APP/ido   3. tar -zxvf git-2.7.2.tar.gz   4. 安装依赖 yum -y insta ...

  2. PHP编译安装时常见错误解决办法,php编译常见错误

    PHP编译安装时常见错误解决办法,php编译常见错误 1.configure: error: xslt-config not found. Please reinstall the libxslt & ...

  3. 编译安装Heartbeat常见错误

    -----------那些需要升级包还有少包的错误就不写了---------- <b>1</b>. Reusable-Cluster-Components-glue-glue- ...

  4. Lnmp 源码编译安装、常见错误整理

    简介: Lnmp 环境的搭建还是非常简单的,之前由于博客迁移等原因,导致丢失了好多博文,这次重新整理记录一下. Lnmp 即:Linux .Nginx .Mysql .PHP Lnmp 是一套 Web ...

  5. KVM简介,安装及常见使用详解

    KVM简介 KVM(名称来自英语:Kernel-basedVirtual Machine的缩写,即基于内核的虚拟机),是一种用于Linux内核中的虚拟化基础设施,可以将Linux内核转化为一个hype ...

  6. 7.2.*PHP编译安装时常见错误解决办法,php编译常见错误

    configure: error: Cannot find ldap.h   检查下面是不是已经安装,如果没有安装之:检查:yum list openldapyum list openldap-dev ...

  7. 【转】ubuntu源码编译安装php常见错误解决办法

    ./configure -prefix=/usr/local/php -with-config-file-path=/etc -with-mysql=mysqlnd -with-mysqli=mysq ...

  8. SVN安装及常见问题解决

    一.SVN简介 SVN作为以一种崛起的版本管理工具,是CVS的接班人.对于概念性的介绍我这里就不多赘述,网上很多介绍. 工作流程如下图: 二.安装 SVN的重要性就不再赘述,这里以Versionsv1 ...

  9. Linux下安装 TestLink常见问题解决方法

    Read/write permissions For security reason we suggest that directories tagged with [S] on following ...

随机推荐

  1. 工欲善其事必先利其器之Xcode高效插件和舒适配色

    功能强大的Xcode再配上高效的插件,必会让你的开发事半功倍.直接进入正题. Xcode插件安装方式: 1.github下载插件然后用xcode打开运行一遍,然后重启xcode. 2.安装插件管理Al ...

  2. OC中的SEL解析

    OC中的SEL对象即selector对象,用来保存一个方法的地址.下面通过一个Demo来解析SEL的原理.创建一个Person类,Person.h中: #import <Foundation/F ...

  3. java 从jar包中读取资源文件

    在代码中读取一些资源文件(比如图片,音乐,文本等等),在集成环境(Eclipse)中运行的时候没有问题.但当打包成一个可执行的jar包(将资源文件一并打包)以后,这些资源文件找不到,如下代码: Jav ...

  4. ajax使用中发现的问题与深入扩展(for循环中嵌套ajax)

    在学习ajax的过程中,我曾经遇到过这样的一个问题,为了得到一个详情列表,我要先向服务器去请求得到索引表,简单描述就是ajax中的success中的for循环中再次嵌套了ajax,结果第二层succe ...

  5. node-http-proxy修改响应结果

    最近在项目中使用node-http-proxy遇到需要修改代理服务器响应结果需求,该库已提供修改响应格式为html的方案:Harmon,而项目中返回格式统一为json,使用它感觉太笨重了,所以自己写了 ...

  6. Devexpress Barmanager设置

    一,在bar的属性中有optionbar,可以做一些设置. 其中比较有用的是:1,去掉最右边的箭头:allowquickcustomization 改为false 2,去掉最左边的竖线:drawdra ...

  7. Html5-Canvas实现简易的抽奖转盘

    ###Html5实现抽奖转盘效果 1.实现的基本效果 2.主要的内容 html5中canvas标签的使用 jQueryRotate.js旋转插件 3.主要html代码 <body> < ...

  8. Content-Type实体首部字段

      现代互联网下,每天都会有数以亿计的各种媒体对象经由HTTP传输,如图像,文本,影视以及软件程序等.这些数据都包含在HTTP报文的实体内容中,如果把HTTP报文想像成一份快递,HTTP实体就是快递实 ...

  9. 利用HTML5分片上传超大文件

    在网页中直接上传大文件一直是个比较头疼的问题,主要面临的问题一般包括两类:一是上传时间长中途一旦出错会导致前功尽弃:二是服务端配置复杂,要考虑接收超大表单和超时问题,如果是托管主机没准还改不了配置,默 ...

  10. 一个获取Android手机root权限的程序

    PermRoot.bat可以获取root权限. IsRoot.bat可以测试是否拥有root权限. UnRoot.bat可以清除root权限. 下载地址: http://pan.baidu.com/s ...