红联Linux门户
Linux帮助

ubuntu14.04下libvmi编译安装使用

发布时间:2016-03-12 10:13:03来源:linux网站作者:George_Hand

今天写一篇关于libvmi的文章,其实网上有很多关于libvmi的文章,但是,在按照网上的做,编译的时侯没错,但是在执行./example/process-list ubuntu时会报错,就是那些错误导致我对libvmi折腾了一两周,下面进行开讲。

首先讲下,这篇使用libvmi的环境:
源码:https://github.com/libvmi/libvmi
ubuntu14.04下libvmi编译安装使用

系统:ubuntu14.04

虚拟机:Xen-4.4

在使用libvmi的example下的指令前须配置/etc/libvmi.conf文件(下篇讲)


一.编译libvmi的源文件

命令:cd libvmi-master/

./autogen.sh

./configure

//如果报错:Error: aclocal not found

//解决办法: sudo apt-get  install automake autoconf

//如果报错:Error: Package requirements (glib-2.0 >= 2.16) were not met

//解决方法:$ sudo apt-get install libglib2.0-dev

//如果报错:Error: Package requirements (check >= 0.9.4) are not met:

//解决方法:$ sudo apt-get install check

$ make

$ sudo ldconfig

$ sudo make install

//注意上面的./configure命令,在编译过程中会出现下面的东西,一定要注意:

Feature      | Option      | Reason

-------------|---------------------------|----------------------------

Xen Support  | --enable-xen=yes   | yes

Xen Events   | --enable-xen-events=yes   | yes

KVM Support  | --enable-kvm=no    | libvirt missing

File Support | --enable-file=yes  | yes

Shm-snapshot | --enable-shm-snapshot=no  | no

-------------|---------------------------|----------------------------

OS    | Option

-------------|--------------------------------------------------------

Windows      | --enable-windows=yes

Linux | --enable-linux=yes

Tools | Option      | Reason

-------------|---------------------------|----------------------------

VMIFS | --enable-vmifs=no   | FUSE library missing (libfuse-dev)

//注意:如果看一下,你会发现,如果你要libvmi能够支持Xen,则Xen Support  | --enable-xen=yes 而且Xen Events   | --enable-  xen-events=yes  ,其他的一样,如果类似于上面的KVM Support  | --enable-kvm=no    | libvirt missing,是不支持kvm的,而且缺少liobvirt库

//那么在库都不缺少的时侯,如何使Xen Events   | --enable-xen-events=no变为Xen Events   | --enable-xen-events=yes呢?

//注意:./configure  --enable-xen-events=yes 

//也可以使Xen Events   | --enable-xen-events=yes变为Xen Events   | --enable-xen-events=no,使用下面的参数:

./configure  --enable-xen-events=no


二.执行libvmi命令获取虚拟机信息

命令:cd libvmi-master/examples

sudo ./process-list ubuntu-qk

注意:此处的ubuntu-qk是你用sudo xl list(有些版本的是sudo xm list)查到的虚拟机名字

注意:自此处可能会遇到的一些问题:

1)像这个问题:Re: [libvirt-users] ERROR: Domain not found: no domain with matching nam

解决方案:可能是你缺少xenstore库,导致你的libvmi在./configure时不支持xen 和xen event,可以在./configure时验证看上面提到的xen,xen-event处的结果,为no,看后面的missing **,这个**可能就是你缺少的库,装上就好了

2)问题:VMI_ERROR: Found more than one VMM or file to use, please specify what you w_

解决方法:在libvmi进行./configure的时侯,如果kvm和xen同时支持的话,会包这个错,解决方法,如果分析xen的,则在编译的时侯./configure --enable-kvm=no,就可以了。


本文永久更新地址:http://www.linuxdiyf.com/linux/18847.html