[libvirt] Libvirt.org "Docs" page (top level)
by Justin Clift
Hi us,
The top level libvir.org Docs page is blank:
http://libvirt.org/docs.html
Looks like it's only purpose is to show the menu on the left hand side,
where people can click documentation headings.
The completely empty page content though, kind of looks "wrong", so
I'm thinking we should fit it with something.
Initial thought is to have an autogenerated list of all the docs pages,
expanded out. Pretty much a table of contents kind of thing.
But open to suggestions too if someone has better ideas? :)
Regards and best wishes,
Justin Clift
14 years, 1 month
Re: [libvirt] How to start a defined domain
by 黄亮
yes, and it works now, both "virsh start vm01" and my program. A lot of thanks to you.
But there is still something disturbing.
I'm using putty on windows xp connecting to another computer running CentOS which has xen and libvirt on it.
After I type "virsh start vm01" or run my program, the terminal freezes, I can't input anything to terminal.
And then the network connection to server is closed.
Have you been into this?
2010-10-27
黄亮
发件人: Osier
发送时间: 2010-10-27 11:25:54
收件人: 黄亮
抄送:
主题: Re: [libvirt] How to start a defined domain
----- "黄亮" <lancerhuang(a)163.com> wrote:
>
>
> nope.
>
> "vm01" can be seen after I started it using "xm create vm01".
> But, if I shut it down using "xm shutdown vm01", it can't be seen
> using "virsh list --all"
>
> I assume that, "vm01" only have a xm config file stored in /etc/xen/,
> and libvirt or virsh need a XML style config file. So I can't start
> vm01 using "virsh start vm01" nor can I see it using "virsh list
> --all".
>
> Is it like this? Do correct me if I'm wrong :-)
so it becomes clear now, I guess you didn't 'define' the guest from
libvirt side, that means'vm01' is not a persistent domain, so after
you shutdown the vm01 using xm, yes, libvirt can't see it anymore.
actually even if after you use "virsh destroy" or "virsh shutdown",
libvirt can't see it either.. :-)
the way to define a domain to be persistent,(assume the domain is running)
# virsh dumpxml vm01 > vm01.xml
# virsh define vm01.xml
then think you can start it via:
# virsh start vm01
- Osier
>
> 2010-10-27
>
> 黄亮
>
> 发件人: Osier
> 发送时间: 2010-10-27 10:56:54
> 收件人: 黄亮
> 抄送:
> 主题: Re: [libvirt] How to start a defined domain
>
>
>
> ----- "黄亮" <lancerhuang(a)163.com> wrote:
>
> >
> > Oh, yeah, you're right, it's "make uninstall" :-)
> >
> > after uninstall 0.8.4 and reinstall 0.6.3, it still won't work.
> >
> > but one thing I should mention is that while using "virsh start
> vm01",
> > it reports the same error, saying can't find domain "vm01" with
> > "xenUnifiedDomainLookupByName ".
> > So I think maybe there is something I'm missing in define a domain.
> >
> > Would you give me some hints so I can see where I go wrong? Really
> > appreciated
> >
>
> ah, well, so let us check lower, can you see the guest "vm01" by
> "virsh list --all"?
>
> - Osier
> >
> > 2010-10-27
> >
> > 黄亮
> >
> > 发件人: Osier
> > 发送时间: 2010-10-26 22:29:40
> > 收件人: 黄亮
> > 抄送: libvir-list
> > 主题: Re: [libvirt] How to start a defined domain
> >
> >
> >
> > ----- "黄亮" <lancerhuang(a)163.com> wrote:
> >
> > >
> > > Well, after "make clean", I run the compiled start.c, still won't
> > > work.
> >
> > "make clean" won't uninstall the installed stuffs, use "make
> > uninstall"
> > instead, or you just made a typo? :-)
> >
> > after that, suggest re-installing 0.6.3 if you are not sure if it's
> > injured.
> >
> > - Osier
> >
> > > And I forget to metion, an error msg is shown:
> > >
> > > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName
> > >
> > > is that means I missed something?
> > >
> > >
> > > 2010-10-26
> > >
> > > 黄亮
> > >
> > > 发件人: Osier
> > > 发送时间: 2010-10-26 18:05:46
> > > 收件人: 黄亮
> > > 抄送:
> > > 主题: Re: [libvirt] How to start a defined domain
> > >
> > >
> > >
> > > ----- "黄亮" <lancerhuang(a)163.com> wrote:
> > >
> > > >
> > > > Accroding to your case, it seems I have no need to upgrade
> libvirt
> > > to
> > > > 0.8.4
> > > > Will that work if I erase 0.8.4 using "make clean" and draw back
> > to
> > > > 0.6.3 ?
> > >
> > > yep, think so, if you don't need the new features, and 0.6.3 is
> > enough
> > > for your project requirement.. :-)
> > >
> > > - Osier
> > > >
> > > >
> > > >
> > > > 2010-10-26
> > > >
> > > > 黄亮
> > > >
> > > > 发件人: Osier
> > > > 发送时间: 2010-10-26 17:10:40
> > > > 收件人: 黄亮
> > > > 抄送:
> > > > 主题: Re: [libvirt] How to start a defined domain
> > > >
> > > >
> > > >
> > > > ----- "黄亮" <lancerhuang(a)163.com> wrote:
> > > >
> > > > >
> > > > > Thanks for your reply, Osier.
> > > > >
> > > > >
> > > > > The distro I'm using is CentOS release 5.5 (Final)
> > > > >
> > > > > I'm not quite sure about the version of libvirt. At first, it
> > > seems
> > > > to
> > > > > be 0.6.3, because /usr/lib64/libvirt.so.0 points to
> > > > > /usr/lib64/libvirt.so.0.6.3
> > > > > Then I downloaded the src of libvirt_0.8.4 from offical
> website,
> > > and
> > > > > configure, make, make install.
> > > > > But now it show errors when I type "virsh". The error message
> > lies
> > > > > below:
> > > > >
> > > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.8.2'
> not
> > > > found
> > > > > (required by virsh)
> > > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.1'
> not
> > > > found
> > > > > (required by virsh)
> > > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.5'
> not
> > > > found
> > > > > (required by virsh)
> > > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.8.1'
> not
> > > > found
> > > > > (required by virsh)
> > > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.0'
> not
> > > > found
> > > > > (required by virsh)
> > > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.2'
> not
> > > > found
> > > > > (required by virsh)
> > > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.3'
> not
> > > > found
> > > > > (required by virsh)
> > > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.8.0'
> not
> > > > found
> > > > > (required by virsh)
> > > > > virsh: /usr/local/lib/libvirt.so.0: version
> > > `LIBVIRT_PRIVATE_0.8.4'
> > > > > not found (required by virsh)
> > > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.7'
> not
> > > > found
> > > > > (required by virsh)
> > > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.6.4'
> not
> > > > found
> > > > > (required by virsh)
> > > >
> > > > probly you should try to erase the 0.6.3, then compile and
> install
> > > > libvirt
> > > > like:
> > > >
> > > > # ./configure --prefix=/usr --libdir=/usr/lib64
> > > > # make
> > > > # make install
> > > >
> > > > your test program has no problem on my box. the libvirt on my
> box
> > > also
> > > > is
> > > > 0.6.3.
> > > >
> > > > Regards
> > > >
> > > > - Osier
> > > > >
> > > > > As for xen, it is 3.3.2. The full "xm info" message is listed
> > > below:
> > > > > host : testbed01
> > > > > release : 2.6.18-194.11.4.el5xen
> > > > > version : #1 SMP Tue Sep 21 05:40:24 EDT 2010
> > > > > machine : x86_64
> > > > > nr_cpus : 8
> > > > > nr_nodes : 1
> > > > > cores_per_socket : 4
> > > > > threads_per_core : 2
> > > > > cpu_mhz : 2793
> > > > > hw_caps :
> > > > >
> > > >
> > >
> >
> bfebfbff:28100800:00000000:00000140:0098e3fd:00000000:00000001:00000000
> > > > > virt_caps : hvm
> > > > > total_memory : 4055
> > > > > free_memory : 533
> > > > > node_to_cpu : node0:0-7
> > > > > node_to_memory : node0:533
> > > > > xen_major : 3
> > > > > xen_minor : 3
> > > > > xen_extra : .2
> > > > > xen_caps : xen-3.0-x86_64 xen-3.0-x86_32p hvm-3.0-x86_32
> > > > > hvm-3.0-x86_32p hvm-3.0-x86_64
> > > > > xen_scheduler : credit
> > > > > xen_pagesize : 4096
> > > > > platform_params : virt_start=0xffff800000000000
> > > > > xen_changeset : unavailable
> > > > > cc_compiler : gcc version 4.1.2 20080704 (Red Hat 4.1.2-44)
> > > > > cc_compile_by : root
> > > > > cc_compile_domain : gitco.tld
> > > > > cc_compile_date : Tue Aug 18 21:07:28 CEST 2009
> > > > > xend_config_format : 4
> > > > >
> > > > > I've write a simple c program to test the api, and it is
> listed
> > > > below:
> > > > >
> > > > > 1 // This program aims to test the api which can start the VM
> > > > > 2
> > > > > 3 #include "stdio.h"
> > > > > 4 #include "stdlib.h"
> > > > > 5 #include "libvirt/libvirt.h"
> > > > > 6
> > > > > 7 int main(int argc ,char* argv[])
> > > > > 8 {
> > > > > 9 virConnectPtr conn;
> > > > > 10 conn = virConnectOpen( "xen+tcp://localhost?no_Verify=1" );
> > > > > 11 if( conn == NULL )
> > > > > 12 {
> > > > > 13 printf( "Failed to Connect\n" );
> > > > > 14 return 1;
> > > > > 15 }
> > > > > 16 const char* host = "vm01";
> > > > > 17 virDomainPtr dom;
> > > > > 18 dom = virDomainLookupByName( conn, host );
> > > > > 19 if( dom == NULL )
> > > > > 20 {
> > > > > 21 printf( "can't find dom\n" );
> > > > > 22 return 1;
> > > > > 23 }
> > > > > 24 // else
> > > > > 25 // {
> > > > > 26 // virDomainFree( dom );
> > > > > 27 // virConnectClose( conn );
> > > > > 28 // printf("done\n");
> > > > > 29 // return 0;
> > > > > 30 // }
> > > > > 31 if( virDomainCreate( dom ) == -1 )
> > > > > 32 {
> > > > > 33 printf( "failed to Start\n" );
> > > > > 34 virDomainFree( dom );
> > > > > 35 virConnectClose( conn );
> > > > > 36 return 1;
> > > > > 37 }
> > > > > 38 else
> > > > > 39 {
> > > > > 40 printf( "Started\n" );
> > > > > 41 virDomainFree( dom );
> > > > > 42 virConnectClose( conn );
> > > > > 43 return 0;
> > > > > 44 }
> > > > > 45 }
> > > > >
> > > > > 2010-10-26
> > > > >
> > > > > Lancer
> > > > >
> > > > > 发件人: Osier
> > > > > 发送时间: 2010-10-26 11:35:31
> > > > > 收件人: 黄亮
> > > > > 抄送: libvir-list
> > > > > 主题: Re: [libvirt] How to start a defined domain
> > > > >
> > > > >
> > > > >
> > > > > ----- "黄亮" <lancerhuang(a)163.com> wrote:
> > > > >
> > > > > > I've create a domain called "vm01" using Virt-Manager, the
> GUI
> > > > tool.
> > > > > > Now I wanna use libvirt api to control the life cycle of
> vm01.
> > > > > > It went on well with shutdown and reboot, but how to start
> it
> > > > became
> > > > > a
> > > > > > problem.
> > > > > >
> > > > > > I was intended to get the virDomainPtr by using
> > > > > virDomainLookupByName
> > > > > > api, and then start it using virDomainCreate api.
> > > > > > But it turns out that virDomainLookupByName api cannot
> return
> > a
> > > > > > virDomainPtr for a defined but not running domain.
> > > > > >
> > > > >
> > > > > no, it can :-)
> > > > >
> > > > > If it really doesn't work for you, could you write a simple
> > > program
> > > > to
> > > > > reproduce it? and try to explain what's the version of libvirt
> > you
> > > > > use,
> > > > > on which distro, etc, any helpful info is welcomed. :-)
> > > > >
> > > > > Thanks
> > > > >
> > > > > - Osier
> > > > >
> > > > > > That's my situation, what do you suggest I do now?
> > > > > > Thanks in advance.
> > > > > >
> > > > > > 2010-10-26
> > > > > >
> > > > > > Lancer
> > > > > > --
> > > > > > libvir-list mailing list
> > > > > > libvir-list(a)redhat.com
> > > > > > https://www.redhat.com/mailman/listinfo/libvir-list
> > > > >
> > > > > __________ Information from ESET Smart Security, version of
> > virus
> > > > > signature database 5562 (20101025) __________
> > > > >
> > > > > The message was checked by ESET Smart Security.
> > > > >
> > > > > http://www.eset.com
> > > >
> > > > __________ Information from ESET Smart Security, version of
> virus
> > > > signature database 5562 (20101025) __________
> > > >
> > > > The message was checked by ESET Smart Security.
> > > >
> > > > http://www.eset.com
> > >
> > > __________ Information from ESET Smart Security, version of virus
> > > signature database 5563 (20101026) __________
> > >
> > > The message was checked by ESET Smart Security.
> > >
> > > http://www.eset.com
> >
> > __________ Information from ESET Smart Security, version of virus
> > signature database 5565 (20101026) __________
> >
> > The message was checked by ESET Smart Security.
> >
> > http://www.eset.com
>
> __________ Information from ESET Smart Security, version of virus
> signature database 5566 (20101027) __________
>
> The message was checked by ESET Smart Security.
>
> http://www.eset.com
__________ Information from ESET Smart Security, version of virus signature database 5566 (20101027) __________
The message was checked by ESET Smart Security.
http://www.eset.com
14 years, 1 month
Re: [libvirt] --checksum-fill error on Ubuntu 10.04
by Osier
caused by network filter driver depends on the newer iptables,
there is no "--checksum-fill" option indeed in older iptables.
The following commit log is from iptables git.
commit 9d1b11102b53103c00b7fddf4658a4d2bdee1338
Author: Michael S. Tsirkin <mst(a)redhat.com>
Date: Thu Jul 15 17:23:24 2010 +0200
extensions: libxt_CHECKSUM extension
This adds a `CHECKSUM' target, which can be used in the iptables mangle
table.
You can use this target to compute and fill in the checksum in
a packet that lacks a checksum. This is particularly useful,
if you need to work around old applications such as dhcp clients,
that do not work well with checksum offloads, but don't want to disable
checksum offload in your device.
The problem happens in the field with virtualized applications.
For reference, see Red Hat bz 605555, as well as
http://www.spinics.net/lists/kvm/msg37660.html
Typical expected use (helps old dhclient binary running in a VM):
iptables -A POSTROUTING -t mangle -p udp --dport bootpc \
-j CHECKSUM --checksum-fill
Includes fixes by Jan Engelhardt <jengelh(a)medozas.de>
Signed-off-by: Michael S. Tsirkin <mst(a)redhat.com>
Signed-off-by: Patrick McHardy <kaber(a)trash.net>
Even on my FC13, it's without "CHECKSUM" support, the build date is
'Thu 08 Apr 2010 06:30:45 PM CST', :-)
Could we treat the error message as warnings? or make it only works for newer
iptables?
- Osier
----- "Justin Clift" <jclift(a)redhat.com> wrote:
> Hi us,
>
> Just noticed an error message when manually starting libvirtd (built
> from git) on Ubuntu 10.04, while checking something else:
>
> iptables v1.4.4: unknown option `--checksum-fill'
>
> It shows up in the initial default network setup:
>
> 10:40:19.807: error : virRunWithHook:855 : internal error
> '/sbin/iptables --table mangle --insert POSTROUTING --out-interface
> virbr0 --protocol udp --destination-port 68 --jump CHECKSUM
> --checksum-fill' exited with non-zero status 2 and signal 0: iptables
> v1.4.4: unknown option `--checksum-fill'
> Try `iptables -h' or 'iptables --help' for more information.
>
> Just a FYI, in case someone wants to look into it.
>
> Regards and best wishes,
>
> Justin Clift
>
> --
> libvir-list mailing list
> libvir-list(a)redhat.com
> https://www.redhat.com/mailman/listinfo/libvir-list
14 years, 1 month
[libvirt] [PATCH] docs: added a table of contents to the first 11 docs files
by Justin Clift
There are a 58 docs files, so adding an autogeneratec Table Of
Contents to them all will take some time. This is the first
piece of the work done.
---
docs/api.html.in | 17 +++--------------
docs/apps.html.in | 29 ++++++++++++++++++-----------
docs/architecture.html.in | 42 +++++++++++++++++++-----------------------
docs/archnetwork.html.in | 9 ++++++---
docs/auth.html.in | 41 ++++++++++++++---------------------------
docs/bugs.html.in | 12 ++++++++----
docs/contact.html.in | 6 ++++--
docs/deployment.html.in | 10 ++++++----
docs/devguide.html.in | 6 ++++--
docs/downloads.html.in | 18 ++++++++++--------
docs/drivers.html.in | 28 ++++++++++++++++++++++------
11 files changed, 114 insertions(+), 104 deletions(-)
diff --git a/docs/api.html.in b/docs/api.html.in
index ad43fa3..e8bbeed 100644
--- a/docs/api.html.in
+++ b/docs/api.html.in
@@ -5,20 +5,9 @@
<p> This page describes the main principles and architecture choices
behind the definition of the libvirt API:
- <ul>
- <li>
- <a href="#Objects">Objects exposed</a>
- </li>
- <li>
- <a href="#Functions">Functions and naming conventions</a>
- </li>
- <li>
- <a href="#Driver">The drivers</a>
- </li>
- <li>
- <a href="#Remote">Daemon and remote access</a>
- </li>
- </ul>
+
+ <ul id="toc"></ul>
+
<h2><a name="Objects">Objects exposed</a></h2>
<p> As defined in the <a href="goals.html">goals section</a>, libvirt
API need to expose all the resources needed to manage the virtualization
diff --git a/docs/apps.html.in b/docs/apps.html.in
index 215c9b2..792c145 100644
--- a/docs/apps.html.in
+++ b/docs/apps.html.in
@@ -4,19 +4,26 @@
<p>
This page provides an illustration of the wide variety of
- applications using the libvirt management API. If you know
- of interesting applications not listed on this page, send
- a message to the <a href="contact.html">mailing list</a>
- to request that it be added here. If your application uses
- libvirt as its API, the following graphic is available for
- your website to advertise support for libvirt:
+ applications using the libvirt management API.
+ </p>
+
+ <ul id="toc"></ul>
+
+ <h2><a name="add">Add an application</a></h2>
+
+ <p>
+ To add an application not listed on this page, send a message
+ to the <a href="contact.html">mailing list</a>, requesting it
+ be added here. If your application uses libvirt as its API,
+ the following graphic is available for your website to advertise
+ support for libvirt:
</p>
<p class="image">
<img src="madeWith.png" alt="Made with libvirt"/>
</p>
- <h2>Command line tools</h2>
+ <h2><a name="command">Command line tools</a></h2>
<dl>
<dt>virsh</dt>
@@ -60,7 +67,7 @@
</dd>
</dl>
- <h2>Desktop applications</h2>
+ <h2><a name="desktop">Desktop applications</a></h2>
<dl>
<dt><a href="http://virt-manager.org/">virt-manager</a></dt>
@@ -79,7 +86,7 @@
</dd>
</dl>
- <h2>Web applications</h2>
+ <h2><a name="web">Web applications</a></h2>
<dl>
<dt><a href="http://ovirt.org/">oVirt</a></dt>
@@ -99,7 +106,7 @@
</dd>
</dl>
- <h2>LiveCD / Appliances</h2>
+ <h2><a name="livecd">LiveCD / Appliances</a></h2>
<dl>
<dt><a href="http://et.redhat.com/~rjones/virt-p2v/">virt-p2v</a></dt>
@@ -111,7 +118,7 @@
</dd>
</dl>
- <h2>Monitoring plugins</h2>
+ <h2><a name="monitoring">Monitoring plugins</a></h2>
<dl>
<dt><a href="http://honk.sigxcpu.org/projects/libvirt/#munin">for munin</a></dt>
<dd>
diff --git a/docs/architecture.html.in b/docs/architecture.html.in
index a3e91a5..12d7e04 100644
--- a/docs/architecture.html.in
+++ b/docs/architecture.html.in
@@ -1,23 +1,19 @@
+<?xml version="1.0"?>
<html>
<body>
<h1 >libvirt architecture</h1>
- <p>Currently libvirt supports 2 kind of virtualization, and its
-internal structure is based on a driver model which simplifies adding new
-engines:</p>
- <ul>
- <li>
- <a href="#Xen">Xen hypervisor</a>
- </li>
- <li>
- <a href="#QEmu">QEmu and KVM based virtualization</a>
- </li>
- <li>
- <a href="#drivers">the driver architecture</a>
- </li>
- </ul>
- <h3>
- <a name="Xen">Libvirt Xen support</a>
- </h3>
+
+ <p>
+ Currently libvirt supports 2 kind of virtualization, and its
+ internal structure is based on a driver model which simplifies
+ adding new
+ engines:
+ </p>
+
+ <ul id="toc"></ul>
+
+ <h2><a name="Xen">Xen support</a></h2>
+
<p>When running in a Xen environment, programs using libvirt have to execute
in "Domain 0", which is the primary Linux OS loaded on the machine. That OS
kernel provides most if not all of the actual drivers used by the set of
@@ -48,9 +44,9 @@ privilege access).</p>
connect to initialize the library. It will then fork a libvirt_proxy
program running as root and providing read_only access to the API, this is
then only useful for reporting and monitoring.</p>
- <h3>
- <a name="QEmu">Libvirt QEmu and KVM support</a>
- </h3>
+
+ <h2><a name="QEmu">QEmu and KVM support</a></h2>
+
<p>The model for QEmu and KVM is completely similar, basically KVM is based
on QEmu for the process controlling a new domain, only small details differs
between the two. In both case the libvirt API is provided by a controlling
@@ -62,9 +58,9 @@ emulations models of QEmu, the selection is done when creating the new
domain, by specifying the architecture and machine type targeted.</p>
<p>The code controlling the QEmu process is available in the
<code>qemud/</code> directory.</p>
- <h3>
- <a name="drivers">the driver based architecture</a>
- </h3>
+
+ <h2><a name="drivers">Driver based architecture</a></h2>
+
<p>As the previous section explains, libvirt can communicate using different
channels with the current hypervisor, and should also be able to use
different kind of hypervisor. To simplify the internal design, code, ease
diff --git a/docs/archnetwork.html.in b/docs/archnetwork.html.in
index 22e8697..57b8f3d 100644
--- a/docs/archnetwork.html.in
+++ b/docs/archnetwork.html.in
@@ -1,8 +1,11 @@
+<?xml version="1.0"?>
<html>
<body>
<h1>Network management architecture</h1>
- <h2>Architecture illustration</h2>
+ <ul id="toc"></ul>
+
+ <h2><a name="architecture">Architecture illustration</a></h2>
<p>
The diagrams below illustrate some of the network configurations
@@ -34,13 +37,13 @@
</li>
</ul>
- <h3>Logical diagram</h3>
+ <h3><a name="logical">Logical diagram</a></h3>
<p class="image">
<img src="libvirt-net-logical.png" alt="Logical network architecture"/>
</p>
- <h3>Physical diagram</h3>
+ <h3><a name="physical">Physical diagram</a></h3>
<p class="image">
<img src="libvirt-net-physical.png" alt="Physical network architecture"/>
diff --git a/docs/auth.html.in b/docs/auth.html.in
index 13731eb..2163959 100644
--- a/docs/auth.html.in
+++ b/docs/auth.html.in
@@ -1,30 +1,17 @@
+<?xml version="1.0"?>
<html>
<body>
<h1 >Access control</h1>
<p>
-When connecting to libvirt, some connections may require client
-authentication before allowing use of the APIs. The set of possible
-authentication mechanisms is administrator controlled, independent
-of applications using libvirt.
-</p>
- <ul>
- <li>
- <a href="#ACL_server_config">Server configuration</a>
- </li>
- <li>
- <a href="#ACL_server_unix_perms">UNIX socket permissions/group</a>
- </li>
- <li>
- <a href="#ACL_server_polkit">UNIX socket PolicyKit auth</a>
- </li>
- <li>
- <a href="#ACL_server_username">Username/password auth</a>
- </li>
- <li>
- <a href="#ACL_server_kerberos">Kerberos auth</a>
- </li>
- </ul>
- <h3><a name="ACL_server_config">Server configuration</a></h3>
+ When connecting to libvirt, some connections may require client
+ authentication before allowing use of the APIs. The set of possible
+ authentication mechanisms is administrator controlled, independent
+ of applications using libvirt.
+ </p>
+
+ <ul id="toc"></ul>
+
+ <h2><a name="ACL_server_config">Server configuration</a></h2>
<p>
The libvirt daemon allows the administrator to choose the authentication
mechanisms used for client connections on each network socket independently.
@@ -35,7 +22,7 @@ currently a choice of <code>none</code>, <code>polkit</code>, and <code>sasl</co
The SASL scheme can be further configured to choose between a large
number of different mechanisms.
</p>
- <h3><a name="ACL_server_unix_perms">UNIX socket permissions/group</a></h3>
+ <h2><a name="ACL_server_unix_perms">UNIX socket permissions/group</a></h2>
<p>
If libvirt does not contain support for PolicyKit, then access control for
the UNIX domain socket is done using traditional file user/group ownership
@@ -52,7 +39,7 @@ parameter. For example, setting the former to mode <code>0770</code> and the
latter <code>wheel</code> would let any user in the wheel group connect to
the libvirt daemon.
</p>
- <h3><a name="ACL_server_polkit">UNIX socket PolicyKit auth</a></h3>
+ <h2><a name="ACL_server_polkit">UNIX socket PolicyKit auth</a></h2>
<p>
If libvirt contains support for PolicyKit, then access control options are
more advanced. The <code>unix_sock_auth</code> parameter will default to
@@ -86,7 +73,7 @@ ResultActive=yes</pre>
Further examples of PolicyKit setup can be found on the
<a href="http://wiki.libvirt.org/page/SSHPolicyKitSetup">wiki page</a>.
</p>
- <h3><a name="ACL_server_username">Username/password auth</a></h3>
+ <h2><a name="ACL_server_username">Username/password auth</a></h2>
<p>
The plain TCP socket of the libvirt daemon defaults to using SASL for authentication.
The SASL mechanism configured by default is DIGEST-MD5, which provides a basic
@@ -123,7 +110,7 @@ again:
<pre>
# saslpasswd2 -a libvirt -d fred
</pre>
- <h3><a name="ACL_server_kerberos">Kerberos auth</a></h3>
+ <h2><a name="ACL_server_kerberos">Kerberos auth</a></h2>
<p>
The plain TCP socket of the libvirt daemon defaults to using SASL for authentication.
The SASL mechanism configured by default is DIGEST-MD5, which provides a basic
diff --git a/docs/bugs.html.in b/docs/bugs.html.in
index fa557a8..201705b 100644
--- a/docs/bugs.html.in
+++ b/docs/bugs.html.in
@@ -4,14 +4,18 @@
<h1>Bug reporting</h1>
+ <ul id="toc"></ul>
+
+ <h2><a name="bugzilla">Bug Tracking</a></h2>
+
<p>
The <a href="http://bugzilla.redhat.com">Red Hat Bugzilla Server</a>
- should be used to report bugs and request features against libvirt.
+ should be used to report bugs and request features in libvirt.
Before submitting a ticket, check the existing tickets to see if
the bug/feature is already tracked.
</p>
- <h2>General libvirt bug reports</h2>
+ <h2><a name="general">General libvirt bug reports</a></h2>
<p>
If you are using official libvirt binaries from a Linux distribution
@@ -27,7 +31,7 @@
<li><a href="http://bugzilla.redhat.com/bugzilla/enter_bug.cgi?product=Virtualization%...">New libvirt ticket</a></li>
</ul>
- <h2>Linux Distribution specific bug reports</h2>
+ <h2><a name="distribution">Linux Distribution specific bug reports</a></h2>
<ul>
<li>
If you are using official binaries from a <strong>Fedora distribution</strong>, enter
@@ -54,7 +58,7 @@
</ul>
- <h2>How to file high quality bug reports</h2>
+ <h2><a name="quality">How to file high quality bug reports</a></h2>
<p>
To increase the likelihood of your bug report being addressed it is
diff --git a/docs/contact.html.in b/docs/contact.html.in
index c9dceda..1a9f79a 100644
--- a/docs/contact.html.in
+++ b/docs/contact.html.in
@@ -3,7 +3,9 @@
<body>
<h1>Contacting the development team</h1>
- <h2>Mailing lists</h2>
+ <ul id="toc"></ul>
+
+ <h2><a name="email">Mailing lists</a></h2>
<p>
There are two mailing-lists:
@@ -45,7 +47,7 @@
clone.
</p>
- <h2>IRC discussion</h2>
+ <h2><a name="irc">IRC discussion</a></h2>
<p>
Some of the libvirt developers may be found on IRC on the <a href="http://oftc.net">OFTC IRC</a>
diff --git a/docs/deployment.html.in b/docs/deployment.html.in
index 94c480f..8ef383b 100644
--- a/docs/deployment.html.in
+++ b/docs/deployment.html.in
@@ -2,16 +2,18 @@
<body>
<h1>Deployment</h1>
- <h2>Pre-packaged releases</h2>
+ <ul id="toc"></ul>
+
+ <h2><a name="packages">Pre-packaged releases</a></h2>
<p>
- The libvirt API is now available in all major Linux distributions
+ The libvirt API is now available in all major Linux distributions,
so the simplest deployment approach is to use your distributions'
package management software to install the <code>libvirt</code>
module.
</p>
- <h2>Self-built releases</h2>
+ <h2><a name="tarball">Self-built releases</a></h2>
<p>
libvirt uses GNU autotools for its build system, so deployment
@@ -25,7 +27,7 @@
# make install
</pre>
- <h2>Built from GIT</h2>
+ <h2><a name="git">Built from GIT</a></h2>
<p>
When building from GIT it is necessary to generate the autotools
diff --git a/docs/devguide.html.in b/docs/devguide.html.in
index 6c51c36..ba499db 100644
--- a/docs/devguide.html.in
+++ b/docs/devguide.html.in
@@ -3,6 +3,8 @@
<body>
<h1>libvirt Application Development Guide</h1>
+ <ul id="toc"></ul>
+
<p>
The guide is both a learning tool for developing with libvirt and an
API reference document. It is a work in progress, composed by a
@@ -16,7 +18,7 @@
contribution to the content here will do it. :)
</p>
- <h2>Browsable online</h2>
+ <h2><a name="online">Browsable online</a></h2>
<ul>
<li><a href="http://libvirt.org/guide/html/">
@@ -33,7 +35,7 @@
Source RPM format</a></li>
</ul>
- <h2>GIT source repository</h2>
+ <h2><a name="git">GIT source repository</a></h2>
<p>
The source is in a git repository:
diff --git a/docs/downloads.html.in b/docs/downloads.html.in
index 4b37d07..709bee8 100644
--- a/docs/downloads.html.in
+++ b/docs/downloads.html.in
@@ -3,7 +3,9 @@
<body>
<h1>Downloads</h1>
- <h2>Official Releases</h2>
+ <ul id="toc"></ul>
+
+ <h2><a name="releases">Official Releases</a></h2>
<p>
The latest versions of the libvirt C library can be downloaded from:
@@ -14,7 +16,7 @@
<li><a href="http://libvirt.org/sources/">libvirt.org HTTP server</a></li>
</ul>
- <h2>Hourly development snapshots</h2>
+ <h2><a name="hourly">Hourly development snapshots</a></h2>
<p>
Once an hour, an automated snapshot is made from the git server
@@ -27,7 +29,7 @@
<li><a href="http://libvirt.org/sources/libvirt-git-snapshot.tar.gz">libvirt.org HTTP server</a></li>
</ul>
- <h2>GIT source repository</h2>
+ <h2><a name="git">GIT source repository</a></h2>
<p>
Libvirt code source is now maintained in a <a href="http://git-scm.com/">git</a>
@@ -61,7 +63,7 @@
contribution to the content here will do it. :)
</p>
- <h2>Downloadable PDF</h2>
+ <h2><a name="appdevpdf">Application Development Guide PDF</a></h2>
<p>
PDF download is available here:
@@ -71,7 +73,7 @@
<li><a href="http://libvirt.org/guide/pdf/Application_Development_Guide.pdf">libvirt App Dev Guide</a> (PDF)</li>
</ul>
- <h2>GIT source repository</h2>
+ <h2><a name="appdevgit">Application Development Guide source GIT repository</a></h2>
<p>
The source is also in a git repository:
@@ -89,9 +91,9 @@
<br />
- <h1>libvirt Installation</h1>
+ <h1><a name="installation">libvirt Installation</a></h1>
- <h2><a name="Compilatio">Compilation</a></h2>
+ <h2><a name="Compilatio">Compiling a release tarball</a></h2>
<p>
libvirt uses the standard configure/make/install steps:
@@ -116,7 +118,7 @@
update your list of installed shared libs.
</p>
- <h2>Building from a source code checkout</h2>
+ <h2><a name="build">Building from a GIT checkout</a></h2>
<p>
The libvirt build process uses GNU autotools, so after obtaining a
diff --git a/docs/drivers.html.in b/docs/drivers.html.in
index 7e31434..b97200c 100644
--- a/docs/drivers.html.in
+++ b/docs/drivers.html.in
@@ -2,6 +2,8 @@
<body>
<h1>Internal drivers</h1>
+ <ul id="toc"></ul>
+
<p>
The libvirt public API delegates its implementation to one or
more internal drivers, depending on the <a href="uri.html">connection URI</a>
@@ -10,21 +12,35 @@
network and storage driver active.
</p>
- <h2>Hypervisor drivers</h2>
+ <h2><a name="hypervisor">Hypervisor drivers</a></h2>
<p>
The hypervisor drivers currently supported by libvirt are:
</p>
<ul>
- <li><strong><a href="drvxen.html">Xen</a></strong></li>
- <li><strong><a href="drvqemu.html">QEMU</a></strong></li>
- <li><strong><a href="drvlxc.html">LXC</a></strong></li>
- <li><strong><a href="drvtest.html">Test</a></strong></li>
+ <li><strong><a href="drvlxc.html">LXC</a></strong> - Linux Containers</li>
+ <li><strong><a href="drvone.html">OpenNebula</a></strong></li>
<li><strong><a href="drvopenvz.html">OpenVZ</a></strong></li>
+ <li><strong><a href="drvqemu.html">QEMU</a></strong></li>
+ <li><strong><a href="drvtest.html">Test</a></strong> - Used for testing</li>
+ <li><strong><a href="drvuml.html">UML</a></strong> - User Mode Linux</li>
<li><strong><a href="drvvbox.html">VirtualBox</a></strong></li>
- <li><strong><a href="drvone.html">OpenNebula</a></strong></li>
<li><strong><a href="drvesx.html">VMware ESX</a></strong></li>
+ <li><strong><a href="drvxen.html">Xen</a></strong></li>
+ </ul>
+
+ <h2><a name="stroage">Storage drivers</a></h2>
+
+ <ul>
+ <li><strong><a href="storage.html#StorageBackendDir">Directory backend</a></strong></li>
+ <li><strong><a href="storage.html#StorageBackendFS">Local filesystem backend</a></strong></li>
+ <li><strong><a href="storage.html#StorageBackendNetFS">Network filesystem backend</a></strong></li>
+ <li><strong><a href="storage.html#StorageBackendLogical">Logical Volume Manager (LVM) backend</a></strong></li>
+ <li><strong><a href="storage.html#StorageBackendDisk">Disk backend</a></strong></li>
+ <li><strong><a href="storage.html#StorageBackendISCSI">iSCSI backend</a></strong></li>
+ <li><strong><a href="storage.html#StorageBackendSCSI">SCSI backend</a></strong></li>
+ <li><strong><a href="storage.html#StorageBackendMultipath">Multipath backend</a></strong></li>
</ul>
</body>
</html>
--
1.7.2.3
14 years, 1 month
Re: [libvirt] How to start a defined domain
by 黄亮
nope.
"vm01" can be seen after I started it using "xm create vm01".
But, if I shut it down using "xm shutdown vm01", it can't be seen using "virsh list --all"
I assume that, "vm01" only have a xm config file stored in /etc/xen/, and libvirt or virsh need a XML style config file. So I can't start vm01 using "virsh start vm01" nor can I see it using "virsh list --all".
Is it like this? Do correct me if I'm wrong :-)
2010-10-27
黄亮
发件人: Osier
发送时间: 2010-10-27 10:56:54
收件人: 黄亮
抄送:
主题: Re: [libvirt] How to start a defined domain
----- "黄亮" <lancerhuang(a)163.com> wrote:
>
> Oh, yeah, you're right, it's "make uninstall" :-)
>
> after uninstall 0.8.4 and reinstall 0.6.3, it still won't work.
>
> but one thing I should mention is that while using "virsh start vm01",
> it reports the same error, saying can't find domain "vm01" with
> "xenUnifiedDomainLookupByName ".
> So I think maybe there is something I'm missing in define a domain.
>
> Would you give me some hints so I can see where I go wrong? Really
> appreciated
>
ah, well, so let us check lower, can you see the guest "vm01" by
"virsh list --all"?
- Osier
>
> 2010-10-27
>
> 黄亮
>
> 发件人: Osier
> 发送时间: 2010-10-26 22:29:40
> 收件人: 黄亮
> 抄送: libvir-list
> 主题: Re: [libvirt] How to start a defined domain
>
>
>
> ----- "黄亮" <lancerhuang(a)163.com> wrote:
>
> >
> > Well, after "make clean", I run the compiled start.c, still won't
> > work.
>
> "make clean" won't uninstall the installed stuffs, use "make
> uninstall"
> instead, or you just made a typo? :-)
>
> after that, suggest re-installing 0.6.3 if you are not sure if it's
> injured.
>
> - Osier
>
> > And I forget to metion, an error msg is shown:
> >
> > libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName
> >
> > is that means I missed something?
> >
> >
> > 2010-10-26
> >
> > 黄亮
> >
> > 发件人: Osier
> > 发送时间: 2010-10-26 18:05:46
> > 收件人: 黄亮
> > 抄送:
> > 主题: Re: [libvirt] How to start a defined domain
> >
> >
> >
> > ----- "黄亮" <lancerhuang(a)163.com> wrote:
> >
> > >
> > > Accroding to your case, it seems I have no need to upgrade libvirt
> > to
> > > 0.8.4
> > > Will that work if I erase 0.8.4 using "make clean" and draw back
> to
> > > 0.6.3 ?
> >
> > yep, think so, if you don't need the new features, and 0.6.3 is
> enough
> > for your project requirement.. :-)
> >
> > - Osier
> > >
> > >
> > >
> > > 2010-10-26
> > >
> > > 黄亮
> > >
> > > 发件人: Osier
> > > 发送时间: 2010-10-26 17:10:40
> > > 收件人: 黄亮
> > > 抄送:
> > > 主题: Re: [libvirt] How to start a defined domain
> > >
> > >
> > >
> > > ----- "黄亮" <lancerhuang(a)163.com> wrote:
> > >
> > > >
> > > > Thanks for your reply, Osier.
> > > >
> > > >
> > > > The distro I'm using is CentOS release 5.5 (Final)
> > > >
> > > > I'm not quite sure about the version of libvirt. At first, it
> > seems
> > > to
> > > > be 0.6.3, because /usr/lib64/libvirt.so.0 points to
> > > > /usr/lib64/libvirt.so.0.6.3
> > > > Then I downloaded the src of libvirt_0.8.4 from offical website,
> > and
> > > > configure, make, make install.
> > > > But now it show errors when I type "virsh". The error message
> lies
> > > > below:
> > > >
> > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.8.2' not
> > > found
> > > > (required by virsh)
> > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.1' not
> > > found
> > > > (required by virsh)
> > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.5' not
> > > found
> > > > (required by virsh)
> > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.8.1' not
> > > found
> > > > (required by virsh)
> > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.0' not
> > > found
> > > > (required by virsh)
> > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.2' not
> > > found
> > > > (required by virsh)
> > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.3' not
> > > found
> > > > (required by virsh)
> > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.8.0' not
> > > found
> > > > (required by virsh)
> > > > virsh: /usr/local/lib/libvirt.so.0: version
> > `LIBVIRT_PRIVATE_0.8.4'
> > > > not found (required by virsh)
> > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.7' not
> > > found
> > > > (required by virsh)
> > > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.6.4' not
> > > found
> > > > (required by virsh)
> > >
> > > probly you should try to erase the 0.6.3, then compile and install
> > > libvirt
> > > like:
> > >
> > > # ./configure --prefix=/usr --libdir=/usr/lib64
> > > # make
> > > # make install
> > >
> > > your test program has no problem on my box. the libvirt on my box
> > also
> > > is
> > > 0.6.3.
> > >
> > > Regards
> > >
> > > - Osier
> > > >
> > > > As for xen, it is 3.3.2. The full "xm info" message is listed
> > below:
> > > > host : testbed01
> > > > release : 2.6.18-194.11.4.el5xen
> > > > version : #1 SMP Tue Sep 21 05:40:24 EDT 2010
> > > > machine : x86_64
> > > > nr_cpus : 8
> > > > nr_nodes : 1
> > > > cores_per_socket : 4
> > > > threads_per_core : 2
> > > > cpu_mhz : 2793
> > > > hw_caps :
> > > >
> > >
> >
> bfebfbff:28100800:00000000:00000140:0098e3fd:00000000:00000001:00000000
> > > > virt_caps : hvm
> > > > total_memory : 4055
> > > > free_memory : 533
> > > > node_to_cpu : node0:0-7
> > > > node_to_memory : node0:533
> > > > xen_major : 3
> > > > xen_minor : 3
> > > > xen_extra : .2
> > > > xen_caps : xen-3.0-x86_64 xen-3.0-x86_32p hvm-3.0-x86_32
> > > > hvm-3.0-x86_32p hvm-3.0-x86_64
> > > > xen_scheduler : credit
> > > > xen_pagesize : 4096
> > > > platform_params : virt_start=0xffff800000000000
> > > > xen_changeset : unavailable
> > > > cc_compiler : gcc version 4.1.2 20080704 (Red Hat 4.1.2-44)
> > > > cc_compile_by : root
> > > > cc_compile_domain : gitco.tld
> > > > cc_compile_date : Tue Aug 18 21:07:28 CEST 2009
> > > > xend_config_format : 4
> > > >
> > > > I've write a simple c program to test the api, and it is listed
> > > below:
> > > >
> > > > 1 // This program aims to test the api which can start the VM
> > > > 2
> > > > 3 #include "stdio.h"
> > > > 4 #include "stdlib.h"
> > > > 5 #include "libvirt/libvirt.h"
> > > > 6
> > > > 7 int main(int argc ,char* argv[])
> > > > 8 {
> > > > 9 virConnectPtr conn;
> > > > 10 conn = virConnectOpen( "xen+tcp://localhost?no_Verify=1" );
> > > > 11 if( conn == NULL )
> > > > 12 {
> > > > 13 printf( "Failed to Connect\n" );
> > > > 14 return 1;
> > > > 15 }
> > > > 16 const char* host = "vm01";
> > > > 17 virDomainPtr dom;
> > > > 18 dom = virDomainLookupByName( conn, host );
> > > > 19 if( dom == NULL )
> > > > 20 {
> > > > 21 printf( "can't find dom\n" );
> > > > 22 return 1;
> > > > 23 }
> > > > 24 // else
> > > > 25 // {
> > > > 26 // virDomainFree( dom );
> > > > 27 // virConnectClose( conn );
> > > > 28 // printf("done\n");
> > > > 29 // return 0;
> > > > 30 // }
> > > > 31 if( virDomainCreate( dom ) == -1 )
> > > > 32 {
> > > > 33 printf( "failed to Start\n" );
> > > > 34 virDomainFree( dom );
> > > > 35 virConnectClose( conn );
> > > > 36 return 1;
> > > > 37 }
> > > > 38 else
> > > > 39 {
> > > > 40 printf( "Started\n" );
> > > > 41 virDomainFree( dom );
> > > > 42 virConnectClose( conn );
> > > > 43 return 0;
> > > > 44 }
> > > > 45 }
> > > >
> > > > 2010-10-26
> > > >
> > > > Lancer
> > > >
> > > > 发件人: Osier
> > > > 发送时间: 2010-10-26 11:35:31
> > > > 收件人: 黄亮
> > > > 抄送: libvir-list
> > > > 主题: Re: [libvirt] How to start a defined domain
> > > >
> > > >
> > > >
> > > > ----- "黄亮" <lancerhuang(a)163.com> wrote:
> > > >
> > > > > I've create a domain called "vm01" using Virt-Manager, the GUI
> > > tool.
> > > > > Now I wanna use libvirt api to control the life cycle of vm01.
> > > > > It went on well with shutdown and reboot, but how to start it
> > > became
> > > > a
> > > > > problem.
> > > > >
> > > > > I was intended to get the virDomainPtr by using
> > > > virDomainLookupByName
> > > > > api, and then start it using virDomainCreate api.
> > > > > But it turns out that virDomainLookupByName api cannot return
> a
> > > > > virDomainPtr for a defined but not running domain.
> > > > >
> > > >
> > > > no, it can :-)
> > > >
> > > > If it really doesn't work for you, could you write a simple
> > program
> > > to
> > > > reproduce it? and try to explain what's the version of libvirt
> you
> > > > use,
> > > > on which distro, etc, any helpful info is welcomed. :-)
> > > >
> > > > Thanks
> > > >
> > > > - Osier
> > > >
> > > > > That's my situation, what do you suggest I do now?
> > > > > Thanks in advance.
> > > > >
> > > > > 2010-10-26
> > > > >
> > > > > Lancer
> > > > > --
> > > > > libvir-list mailing list
> > > > > libvir-list(a)redhat.com
> > > > > https://www.redhat.com/mailman/listinfo/libvir-list
> > > >
> > > > __________ Information from ESET Smart Security, version of
> virus
> > > > signature database 5562 (20101025) __________
> > > >
> > > > The message was checked by ESET Smart Security.
> > > >
> > > > http://www.eset.com
> > >
> > > __________ Information from ESET Smart Security, version of virus
> > > signature database 5562 (20101025) __________
> > >
> > > The message was checked by ESET Smart Security.
> > >
> > > http://www.eset.com
> >
> > __________ Information from ESET Smart Security, version of virus
> > signature database 5563 (20101026) __________
> >
> > The message was checked by ESET Smart Security.
> >
> > http://www.eset.com
>
> __________ Information from ESET Smart Security, version of virus
> signature database 5565 (20101026) __________
>
> The message was checked by ESET Smart Security.
>
> http://www.eset.com
__________ Information from ESET Smart Security, version of virus signature database 5566 (20101027) __________
The message was checked by ESET Smart Security.
http://www.eset.com
14 years, 1 month
[libvirt] [PATCH] docs: reformated the bindings page html markup to match other pages
by Justin Clift
---
Looks the same when processed, but the previous messy HTML got on my nerves
while I was looking at other stuff.
docs/bindings.html.in | 74 +++++++++++++++++++++++++++++++++---------------
1 files changed, 51 insertions(+), 23 deletions(-)
diff --git a/docs/bindings.html.in b/docs/bindings.html.in
index bdcd231..0bc997e 100644
--- a/docs/bindings.html.in
+++ b/docs/bindings.html.in
@@ -1,31 +1,59 @@
+<?xml version="1.0"?>
<html>
<body>
<h1 >Bindings for other languages</h1>
- <p>Libvirt comes with bindings to support other languages than
-pure <strong>C</strong>. First the headers embeds the necessary declarations to
-allow direct access from <strong>C++</strong> code, but also we have bindings for
-higher level kind of languages:</p>
+
+ <p>
+ Libvirt comes with bindings to support other languages than
+ pure <strong>C</strong>. First the headers embeds the necessary
+ declarations to allow direct access from <strong>C++</strong>
+ code, but also we have bindings for higher level kind of languages:
+ </p>
+
<ul>
- <li><strong>Python</strong>: Libvirt comes with direct support for the Python language
- (just make sure you installed the libvirt-python package if not
- compiling from sources). See below for more information about
- using libvirt with python</li>
- <li><strong>Perl</strong>: Daniel Berrange provides <a href="http://search.cpan.org/dist/Sys-Virt/">bindings for
- Perl</a>.</li>
- <li><strong>OCaml</strong>: Richard Jones supplies <a href="http://libvirt.org/ocaml/">bindings for OCaml</a>.</li>
- <li><strong>Ruby</strong>: David Lutterkort provides <a href="http://libvirt.org/ruby/">bindings for Ruby</a>.</li>
- <li><strong>Java</strong>: Daniel Veillard maintains <a href="java.html">Java bindings</a>.</li>
- <li><strong>C#</strong>: Arnaud Champion maintains <a href="csharp.html">C# bindings</a>.</li>
- <li><strong>PHP</strong>: Radek Hladik is developing <a href="http://phplibvirt.cybersales.cz/">PHP bindings</a>.</li>
+ <li>
+ <strong>Python</strong>: Libvirt comes with direct support for
+ the Python language (just make sure you installed the libvirt-python
+ package if not compiling from sources). See below for more
+ information about using libvirt with python
+ </li>
+ <li>
+ <strong>Perl</strong>: Daniel Berrange provides
+ <a href="http://search.cpan.org/dist/Sys-Virt/">bindings for Perl</a>.
+ </li>
+ <li>
+ <strong>OCaml</strong>: Richard Jones supplies
+ <a href="http://libvirt.org/ocaml/">bindings for OCaml</a>.
+ </li>
+ <li>
+ <strong>Ruby</strong>: David Lutterkort provides
+ <a href="http://libvirt.org/ruby/">bindings for Ruby</a>.
+ </li>
+ <li>
+ <strong>Java</strong>: Daniel Veillard maintains
+ <a href="java.html">Java bindings</a>.
+ </li>
+ <li>
+ <strong>C#</strong>: Arnaud Champion maintains
+ <a href="csharp.html">C# bindings</a>.
+ </li>
+ <li>
+ <strong>PHP</strong>: Radek Hladik is developing
+ <a href="http://phplibvirt.cybersales.cz/">PHP bindings</a>.
+ </li>
</ul>
- <p>For information on using libvirt on <strong>Windows</strong>
- <a href="windows.html">please see the Windows
- support page</a>.
+
+ <p>
+ For information on using libvirt on <strong>Windows</strong>
+ <a href="windows.html">please see the Windows support page</a>.
+ </p>
+
+ <p>
+ Support, requests or help for libvirt bindings are welcome on the
+ <a href="https://www.redhat.com/mailman/listinfo/libvir-list/">mailing list</a>,
+ as usual try to provide enough background information and make sure
+ you use recent version, see the <a href="bugs.html">help page</a>.
</p>
- <p>Support, requests or help for libvirt bindings are welcome on
-the <a href="https://www.redhat.com/mailman/listinfo/libvir-list/">mailing
-list</a>, as usual try to provide enough background information
-and make sure you use recent version, see the <a href="bugs.html">help
-page</a>.</p>
+
</body>
</html>
--
1.7.2.3
14 years, 1 month
Re: [libvirt] How to start a defined domain
by 黄亮
Oh, yeah, you're right, it's "make uninstall" :-)
after uninstall 0.8.4 and reinstall 0.6.3, it still won't work.
but one thing I should mention is that while using "virsh start vm01", it reports the same error, saying can't find domain "vm01" with "xenUnifiedDomainLookupByName ".
So I think maybe there is something I'm missing in define a domain.
Would you give me some hints so I can see where I go wrong? Really appreciated
2010-10-27
黄亮
发件人: Osier
发送时间: 2010-10-26 22:29:40
收件人: 黄亮
抄送: libvir-list
主题: Re: [libvirt] How to start a defined domain
----- "黄亮" <lancerhuang(a)163.com> wrote:
>
> Well, after "make clean", I run the compiled start.c, still won't
> work.
"make clean" won't uninstall the installed stuffs, use "make uninstall"
instead, or you just made a typo? :-)
after that, suggest re-installing 0.6.3 if you are not sure if it's injured.
- Osier
> And I forget to metion, an error msg is shown:
>
> libvir: Xen error : Domain not found: xenUnifiedDomainLookupByName
>
> is that means I missed something?
>
>
> 2010-10-26
>
> 黄亮
>
> 发件人: Osier
> 发送时间: 2010-10-26 18:05:46
> 收件人: 黄亮
> 抄送:
> 主题: Re: [libvirt] How to start a defined domain
>
>
>
> ----- "黄亮" <lancerhuang(a)163.com> wrote:
>
> >
> > Accroding to your case, it seems I have no need to upgrade libvirt
> to
> > 0.8.4
> > Will that work if I erase 0.8.4 using "make clean" and draw back to
> > 0.6.3 ?
>
> yep, think so, if you don't need the new features, and 0.6.3 is enough
> for your project requirement.. :-)
>
> - Osier
> >
> >
> >
> > 2010-10-26
> >
> > 黄亮
> >
> > 发件人: Osier
> > 发送时间: 2010-10-26 17:10:40
> > 收件人: 黄亮
> > 抄送:
> > 主题: Re: [libvirt] How to start a defined domain
> >
> >
> >
> > ----- "黄亮" <lancerhuang(a)163.com> wrote:
> >
> > >
> > > Thanks for your reply, Osier.
> > >
> > >
> > > The distro I'm using is CentOS release 5.5 (Final)
> > >
> > > I'm not quite sure about the version of libvirt. At first, it
> seems
> > to
> > > be 0.6.3, because /usr/lib64/libvirt.so.0 points to
> > > /usr/lib64/libvirt.so.0.6.3
> > > Then I downloaded the src of libvirt_0.8.4 from offical website,
> and
> > > configure, make, make install.
> > > But now it show errors when I type "virsh". The error message lies
> > > below:
> > >
> > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.8.2' not
> > found
> > > (required by virsh)
> > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.1' not
> > found
> > > (required by virsh)
> > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.5' not
> > found
> > > (required by virsh)
> > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.8.1' not
> > found
> > > (required by virsh)
> > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.0' not
> > found
> > > (required by virsh)
> > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.2' not
> > found
> > > (required by virsh)
> > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.3' not
> > found
> > > (required by virsh)
> > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.8.0' not
> > found
> > > (required by virsh)
> > > virsh: /usr/local/lib/libvirt.so.0: version
> `LIBVIRT_PRIVATE_0.8.4'
> > > not found (required by virsh)
> > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.7.7' not
> > found
> > > (required by virsh)
> > > virsh: /usr/local/lib/libvirt.so.0: version `LIBVIRT_0.6.4' not
> > found
> > > (required by virsh)
> >
> > probly you should try to erase the 0.6.3, then compile and install
> > libvirt
> > like:
> >
> > # ./configure --prefix=/usr --libdir=/usr/lib64
> > # make
> > # make install
> >
> > your test program has no problem on my box. the libvirt on my box
> also
> > is
> > 0.6.3.
> >
> > Regards
> >
> > - Osier
> > >
> > > As for xen, it is 3.3.2. The full "xm info" message is listed
> below:
> > > host : testbed01
> > > release : 2.6.18-194.11.4.el5xen
> > > version : #1 SMP Tue Sep 21 05:40:24 EDT 2010
> > > machine : x86_64
> > > nr_cpus : 8
> > > nr_nodes : 1
> > > cores_per_socket : 4
> > > threads_per_core : 2
> > > cpu_mhz : 2793
> > > hw_caps :
> > >
> >
> bfebfbff:28100800:00000000:00000140:0098e3fd:00000000:00000001:00000000
> > > virt_caps : hvm
> > > total_memory : 4055
> > > free_memory : 533
> > > node_to_cpu : node0:0-7
> > > node_to_memory : node0:533
> > > xen_major : 3
> > > xen_minor : 3
> > > xen_extra : .2
> > > xen_caps : xen-3.0-x86_64 xen-3.0-x86_32p hvm-3.0-x86_32
> > > hvm-3.0-x86_32p hvm-3.0-x86_64
> > > xen_scheduler : credit
> > > xen_pagesize : 4096
> > > platform_params : virt_start=0xffff800000000000
> > > xen_changeset : unavailable
> > > cc_compiler : gcc version 4.1.2 20080704 (Red Hat 4.1.2-44)
> > > cc_compile_by : root
> > > cc_compile_domain : gitco.tld
> > > cc_compile_date : Tue Aug 18 21:07:28 CEST 2009
> > > xend_config_format : 4
> > >
> > > I've write a simple c program to test the api, and it is listed
> > below:
> > >
> > > 1 // This program aims to test the api which can start the VM
> > > 2
> > > 3 #include "stdio.h"
> > > 4 #include "stdlib.h"
> > > 5 #include "libvirt/libvirt.h"
> > > 6
> > > 7 int main(int argc ,char* argv[])
> > > 8 {
> > > 9 virConnectPtr conn;
> > > 10 conn = virConnectOpen( "xen+tcp://localhost?no_Verify=1" );
> > > 11 if( conn == NULL )
> > > 12 {
> > > 13 printf( "Failed to Connect\n" );
> > > 14 return 1;
> > > 15 }
> > > 16 const char* host = "vm01";
> > > 17 virDomainPtr dom;
> > > 18 dom = virDomainLookupByName( conn, host );
> > > 19 if( dom == NULL )
> > > 20 {
> > > 21 printf( "can't find dom\n" );
> > > 22 return 1;
> > > 23 }
> > > 24 // else
> > > 25 // {
> > > 26 // virDomainFree( dom );
> > > 27 // virConnectClose( conn );
> > > 28 // printf("done\n");
> > > 29 // return 0;
> > > 30 // }
> > > 31 if( virDomainCreate( dom ) == -1 )
> > > 32 {
> > > 33 printf( "failed to Start\n" );
> > > 34 virDomainFree( dom );
> > > 35 virConnectClose( conn );
> > > 36 return 1;
> > > 37 }
> > > 38 else
> > > 39 {
> > > 40 printf( "Started\n" );
> > > 41 virDomainFree( dom );
> > > 42 virConnectClose( conn );
> > > 43 return 0;
> > > 44 }
> > > 45 }
> > >
> > > 2010-10-26
> > >
> > > Lancer
> > >
> > > 发件人: Osier
> > > 发送时间: 2010-10-26 11:35:31
> > > 收件人: 黄亮
> > > 抄送: libvir-list
> > > 主题: Re: [libvirt] How to start a defined domain
> > >
> > >
> > >
> > > ----- "黄亮" <lancerhuang(a)163.com> wrote:
> > >
> > > > I've create a domain called "vm01" using Virt-Manager, the GUI
> > tool.
> > > > Now I wanna use libvirt api to control the life cycle of vm01.
> > > > It went on well with shutdown and reboot, but how to start it
> > became
> > > a
> > > > problem.
> > > >
> > > > I was intended to get the virDomainPtr by using
> > > virDomainLookupByName
> > > > api, and then start it using virDomainCreate api.
> > > > But it turns out that virDomainLookupByName api cannot return a
> > > > virDomainPtr for a defined but not running domain.
> > > >
> > >
> > > no, it can :-)
> > >
> > > If it really doesn't work for you, could you write a simple
> program
> > to
> > > reproduce it? and try to explain what's the version of libvirt you
> > > use,
> > > on which distro, etc, any helpful info is welcomed. :-)
> > >
> > > Thanks
> > >
> > > - Osier
> > >
> > > > That's my situation, what do you suggest I do now?
> > > > Thanks in advance.
> > > >
> > > > 2010-10-26
> > > >
> > > > Lancer
> > > > --
> > > > libvir-list mailing list
> > > > libvir-list(a)redhat.com
> > > > https://www.redhat.com/mailman/listinfo/libvir-list
> > >
> > > __________ Information from ESET Smart Security, version of virus
> > > signature database 5562 (20101025) __________
> > >
> > > The message was checked by ESET Smart Security.
> > >
> > > http://www.eset.com
> >
> > __________ Information from ESET Smart Security, version of virus
> > signature database 5562 (20101025) __________
> >
> > The message was checked by ESET Smart Security.
> >
> > http://www.eset.com
>
> __________ Information from ESET Smart Security, version of virus
> signature database 5563 (20101026) __________
>
> The message was checked by ESET Smart Security.
>
> http://www.eset.com
__________ Information from ESET Smart Security, version of virus signature database 5565 (20101026) __________
The message was checked by ESET Smart Security.
http://www.eset.com
14 years, 1 month
[libvirt] [PATCH] virsh: use - not _ in memtune option names
by Eric Blake
* tools/virsh.c (opts_memtune): All other options in virsh use -
for separating words.
---
tools/virsh.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/tools/virsh.c b/tools/virsh.c
index cafd304..b616eef 100644
--- a/tools/virsh.c
+++ b/tools/virsh.c
@@ -2890,13 +2890,13 @@ static const vshCmdInfo info_memtune[] = {
static const vshCmdOptDef opts_memtune[] = {
{"domain", VSH_OT_DATA, VSH_OFLAG_REQ, N_("domain name, id or uuid")},
- {VIR_DOMAIN_MEMORY_HARD_LIMIT, VSH_OT_INT, VSH_OFLAG_NONE,
+ {"hard-limit", VSH_OT_INT, VSH_OFLAG_NONE,
N_("Max memory in kilobytes")},
- {VIR_DOMAIN_MEMORY_SOFT_LIMIT, VSH_OT_INT, VSH_OFLAG_NONE,
+ {"soft-limit", VSH_OT_INT, VSH_OFLAG_NONE,
N_("Memory during contention in kilobytes")},
- {VIR_DOMAIN_MEMORY_SWAP_HARD_LIMIT, VSH_OT_INT, VSH_OFLAG_NONE,
+ {"swap-hard-limit", VSH_OT_INT, VSH_OFLAG_NONE,
N_("Max swap in kilobytes")},
- {VIR_DOMAIN_MEMORY_MIN_GUARANTEE, VSH_OT_INT, VSH_OFLAG_NONE,
+ {"min-guarantee", VSH_OT_INT, VSH_OFLAG_NONE,
N_("Min guaranteed memory in kilobytes")},
{NULL, 0, 0, NULL}
};
--
1.7.2.3
14 years, 1 month
[libvirt] [PATCH] build: silence configure warning if ksh is missing
by Eric Blake
* configure.ac (lv_cv_wrapper_shell): Fix logic error if candidate
shell is not available.
Reported by Matthias Bolte.
---
On IRC, Matthias reported a noisy configure run:
eblake: checking for shell that supports <> redirection... ./configure: line 31581: ksh: command not found
Worse, if a shell is missing, it doesn't change the contents of
conftest.a, so that missing shell would be selected in the loop.
This patch fixes both the noise and the wrong selection.
configure.ac | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/configure.ac b/configure.ac
index 86a864b..7e7f295 100644
--- a/configure.ac
+++ b/configure.ac
@@ -616,7 +616,7 @@ if test "$with_qemu" = yes; then
test $lv_cv_wrapper_shell = none &&
AC_MSG_ERROR([could not find decent shell])
echo a > conftest.a
- $lv_cv_wrapper_shell -c ': 1<>conftest.a'
+ ($lv_cv_wrapper_shell -c ': 1<>conftest.a') 2>/dev/null &&
case `cat conftest.a`.$lv_cv_wrapper_shell in
a./*) break;; dnl /bin/sh is good enough
a.*) dnl bash, ksh, and zsh all understand 'command', use that
--
1.7.2.3
14 years, 1 month
[libvirt] [PATCH] maint: fix syntax-check failure of previous patch
by Eric Blake
* cfg.mk (sc_prohibit_trailing_blank_lines): Delete; this is
adequately covered by maint.mk's sc_prohibit_empty_lines_at_EOF.
* .x-sc_prohibit_empty_lines_at_EOF: New file, to exempt raw
patches.
* Makefile.am (EXTRA_DIST): Include new exemption.
---
I'm pushing this under the build-breaker rule, since my previous
patch made 'make syntax-check' fail for not one, but two identical
syntax checks.
.x-sc_prohibit_empty_lines_at_EOF | 1 +
Makefile.am | 1 +
cfg.mk | 9 ---------
3 files changed, 2 insertions(+), 9 deletions(-)
create mode 100644 .x-sc_prohibit_empty_lines_at_EOF
diff --git a/.x-sc_prohibit_empty_lines_at_EOF b/.x-sc_prohibit_empty_lines_at_EOF
new file mode 100644
index 0000000..f481a09
--- /dev/null
+++ b/.x-sc_prohibit_empty_lines_at_EOF
@@ -0,0 +1 @@
+^docs/api_extension/.*
diff --git a/Makefile.am b/Makefile.am
index b51bd2b..26c6488 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -25,6 +25,7 @@ EXTRA_DIST = \
.x-sc_avoid_write \
.x-sc_m4_quote_check \
.x-sc_prohibit_asprintf \
+ .x-sc_prohibit_empty_lines_at_EOF \
.x-sc_prohibit_gethostby \
.x-sc_prohibit_gethostname \
.x-sc_prohibit_gettext_noop \
diff --git a/cfg.mk b/cfg.mk
index d50ffb7..d238a5f 100644
--- a/cfg.mk
+++ b/cfg.mk
@@ -406,15 +406,6 @@ sc_prohibit_newline_at_end_of_diagnostic:
&& { echo '$(ME): newline at end of message(s)' 1>&2; \
exit 1; } || :
-# Disallow trailing blank lines.
-sc_prohibit_trailing_blank_lines:
- @$(VC_LIST_EXCEPT) | xargs perl -ln -0777 -e \
- '/\n\n+$$/ and print $$ARGV' > $@-t
- @found=0; test -s $@-t && { found=1; cat $@-t 1>&2; \
- echo '$(ME): found trailing blank line(s)' 1>&2; }; \
- rm -f $@-t; \
- test $$found = 0
-
# Regex for grep -E that exempts generated files from style rules.
preprocessor_exempt = ((qemu|remote)_(driver|protocol)\.h)$$
# Enforce recommended preprocessor indentation style.
--
1.7.2.3
14 years, 1 month