Linux下编译安装qemu和libvirt
目录 [hide]
KVM虚拟机(英语:Kernel-based Virtual Machine),是一种用于Linux内核中的虚拟化基础设施。KVM目前支援Intel VT及AMD-V的原生虚拟技术。KVM在2007年2月被导入Linux 2.6.20核心中。它也被引入FreeBSD。在Mac OS X中,也可以见到KVM。
因为kvm已经集成到Linux中了,所有就不用安装kvm了。
安装qemu
qemu介绍
QEMU 是一个面向完整 PC 系统的开源仿真器。除了仿真处理器外,QEMU 还允许仿真所有必要的子系统,如连网硬件和视频硬件。它还允许实现高级概念上的仿真(如对称多处理系统(多达 255 个 CPU)和其他处理器架构(如 ARM 和 PowerPC)。
下载源文件
下面从git安装qemu最新版qemu官网的git地址:
|
1
|
http://git.qemu-project.org/qemu.git |
使用以下命令下载qemu代码到本地来,将来可以用来自己编译和修改,然后发布自己新的qemu。
|
1
|
git clone git://git.qemu.org/qemu.git |
编译安装
下载完后,进行编译安装.
|
01
02
03
04
05
06
07
08
09
10
11
12
13
|
### 如果你是从压缩包下载来的,先解压缩cd /tmptar zxvf qemu-x.y.z.tar.gzcd qemu-x.y.z### Then you configure QEMU and build it (usually no options are needed):###git下载及源码包下载都一样了./configure make### Then type as root user:make install### to install QEMU in /usr/local. |
你可能在./courfigure出现问题
注意:可能在安装的时候,许多的软件没有安装,需要提前安装,不过会提示你会少了什么
|
1
2
3
4
5
|
yum install gccyum install zlib-devel.x86_64yum install glib2-devel.x86_64yum install pixman-devel.x86_64git submodule update --init dtc ###会提示缺某个模块,在当前的git目录下运行 |
安装libvirt
libvirt介绍
libvirt是目前使用最为广泛的对KVM虚拟机进行管理的工具和应用程序接口(API),而且一些常用的虚拟机管理工具(如virsh、virt-install、virt-manager等)和云计算框架平台(如OpenStack、OpenNebula、Eucalyptus等)都在底层使用libvirt的应用程序接口。
下载libvirt
git项目的位置http://libvirt.org/git/?p=libvirt.git
新建一个文件夹,存放git的文件
|
1
|
git clone git://libvirt.org/libvirt.git |
编译安装
这部分是参考http://libvirt.org/compiling.html文章
|
1
2
3
4
|
###个人不推荐这个方法,见下面$ ./autogen.sh --prefix=$HOME/usr$ make$ sudo make install |
默认状态下,配置和编译后安装的目录与Linux操作系统发行版提供的默认目录可能是不一致的,例如:RHEL 6.3中用系统的RPM包安装的libvirtd、virsh等可执行程序被安装 /usr/sbin/ 目录下,libvirt.so、libvirt-qemu.so等共享库文件被安装在 /usr/lib64/ 目录下,而从前面步骤中可知自己编译安装时,默认会将libvirtd、virsh等安装在 /usr/local/sbin 目录下,而libvirt.so、libvirt-qemu.so 等被安装在 /usr/local/lib/ 目录下。如果想保持对操作系统发型版中安装可执行程序和共享库的目录的一致性, autogen.sh 脚本提供了“–system”参数,带有这个参数来配置,就会尽可能保证安装目录与原生系统的一致性,其命令行操作如下.
|
1
2
3
4
5
|
###个人推荐这个方法##保持对操作系统发型版中安装可执行程序和共享库的目录的一致性$ ./autogen.sh --system### 或者 ./configure --prefix=/usr --localstatedir=/var --sysconfdir=/etc$ make$ sudo make install |
安装libvirt可能也会缺少一些软件,比如
|
1
2
3
4
|
yum install libtool.x86_64autopint : yum install gettext-devel.x86_64python-config : yum install python-devel.x86_64pciaccess : yum install libpciaccess.devel.x86_64 |
检查已经安装的libvirt
|
1
2
3
4
5
|
# which libvirtd/usr/sbin/libvirtd# which virsh/usr/bin/virsh |
参考资料
原创文章,转载请注明: 转载自东东东 陈煜东的博客
Linux下编译安装qemu和libvirt的更多相关文章
- Linux下编译安装qemu和libvirt【转】
转自:http://www.cnblogs.com/findumars/p/5679742.html 目录 [hide] 1 安装qemu 1.1 qemu介绍 1.2 下载源文件 1.3 编译安装 ...
- LINUX下编译安装PHP各种报错大集合
本文为大家整理汇总了一些linux下编译安装php各种报错大集合 ,感兴趣的同学参考下. nginx1.6.2-mysql5.5.32二进制,php安装报错解决: 123456 [root@clien ...
- linux下编译安装vim7.4并安装clang_complete插件
linux下编译安装vim7.4并安装clang_complete插件 因为debian里软件仓库中下载安装的vim是不支持python写的插件的(可以打开vim,在命令模式先输入:py测试一下),导 ...
- linux下编译安装curl
linux下编译安装curl 1.下载curl git clone https://github.com/curl/curl.git 2.在curl目录下生成configure文件 ./buldcon ...
- linux下编译安装boost库
linux下编译安装boost库 linux下编译安装boost库 1.下载并解压boost 1.58 源代码 下载 解压 2.运行bootstrap.sh 3.使用b2进行构建 构建成功的提示 4. ...
- Linux下编译安装Apache Http Server
Linux下编译安装Apache Http Server [TOC] 1.下载httpd-2.4.12.tar.bz2 wget http://mirror.bit.edu.cn/apache/htt ...
- linux下编译安装nginx
1.首先下载稳定版nginx1.10.2 使用wget命令下载 wget http://nginx.org/download/nginx-1.10.2.tar.gz 2.然后解压 tar -zxvf ...
- (转)Linux下编译安装log4cxx
Linux下编译安装log4cxx 一个项目的服务器端在Linux平台下,用到了开源日志库log4cxx,这个库是apache项目的一个子库.功能很不错.下面记录下它的编译和安装过程. log4cxx ...
- linux安装软件的几种方法----linux下编译安装软件的一般步骤
linux安装软件的几种方法: 一.rpm包安装方式步骤: 1.找到相应的软件包,比如soft.version.rpm,下载到本机某个目录: 2.打开一个终端,su -成root用户: 3.cd so ...
随机推荐
- window7下statsvn统计代码量
下载statsvn:http://www.statsvn.org/ 将下载后的statsvn.jar放到d:\svn目录下; 打开cmd窗口切换到需要统计代码的项目目录如:d:\project\web ...
- springMVC+ freemark多视图配置
<!--通用视图解析器--> <bean id="viewResolverCommon" class="org.springframework.web. ...
- 使用achartengine实现自定义折线图 ----附代码 调试OK
achartengine作为android开发中最常用的实现图标的开源框架,使用比较方便,参考官方文档谢了如下Demo,实现了自定义折线图. package edu.ustb.chart; impor ...
- JS Message 网页消息提醒
JS message是一个非常小的(用gzip压缩之后才3kb)JavaScript library 用于轻松在网页上展示通知提醒.除了通知,它还支持创建带风格的对话框和确认对话框.不需要任何JS框架 ...
- ubuntu 包维护
gnats == bug; tox = tales xillia ubuntu回显当前目录
- Cocos2d-x 架构一个游戏的一般思路
采用下面的步骤来实现游戏逻辑: 通过应用程序代理类来初始化第一个CCScene(即AppDelegate里面的第一个CCScene), CCScene里面实例化一个或者多个CCLayer,并把它们当作 ...
- java中的TreeMap如何顺序按照插入顺序排序
java中的TreeMap如何顺序按照插入顺序排序 你可以使用LinkedHashMap 这个是可以记住插入顺序的. 用LinkedHashMap吧.它内部有一个链表,保持插入的顺序.迭代的时候,也 ...
- hibernate Restrictions用法
QBC常用限定方法 Restrictions.eq --> equal,等于. Restrictions.allEq --> 参数为Map对象,使用key/value进行多个等于的比对,相 ...
- JS 清除IE缓存
js中自动清除ie缓存方法 — 常用 对于动态文件,比如 index.asp?id=... 或者 index.aspx?id=... 相信有经验的程序员都知道怎样禁止浏览器缓存数据了. 但是对于静 ...
- c# 高斯模糊
using System; using System.Collections.Generic; using System.Text; using System.Drawing; using Syste ...