This is the update of libvirt to the latest version 2.1. The most important change from a packager view is the new virtlogd daemon. This daemon handles the qemu output and wrote it to log files.
The require some changes: - A new init script to start, stop restart the daemon called virtlogd. The daemon is restart with SIGUSR1 (this is important because the daemon keeps all pipelines etc. open).
This introduces a problem with the uninstall.sh install.sh script. It is not possible to stop the daemon while virtual machines are running, so the script update.sh execute from now not uninstall.sh and install.sh instead it contains all steps from uninstall.sh install.sh expect the start / stop routine for virtlogd. The daemon is just restarted after the update, which makes sure that all changes take effect.
- new symlinks in the uninstall.sh and install.sh script and some root file changes because of the new virtlogd init script. - the archive format changes from tar.gz to tar.xz
For Changelogs see:
https://libvirt.org/news-2015.html https://libvirt.org/news.html (2017 and later: https://libvirt.org/news-2016.html )
Signed-off-by: Jonatan Schlag jonatan.schlag@ipfire.org --- config/rootfiles/common/i586/initscripts | 1 + config/rootfiles/common/x86_64/initscripts | 1 + config/rootfiles/packages/libvirt | 301 ++++++++++++++++------------- lfs/libvirt | 11 +- src/initscripts/init.d/virtlogd | 46 +++++ src/paks/libvirt/install.sh | 6 + src/paks/libvirt/uninstall.sh | 3 +- src/paks/libvirt/update.sh | 58 +++++- 8 files changed, 282 insertions(+), 145 deletions(-) create mode 100644 src/initscripts/init.d/virtlogd
diff --git a/config/rootfiles/common/i586/initscripts b/config/rootfiles/common/i586/initscripts index 443dee3..ee5a4ab 100644 --- a/config/rootfiles/common/i586/initscripts +++ b/config/rootfiles/common/i586/initscripts @@ -141,6 +141,7 @@ etc/rc.d/init.d/udev_retry etc/rc.d/init.d/upnpd #etc/rc.d/init.d/vdr #etc/rc.d/init.d/vdradmin +#etc/rc.d/init.d/virtlogd etc/rc.d/init.d/vnstat #etc/rc.d/init.d/vsftpd etc/rc.d/init.d/waitdrives diff --git a/config/rootfiles/common/x86_64/initscripts b/config/rootfiles/common/x86_64/initscripts index 443dee3..ee5a4ab 100644 --- a/config/rootfiles/common/x86_64/initscripts +++ b/config/rootfiles/common/x86_64/initscripts @@ -141,6 +141,7 @@ etc/rc.d/init.d/udev_retry etc/rc.d/init.d/upnpd #etc/rc.d/init.d/vdr #etc/rc.d/init.d/vdradmin +#etc/rc.d/init.d/virtlogd etc/rc.d/init.d/vnstat #etc/rc.d/init.d/vsftpd etc/rc.d/init.d/waitdrives diff --git a/config/rootfiles/packages/libvirt b/config/rootfiles/packages/libvirt index b193987..d2d164b 100644 --- a/config/rootfiles/packages/libvirt +++ b/config/rootfiles/packages/libvirt @@ -1,4 +1,5 @@ #etc/libvirt +etc/libvirt/libvirt-admin.conf etc/libvirt/libvirt.conf etc/libvirt/libvirtd.conf #etc/libvirt/nwfilter @@ -21,7 +22,9 @@ etc/libvirt/libvirtd.conf #etc/libvirt/nwfilter/qemu-announce-self.xml etc/libvirt/qemu-lockd.conf etc/libvirt/qemu.conf +etc/libvirt/virt-login-shell.conf etc/libvirt/virtlockd.conf +etc/libvirt/virtlogd.conf etc/logrotate.d/libvirtd etc/logrotate.d/libvirtd.libxl #etc/logrotate.d/libvirtd.lxc @@ -29,11 +32,16 @@ etc/logrotate.d/libvirtd.qemu #etc/logrotate.d/libvirtd.uml etc/rc.d/init.d/libvirt-guests etc/rc.d/init.d/libvirtd +etc/rc.d/init.d/virtlogd usr/bin/virsh +usr/bin/virt-admin usr/bin/virt-host-validate +usr/bin/virt-login-shell usr/bin/virt-pki-validate usr/bin/virt-xml-validate #usr/include/libvirt +#usr/include/libvirt/libvirt-admin.h +#usr/include/libvirt/libvirt-common.h #usr/include/libvirt/libvirt-domain-snapshot.h #usr/include/libvirt/libvirt-domain.h #usr/include/libvirt/libvirt-event.h @@ -49,23 +57,25 @@ usr/bin/virt-xml-validate #usr/include/libvirt/libvirt-stream.h #usr/include/libvirt/libvirt.h #usr/include/libvirt/virterror.h +#usr/lib/libnss_libvirt.la +usr/lib/libnss_libvirt.so.2 #usr/lib/libvirt #usr/lib/libvirt-admin.la #usr/lib/libvirt-admin.so usr/lib/libvirt-admin.so.0 -usr/lib/libvirt-admin.so.0.1002.18 +usr/lib/libvirt-admin.so.0.2001.0 #usr/lib/libvirt-lxc.la #usr/lib/libvirt-lxc.so usr/lib/libvirt-lxc.so.0 -usr/lib/libvirt-lxc.so.0.1002.18 +usr/lib/libvirt-lxc.so.0.2001.0 #usr/lib/libvirt-qemu.la #usr/lib/libvirt-qemu.so usr/lib/libvirt-qemu.so.0 -usr/lib/libvirt-qemu.so.0.1002.18 +usr/lib/libvirt-qemu.so.0.2001.0 #usr/lib/libvirt.la #usr/lib/libvirt.so usr/lib/libvirt.so.0 -usr/lib/libvirt.so.0.1002.18 +usr/lib/libvirt.so.0.2001.0 #usr/lib/libvirt/connection-driver #usr/lib/libvirt/connection-driver/libvirt_driver_interface.la usr/lib/libvirt/connection-driver/libvirt_driver_interface.so @@ -82,6 +92,7 @@ usr/lib/libvirt/connection-driver/libvirt_driver_storage.so #usr/lib/libvirt/lock-driver #usr/lib/libvirt/lock-driver/lockd.la usr/lib/libvirt/lock-driver/lockd.so +#usr/lib/pkgconfig/libvirt-admin.pc #usr/lib/pkgconfig/libvirt-lxc.pc #usr/lib/pkgconfig/libvirt-qemu.pc #usr/lib/pkgconfig/libvirt.pc @@ -90,6 +101,7 @@ usr/lib/sysctl.d/60-libvirtd.conf usr/libexec/libvirt_iohelper usr/sbin/libvirtd usr/sbin/virtlockd +usr/sbin/virtlogd #usr/share/augeas #usr/share/augeas/lenses #usr/share/augeas/lenses/libvirt_lockd.aug @@ -100,137 +112,150 @@ usr/sbin/virtlockd #usr/share/augeas/lenses/tests/test_libvirtd.aug #usr/share/augeas/lenses/tests/test_libvirtd_qemu.aug #usr/share/augeas/lenses/tests/test_virtlockd.aug +#usr/share/augeas/lenses/tests/test_virtlogd.aug #usr/share/augeas/lenses/virtlockd.aug -#usr/share/doc/libvirt-1.2.18.3 -#usr/share/doc/libvirt-1.2.18.3/html -#usr/share/doc/libvirt-1.2.18.3/html/32favicon.png -#usr/share/doc/libvirt-1.2.18.3/html/404.html -#usr/share/doc/libvirt-1.2.18.3/html/acl.html -#usr/share/doc/libvirt-1.2.18.3/html/aclpolkit.html -#usr/share/doc/libvirt-1.2.18.3/html/api.html -#usr/share/doc/libvirt-1.2.18.3/html/api_extension.html -#usr/share/doc/libvirt-1.2.18.3/html/apps.html -#usr/share/doc/libvirt-1.2.18.3/html/archdomain.html -#usr/share/doc/libvirt-1.2.18.3/html/architecture.gif -#usr/share/doc/libvirt-1.2.18.3/html/architecture.html -#usr/share/doc/libvirt-1.2.18.3/html/archnetwork.html -#usr/share/doc/libvirt-1.2.18.3/html/archnode.html -#usr/share/doc/libvirt-1.2.18.3/html/archstorage.html -#usr/share/doc/libvirt-1.2.18.3/html/auditlog.html -#usr/share/doc/libvirt-1.2.18.3/html/auth.html -#usr/share/doc/libvirt-1.2.18.3/html/bindings.html -#usr/share/doc/libvirt-1.2.18.3/html/bugs.html -#usr/share/doc/libvirt-1.2.18.3/html/cgroups.html -#usr/share/doc/libvirt-1.2.18.3/html/compiling.html -#usr/share/doc/libvirt-1.2.18.3/html/contact.html -#usr/share/doc/libvirt-1.2.18.3/html/csharp.html -#usr/share/doc/libvirt-1.2.18.3/html/deployment.html -#usr/share/doc/libvirt-1.2.18.3/html/devguide.html -#usr/share/doc/libvirt-1.2.18.3/html/docs.html -#usr/share/doc/libvirt-1.2.18.3/html/downloads.html -#usr/share/doc/libvirt-1.2.18.3/html/drivers.html -#usr/share/doc/libvirt-1.2.18.3/html/drvbhyve.html -#usr/share/doc/libvirt-1.2.18.3/html/drvesx.html -#usr/share/doc/libvirt-1.2.18.3/html/drvhyperv.html -#usr/share/doc/libvirt-1.2.18.3/html/drvlxc.html -#usr/share/doc/libvirt-1.2.18.3/html/drvopenvz.html -#usr/share/doc/libvirt-1.2.18.3/html/drvparallels.html -#usr/share/doc/libvirt-1.2.18.3/html/drvphyp.html -#usr/share/doc/libvirt-1.2.18.3/html/drvqemu.html -#usr/share/doc/libvirt-1.2.18.3/html/drvremote.html -#usr/share/doc/libvirt-1.2.18.3/html/drvtest.html -#usr/share/doc/libvirt-1.2.18.3/html/drvuml.html -#usr/share/doc/libvirt-1.2.18.3/html/drvvbox.html -#usr/share/doc/libvirt-1.2.18.3/html/drvvmware.html -#usr/share/doc/libvirt-1.2.18.3/html/drvxen.html -#usr/share/doc/libvirt-1.2.18.3/html/errors.html -#usr/share/doc/libvirt-1.2.18.3/html/et.png -#usr/share/doc/libvirt-1.2.18.3/html/firewall.html -#usr/share/doc/libvirt-1.2.18.3/html/footer_corner.png -#usr/share/doc/libvirt-1.2.18.3/html/footer_pattern.png -#usr/share/doc/libvirt-1.2.18.3/html/format.html -#usr/share/doc/libvirt-1.2.18.3/html/formatcaps.html -#usr/share/doc/libvirt-1.2.18.3/html/formatdomain.html -#usr/share/doc/libvirt-1.2.18.3/html/formatdomaincaps.html -#usr/share/doc/libvirt-1.2.18.3/html/formatnetwork.html -#usr/share/doc/libvirt-1.2.18.3/html/formatnode.html -#usr/share/doc/libvirt-1.2.18.3/html/formatnwfilter.html -#usr/share/doc/libvirt-1.2.18.3/html/formatsecret.html -#usr/share/doc/libvirt-1.2.18.3/html/formatsnapshot.html -#usr/share/doc/libvirt-1.2.18.3/html/formatstorage.html -#usr/share/doc/libvirt-1.2.18.3/html/formatstorageencryption.html -#usr/share/doc/libvirt-1.2.18.3/html/generic.css -#usr/share/doc/libvirt-1.2.18.3/html/goals.html -#usr/share/doc/libvirt-1.2.18.3/html/governance.html -#usr/share/doc/libvirt-1.2.18.3/html/hacking.html -#usr/share/doc/libvirt-1.2.18.3/html/hooks.html -#usr/share/doc/libvirt-1.2.18.3/html/html -#usr/share/doc/libvirt-1.2.18.3/html/html/home.png -#usr/share/doc/libvirt-1.2.18.3/html/html/index.html -#usr/share/doc/libvirt-1.2.18.3/html/html/left.png -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-domain-snapshot.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-domain.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-event.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-host.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-interface.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-network.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-nodedev.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-nwfilter.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-secret.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-storage.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-stream.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-virterror.html -#usr/share/doc/libvirt-1.2.18.3/html/html/right.png -#usr/share/doc/libvirt-1.2.18.3/html/html/up.png -#usr/share/doc/libvirt-1.2.18.3/html/hvsupport.html -#usr/share/doc/libvirt-1.2.18.3/html/index.html -#usr/share/doc/libvirt-1.2.18.3/html/internals -#usr/share/doc/libvirt-1.2.18.3/html/internals.html -#usr/share/doc/libvirt-1.2.18.3/html/internals/command.html -#usr/share/doc/libvirt-1.2.18.3/html/internals/locking.html -#usr/share/doc/libvirt-1.2.18.3/html/internals/oomtesting.html -#usr/share/doc/libvirt-1.2.18.3/html/internals/rpc.html -#usr/share/doc/libvirt-1.2.18.3/html/intro.html -#usr/share/doc/libvirt-1.2.18.3/html/java.html -#usr/share/doc/libvirt-1.2.18.3/html/libvirt-daemon-arch.png -#usr/share/doc/libvirt-1.2.18.3/html/libvirt-driver-arch.png -#usr/share/doc/libvirt-1.2.18.3/html/libvirt-header-bg.png -#usr/share/doc/libvirt-1.2.18.3/html/libvirt-header-logo.png -#usr/share/doc/libvirt-1.2.18.3/html/libvirt-net-logical.png -#usr/share/doc/libvirt-1.2.18.3/html/libvirt-net-physical.png -#usr/share/doc/libvirt-1.2.18.3/html/libvirt-object-model.png -#usr/share/doc/libvirt-1.2.18.3/html/libvirt.css -#usr/share/doc/libvirt-1.2.18.3/html/libvirtLogo.png -#usr/share/doc/libvirt-1.2.18.3/html/locking-lockd.html -#usr/share/doc/libvirt-1.2.18.3/html/locking-sanlock.html -#usr/share/doc/libvirt-1.2.18.3/html/locking.html -#usr/share/doc/libvirt-1.2.18.3/html/logging.html -#usr/share/doc/libvirt-1.2.18.3/html/madeWith.png -#usr/share/doc/libvirt-1.2.18.3/html/main.css -#usr/share/doc/libvirt-1.2.18.3/html/migration-managed-direct.png -#usr/share/doc/libvirt-1.2.18.3/html/migration-managed-p2p.png -#usr/share/doc/libvirt-1.2.18.3/html/migration-native.png -#usr/share/doc/libvirt-1.2.18.3/html/migration-tunnel.png -#usr/share/doc/libvirt-1.2.18.3/html/migration-unmanaged-direct.png -#usr/share/doc/libvirt-1.2.18.3/html/migration.html -#usr/share/doc/libvirt-1.2.18.3/html/news.html -#usr/share/doc/libvirt-1.2.18.3/html/node.gif -#usr/share/doc/libvirt-1.2.18.3/html/pending.html -#usr/share/doc/libvirt-1.2.18.3/html/php.html -#usr/share/doc/libvirt-1.2.18.3/html/python.html -#usr/share/doc/libvirt-1.2.18.3/html/relatedlinks.html -#usr/share/doc/libvirt-1.2.18.3/html/remote.html -#usr/share/doc/libvirt-1.2.18.3/html/secureusage.html -#usr/share/doc/libvirt-1.2.18.3/html/securityprocess.html -#usr/share/doc/libvirt-1.2.18.3/html/sitemap.html -#usr/share/doc/libvirt-1.2.18.3/html/storage.html -#usr/share/doc/libvirt-1.2.18.3/html/testapi.html -#usr/share/doc/libvirt-1.2.18.3/html/testsuites.html -#usr/share/doc/libvirt-1.2.18.3/html/testtck.html -#usr/share/doc/libvirt-1.2.18.3/html/todo.html -#usr/share/doc/libvirt-1.2.18.3/html/uri.html -#usr/share/doc/libvirt-1.2.18.3/html/virshcmdref.html -#usr/share/doc/libvirt-1.2.18.3/html/windows.html +#usr/share/augeas/lenses/virtlogd.aug +#usr/share/doc/libvirt-2.1.0 +#usr/share/doc/libvirt-2.1.0/html +#usr/share/doc/libvirt-2.1.0/html/32favicon.png +#usr/share/doc/libvirt-2.1.0/html/404.html +#usr/share/doc/libvirt-2.1.0/html/acl.html +#usr/share/doc/libvirt-2.1.0/html/aclpolkit.html +#usr/share/doc/libvirt-2.1.0/html/api.html +#usr/share/doc/libvirt-2.1.0/html/api_extension.html +#usr/share/doc/libvirt-2.1.0/html/apps.html +#usr/share/doc/libvirt-2.1.0/html/archdomain.html +#usr/share/doc/libvirt-2.1.0/html/architecture.gif +#usr/share/doc/libvirt-2.1.0/html/architecture.html +#usr/share/doc/libvirt-2.1.0/html/archnetwork.html +#usr/share/doc/libvirt-2.1.0/html/archnode.html +#usr/share/doc/libvirt-2.1.0/html/archstorage.html +#usr/share/doc/libvirt-2.1.0/html/auditlog.html +#usr/share/doc/libvirt-2.1.0/html/auth.html +#usr/share/doc/libvirt-2.1.0/html/bindings.html +#usr/share/doc/libvirt-2.1.0/html/bugs.html +#usr/share/doc/libvirt-2.1.0/html/cgroups.html +#usr/share/doc/libvirt-2.1.0/html/compiling.html +#usr/share/doc/libvirt-2.1.0/html/contact.html +#usr/share/doc/libvirt-2.1.0/html/csharp.html +#usr/share/doc/libvirt-2.1.0/html/deployment.html +#usr/share/doc/libvirt-2.1.0/html/devguide.html +#usr/share/doc/libvirt-2.1.0/html/docs.html +#usr/share/doc/libvirt-2.1.0/html/downloads.html +#usr/share/doc/libvirt-2.1.0/html/drivers.html +#usr/share/doc/libvirt-2.1.0/html/drvbhyve.html +#usr/share/doc/libvirt-2.1.0/html/drvesx.html +#usr/share/doc/libvirt-2.1.0/html/drvhyperv.html +#usr/share/doc/libvirt-2.1.0/html/drvlxc.html +#usr/share/doc/libvirt-2.1.0/html/drvopenvz.html +#usr/share/doc/libvirt-2.1.0/html/drvphyp.html +#usr/share/doc/libvirt-2.1.0/html/drvqemu.html +#usr/share/doc/libvirt-2.1.0/html/drvremote.html +#usr/share/doc/libvirt-2.1.0/html/drvtest.html +#usr/share/doc/libvirt-2.1.0/html/drvuml.html +#usr/share/doc/libvirt-2.1.0/html/drvvbox.html +#usr/share/doc/libvirt-2.1.0/html/drvvirtuozzo.html +#usr/share/doc/libvirt-2.1.0/html/drvvmware.html +#usr/share/doc/libvirt-2.1.0/html/drvxen.html +#usr/share/doc/libvirt-2.1.0/html/errors.html +#usr/share/doc/libvirt-2.1.0/html/firewall.html +#usr/share/doc/libvirt-2.1.0/html/format.html +#usr/share/doc/libvirt-2.1.0/html/formatcaps.html +#usr/share/doc/libvirt-2.1.0/html/formatdomain.html +#usr/share/doc/libvirt-2.1.0/html/formatdomaincaps.html +#usr/share/doc/libvirt-2.1.0/html/formatnetwork.html +#usr/share/doc/libvirt-2.1.0/html/formatnode.html +#usr/share/doc/libvirt-2.1.0/html/formatnwfilter.html +#usr/share/doc/libvirt-2.1.0/html/formatsecret.html +#usr/share/doc/libvirt-2.1.0/html/formatsnapshot.html +#usr/share/doc/libvirt-2.1.0/html/formatstorage.html +#usr/share/doc/libvirt-2.1.0/html/formatstorageencryption.html +#usr/share/doc/libvirt-2.1.0/html/generic.css +#usr/share/doc/libvirt-2.1.0/html/goals.html +#usr/share/doc/libvirt-2.1.0/html/governance.html +#usr/share/doc/libvirt-2.1.0/html/hacking.html +#usr/share/doc/libvirt-2.1.0/html/hooks.html +#usr/share/doc/libvirt-2.1.0/html/html +#usr/share/doc/libvirt-2.1.0/html/html/home.png +#usr/share/doc/libvirt-2.1.0/html/html/index.html +#usr/share/doc/libvirt-2.1.0/html/html/left.png +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-common.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-domain-snapshot.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-domain.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-event.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-host.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-interface.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-network.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-nodedev.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-nwfilter.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-secret.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-storage.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-stream.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-virterror.html +#usr/share/doc/libvirt-2.1.0/html/html/right.png +#usr/share/doc/libvirt-2.1.0/html/html/up.png +#usr/share/doc/libvirt-2.1.0/html/hvsupport.html +#usr/share/doc/libvirt-2.1.0/html/index.html +#usr/share/doc/libvirt-2.1.0/html/internals +#usr/share/doc/libvirt-2.1.0/html/internals.html +#usr/share/doc/libvirt-2.1.0/html/internals/command.html +#usr/share/doc/libvirt-2.1.0/html/internals/eventloop.html +#usr/share/doc/libvirt-2.1.0/html/internals/locking.html +#usr/share/doc/libvirt-2.1.0/html/internals/oomtesting.html +#usr/share/doc/libvirt-2.1.0/html/internals/rpc.html +#usr/share/doc/libvirt-2.1.0/html/intro.html +#usr/share/doc/libvirt-2.1.0/html/java.html +#usr/share/doc/libvirt-2.1.0/html/libvirt-daemon-arch.png +#usr/share/doc/libvirt-2.1.0/html/libvirt-driver-arch.png +#usr/share/doc/libvirt-2.1.0/html/libvirt-header-bg.png +#usr/share/doc/libvirt-2.1.0/html/libvirt-header-logo.png +#usr/share/doc/libvirt-2.1.0/html/libvirt-net-logical.png +#usr/share/doc/libvirt-2.1.0/html/libvirt-net-physical.png +#usr/share/doc/libvirt-2.1.0/html/libvirt-object-model.png +#usr/share/doc/libvirt-2.1.0/html/libvirt.css +#usr/share/doc/libvirt-2.1.0/html/libvirtLogo.png +#usr/share/doc/libvirt-2.1.0/html/locking-lockd.html +#usr/share/doc/libvirt-2.1.0/html/locking-sanlock.html +#usr/share/doc/libvirt-2.1.0/html/locking.html +#usr/share/doc/libvirt-2.1.0/html/logging.html +#usr/share/doc/libvirt-2.1.0/html/madeWith.png +#usr/share/doc/libvirt-2.1.0/html/main.css +#usr/share/doc/libvirt-2.1.0/html/migration-managed-direct.png +#usr/share/doc/libvirt-2.1.0/html/migration-managed-p2p.png +#usr/share/doc/libvirt-2.1.0/html/migration-native.png +#usr/share/doc/libvirt-2.1.0/html/migration-tunnel.png +#usr/share/doc/libvirt-2.1.0/html/migration-unmanaged-direct.png +#usr/share/doc/libvirt-2.1.0/html/migration.html +#usr/share/doc/libvirt-2.1.0/html/news-2005.html +#usr/share/doc/libvirt-2.1.0/html/news-2006.html +#usr/share/doc/libvirt-2.1.0/html/news-2007.html +#usr/share/doc/libvirt-2.1.0/html/news-2008.html +#usr/share/doc/libvirt-2.1.0/html/news-2009.html +#usr/share/doc/libvirt-2.1.0/html/news-2010.html +#usr/share/doc/libvirt-2.1.0/html/news-2011.html +#usr/share/doc/libvirt-2.1.0/html/news-2012.html +#usr/share/doc/libvirt-2.1.0/html/news-2013.html +#usr/share/doc/libvirt-2.1.0/html/news-2014.html +#usr/share/doc/libvirt-2.1.0/html/news-2015.html +#usr/share/doc/libvirt-2.1.0/html/news.html +#usr/share/doc/libvirt-2.1.0/html/node.gif +#usr/share/doc/libvirt-2.1.0/html/nss.html +#usr/share/doc/libvirt-2.1.0/html/pending.html +#usr/share/doc/libvirt-2.1.0/html/php.html +#usr/share/doc/libvirt-2.1.0/html/python.html +#usr/share/doc/libvirt-2.1.0/html/relatedlinks.html +#usr/share/doc/libvirt-2.1.0/html/remote.html +#usr/share/doc/libvirt-2.1.0/html/secureusage.html +#usr/share/doc/libvirt-2.1.0/html/securityprocess.html +#usr/share/doc/libvirt-2.1.0/html/sitemap.html +#usr/share/doc/libvirt-2.1.0/html/storage.html +#usr/share/doc/libvirt-2.1.0/html/testapi.html +#usr/share/doc/libvirt-2.1.0/html/testsuites.html +#usr/share/doc/libvirt-2.1.0/html/testtck.html +#usr/share/doc/libvirt-2.1.0/html/todo.html +#usr/share/doc/libvirt-2.1.0/html/uri.html +#usr/share/doc/libvirt-2.1.0/html/virshcmdref.html +#usr/share/doc/libvirt-2.1.0/html/windows.html #usr/share/gtk-doc/html/libvirt #usr/share/gtk-doc/html/libvirt/general.html #usr/share/gtk-doc/html/libvirt/home.png @@ -243,6 +268,7 @@ usr/sbin/virtlockd #usr/share/gtk-doc/html/libvirt/up.png #usr/share/libvirt #usr/share/libvirt/api +usr/share/libvirt/api/libvirt-admin-api.xml usr/share/libvirt/api/libvirt-api.xml usr/share/libvirt/api/libvirt-lxc-api.xml usr/share/libvirt/api/libvirt-qemu-api.xml @@ -265,13 +291,17 @@ usr/share/libvirt/schemas/storagecommon.rng usr/share/libvirt/schemas/storagepool.rng usr/share/libvirt/schemas/storagevol.rng #usr/share/man/man1/virsh.1 +#usr/share/man/man1/virt-admin.1 #usr/share/man/man1/virt-host-validate.1 +#usr/share/man/man1/virt-login-shell.1 #usr/share/man/man1/virt-pki-validate.1 #usr/share/man/man1/virt-xml-validate.1 #usr/share/man/man8/libvirtd.8 #usr/share/man/man8/virtlockd.8 +#usr/share/man/man8/virtlogd.8 #var/cache/libvirt #var/cache/libvirt/qemu +var/ipfire/backup/addons/includes/libvirt #var/lib/libvirt #var/lib/libvirt/boot #var/lib/libvirt/filesystems @@ -283,6 +313,3 @@ usr/share/libvirt/schemas/storagevol.rng #var/log/libvirt/lxc #var/log/libvirt/qemu #var/log/libvirt/uml -etc/rc.d/init.d/libvirt-guests -etc/rc.d/init.d/libvirtd -var/ipfire/backup/addons/includes/libvirt diff --git a/lfs/libvirt b/lfs/libvirt index 854c52c..6a28b7b 100644 --- a/lfs/libvirt +++ b/lfs/libvirt @@ -24,16 +24,16 @@
include Config
-VER = 1.2.18.3 +VER = 2.1.0
THISAPP = libvirt-$(VER) -DL_FILE = $(THISAPP).tar.gz +DL_FILE = $(THISAPP).tar.xz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) SUP_ARCH = i586 x86_64 PROG = libvirt -PAK_VER = 9 +PAK_VER = 10
DEPS = "libpciaccess libyajl ncat qemu"
@@ -45,7 +45,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = bcb0738ff66972ddb25cfe0d086c5c37 +$(DL_FILE)_MD5 = fd1c054a8b59235e877efb728de79386
install : $(TARGET) check : $(patsubst %,$(DIR_CHK)/%,$(objects)) @@ -76,7 +76,7 @@ $(subst %,%_MD5,$(objects)) :
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) - @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar Jxf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/libvirt/0001-Change-default-behavior-of-libvirt-guests.sh-for-IPF.patch cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/libvirt/0002-Change-options-in-libvirtd.conf-for-IPFire.patch cd $(DIR_APP) && ./configure --prefix=/usr --localstatedir=/var --sysconfdir=/etc \ @@ -90,6 +90,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE) cd $(DIR_APP) && make install install -v -m 754 $(DIR_SRC)/src/initscripts/init.d/libvirtd /etc/rc.d/init.d/libvirtd + install -v -m 754 $(DIR_SRC)/src/initscripts/init.d/virtlogd /etc/rc.d/init.d/virtlogd mv /usr/libexec/libvirt-guests.sh /etc/rc.d/init.d/libvirt-guests # Backup install -v -m 644 $(DIR_SRC)/config/backup/includes/libvirt /var/ipfire/backup/addons/includes/libvirt diff --git a/src/initscripts/init.d/virtlogd b/src/initscripts/init.d/virtlogd new file mode 100644 index 0000000..1482686 --- /dev/null +++ b/src/initscripts/init.d/virtlogd @@ -0,0 +1,46 @@ +#!/bin/sh +######################################################################## +# Begin $rc_base/init.d/virtlogd +# +# Description : virtlogd init script +# +# Authors : Jonatan Schlag - jonatan.schlag@ipfire.org +# +# Version : 01.00 +# +# Notes : +# +######################################################################## + +. /etc/sysconfig/rc +. $rc_functions + +case $1 in + start) + boot_mesg "Starting virtlogd Daemon..." + loadproc /usr/sbin/virtlogd -d -p /var/run/virtlogd.pid + + ;; + + stop) + boot_mesg "Stopping virtlogd Daemon..." + killproc /usr/sbin/virtlogd + ;; + + restart) + boot_mesg "Restart virtlogd Daemon..." + kill -10 $(cat /var/run/virtlogd.pid) + evaluate_retval + ;; + + status) + statusproc /usr/sbin/virtlogd + ;; + + *) + echo "Usage: $0 {start|stop|restart|status}" + exit 1 + ;; +esac + +# End $rc_base/init.d/virtlogd diff --git a/src/paks/libvirt/install.sh b/src/paks/libvirt/install.sh index 4a693b9..a11caa4 100644 --- a/src/paks/libvirt/install.sh +++ b/src/paks/libvirt/install.sh @@ -45,7 +45,13 @@ chown -R nobody:kvm /var/lib/libvirt/images # restore the backup restore_backup ${NAME}
+start_service virtlogd start_service --background libvirtd + +ln -svf /etc/init.d/virtlogd /etc/rc.d/rc0.d/K21virtlogd +ln -svf /etc/init.d/virtlogd /etc/rc.d/rc3.d/S69virtlogd +ln -svf /etc/init.d/virtlogd /etc/rc.d/rc6.d/K21virtlogd + ln -svf /etc/init.d/libvirtd /etc/rc.d/rc0.d/K20libvirtd ln -svf /etc/init.d/libvirtd /etc/rc.d/rc3.d/S70libvirtd ln -svf /etc/init.d/libvirtd /etc/rc.d/rc6.d/K20libvirtd diff --git a/src/paks/libvirt/uninstall.sh b/src/paks/libvirt/uninstall.sh index 23c86e5..0d96e36 100644 --- a/src/paks/libvirt/uninstall.sh +++ b/src/paks/libvirt/uninstall.sh @@ -23,7 +23,7 @@ # . /opt/pakfire/lib/functions.sh stop_service libvirtd - +stop_service virtlogd extract_backup_includes make_backup ${NAME}
@@ -31,4 +31,5 @@ remove_files
rm -f /etc/rc.d/rc*.d/*libvirt-guests rm -f /etc/rc.d/rc*.d/*libvirtd +rm -f /etc/rc.d/rc*.d/*virtlogd
diff --git a/src/paks/libvirt/update.sh b/src/paks/libvirt/update.sh index d0b3ba1..fd0ca97 100644 --- a/src/paks/libvirt/update.sh +++ b/src/paks/libvirt/update.sh @@ -22,6 +22,60 @@ ############################################################################ # . /opt/pakfire/lib/functions.sh -./uninstall.sh -./install.sh + +# +#uninstall +# +stop_service libvirtd +extract_backup_includes +make_backup ${NAME} + +remove_files + +rm -f /etc/rc.d/rc*.d/*libvirt-guests +rm -f /etc/rc.d/rc*.d/*libvirtd +rm -f /etc/rc.d/rc*.d/*virtlogd + +# +#install +# + +# creates a new user and group called libvirt-remote if they not exist +getent group libvirt-remote >/dev/null || groupadd libvirt-remote +getent passwd libvirt-remote >/dev/null || \ +useradd -m -g libvirt-remote -s /bin/bash "libvirt-remote" + +extract_files + +# create diretorys in var +mkdir -p /var/cache/libvirt/qemu \ +/var/lib/libvirt/boot \ +/var/lib/libvirt/filesystems \ +/var/lib/libvirt/images \ +/var/lib/libvirt/lockd/files \ +/var/lib/libvirt/qemu \ +/var/log/libvirt/qemu +# set the permissions +chown -R nobody:kvm /var/cache/libvirt/qemu +chown -R nobody:kvm /var/lib/libvirt/qemu +chown -R nobody:kvm /var/lib/libvirt/images +# restore the backup +restore_backup ${NAME} + +#restart virtlogd to use the new version +/etc/init.d/virtlogd restart + +start_service --background libvirtd + +ln -svf /etc/init.d/virtlogd /etc/rc.d/rc0.d/K21virtlogd +ln -svf /etc/init.d/virtlogd /etc/rc.d/rc3.d/S69virtlogd +ln -svf /etc/init.d/virtlogd /etc/rc.d/rc6.d/K21virtlogd + +ln -svf /etc/init.d/libvirtd /etc/rc.d/rc0.d/K20libvirtd +ln -svf /etc/init.d/libvirtd /etc/rc.d/rc3.d/S70libvirtd +ln -svf /etc/init.d/libvirtd /etc/rc.d/rc6.d/K20libvirtd + +ln -svf /etc/init.d/libvirt-guests /etc/rc.d/rc0.d/K19libvirt-guests +ln -svf /etc/init.d/libvirt-guests /etc/rc.d/rc3.d/S71libvirt-guests +ln -svf /etc/init.d/libvirt-guests /etc/rc.d/rc6.d/K19libvirt-guests
Hi Jonatan
I thinked again about the libvirt-guests script. My opinion is that we should let it active. The script shuts all guests down if ipfire will shutdown. This is really useful.
My described situation that there might be dependencies between the VMs and in case of that it is really important to shutdown the VMs in the right order is a special situation and not the standard. Maybe we should write an article about this case in our wiki. So if there is an user who builds dependencies between VMs have something in his hand to solve the problem.
-
Daniel
Am 28.08.2016 um 19:59 schrieb Jonatan Schlag:
This is the update of libvirt to the latest version 2.1. The most important change from a packager view is the new virtlogd daemon. This daemon handles the qemu output and wrote it to log files.
The require some changes:
- A new init script to start, stop restart the daemon called virtlogd.
The daemon is restart with SIGUSR1 (this is important because the daemon keeps all pipelines etc. open).
This introduces a problem with the uninstall.sh install.sh script. It is not possible to stop the daemon while virtual machines are running, so the script update.sh execute from now not uninstall.sh and install.sh instead it contains all steps from uninstall.sh install.sh expect the start / stop routine for virtlogd. The daemon is just restarted after the update, which makes sure that all changes take effect.
- new symlinks in the uninstall.sh and install.sh script and some root
file changes because of the new virtlogd init script.
- the archive format changes from tar.gz to tar.xz
For Changelogs see:
https://libvirt.org/news-2015.html https://libvirt.org/news.html (2017 and later: https://libvirt.org/news-2016.html )
Signed-off-by: Jonatan Schlag jonatan.schlag@ipfire.org
config/rootfiles/common/i586/initscripts | 1 + config/rootfiles/common/x86_64/initscripts | 1 + config/rootfiles/packages/libvirt | 301 ++++++++++++++++------------- lfs/libvirt | 11 +- src/initscripts/init.d/virtlogd | 46 +++++ src/paks/libvirt/install.sh | 6 + src/paks/libvirt/uninstall.sh | 3 +- src/paks/libvirt/update.sh | 58 +++++- 8 files changed, 282 insertions(+), 145 deletions(-) create mode 100644 src/initscripts/init.d/virtlogd
diff --git a/config/rootfiles/common/i586/initscripts b/config/rootfiles/common/i586/initscripts index 443dee3..ee5a4ab 100644 --- a/config/rootfiles/common/i586/initscripts +++ b/config/rootfiles/common/i586/initscripts @@ -141,6 +141,7 @@ etc/rc.d/init.d/udev_retry etc/rc.d/init.d/upnpd #etc/rc.d/init.d/vdr #etc/rc.d/init.d/vdradmin +#etc/rc.d/init.d/virtlogd etc/rc.d/init.d/vnstat #etc/rc.d/init.d/vsftpd etc/rc.d/init.d/waitdrives diff --git a/config/rootfiles/common/x86_64/initscripts b/config/rootfiles/common/x86_64/initscripts index 443dee3..ee5a4ab 100644 --- a/config/rootfiles/common/x86_64/initscripts +++ b/config/rootfiles/common/x86_64/initscripts @@ -141,6 +141,7 @@ etc/rc.d/init.d/udev_retry etc/rc.d/init.d/upnpd #etc/rc.d/init.d/vdr #etc/rc.d/init.d/vdradmin +#etc/rc.d/init.d/virtlogd etc/rc.d/init.d/vnstat #etc/rc.d/init.d/vsftpd etc/rc.d/init.d/waitdrives diff --git a/config/rootfiles/packages/libvirt b/config/rootfiles/packages/libvirt index b193987..d2d164b 100644 --- a/config/rootfiles/packages/libvirt +++ b/config/rootfiles/packages/libvirt @@ -1,4 +1,5 @@ #etc/libvirt +etc/libvirt/libvirt-admin.conf etc/libvirt/libvirt.conf etc/libvirt/libvirtd.conf #etc/libvirt/nwfilter @@ -21,7 +22,9 @@ etc/libvirt/libvirtd.conf #etc/libvirt/nwfilter/qemu-announce-self.xml etc/libvirt/qemu-lockd.conf etc/libvirt/qemu.conf +etc/libvirt/virt-login-shell.conf etc/libvirt/virtlockd.conf +etc/libvirt/virtlogd.conf etc/logrotate.d/libvirtd etc/logrotate.d/libvirtd.libxl #etc/logrotate.d/libvirtd.lxc @@ -29,11 +32,16 @@ etc/logrotate.d/libvirtd.qemu #etc/logrotate.d/libvirtd.uml etc/rc.d/init.d/libvirt-guests etc/rc.d/init.d/libvirtd +etc/rc.d/init.d/virtlogd usr/bin/virsh +usr/bin/virt-admin usr/bin/virt-host-validate +usr/bin/virt-login-shell usr/bin/virt-pki-validate usr/bin/virt-xml-validate #usr/include/libvirt +#usr/include/libvirt/libvirt-admin.h +#usr/include/libvirt/libvirt-common.h #usr/include/libvirt/libvirt-domain-snapshot.h #usr/include/libvirt/libvirt-domain.h #usr/include/libvirt/libvirt-event.h @@ -49,23 +57,25 @@ usr/bin/virt-xml-validate #usr/include/libvirt/libvirt-stream.h #usr/include/libvirt/libvirt.h #usr/include/libvirt/virterror.h +#usr/lib/libnss_libvirt.la +usr/lib/libnss_libvirt.so.2 #usr/lib/libvirt #usr/lib/libvirt-admin.la #usr/lib/libvirt-admin.so usr/lib/libvirt-admin.so.0 -usr/lib/libvirt-admin.so.0.1002.18 +usr/lib/libvirt-admin.so.0.2001.0 #usr/lib/libvirt-lxc.la #usr/lib/libvirt-lxc.so usr/lib/libvirt-lxc.so.0 -usr/lib/libvirt-lxc.so.0.1002.18 +usr/lib/libvirt-lxc.so.0.2001.0 #usr/lib/libvirt-qemu.la #usr/lib/libvirt-qemu.so usr/lib/libvirt-qemu.so.0 -usr/lib/libvirt-qemu.so.0.1002.18 +usr/lib/libvirt-qemu.so.0.2001.0 #usr/lib/libvirt.la #usr/lib/libvirt.so usr/lib/libvirt.so.0 -usr/lib/libvirt.so.0.1002.18 +usr/lib/libvirt.so.0.2001.0 #usr/lib/libvirt/connection-driver #usr/lib/libvirt/connection-driver/libvirt_driver_interface.la usr/lib/libvirt/connection-driver/libvirt_driver_interface.so @@ -82,6 +92,7 @@ usr/lib/libvirt/connection-driver/libvirt_driver_storage.so #usr/lib/libvirt/lock-driver #usr/lib/libvirt/lock-driver/lockd.la usr/lib/libvirt/lock-driver/lockd.so +#usr/lib/pkgconfig/libvirt-admin.pc #usr/lib/pkgconfig/libvirt-lxc.pc #usr/lib/pkgconfig/libvirt-qemu.pc #usr/lib/pkgconfig/libvirt.pc @@ -90,6 +101,7 @@ usr/lib/sysctl.d/60-libvirtd.conf usr/libexec/libvirt_iohelper usr/sbin/libvirtd usr/sbin/virtlockd +usr/sbin/virtlogd #usr/share/augeas #usr/share/augeas/lenses #usr/share/augeas/lenses/libvirt_lockd.aug @@ -100,137 +112,150 @@ usr/sbin/virtlockd #usr/share/augeas/lenses/tests/test_libvirtd.aug #usr/share/augeas/lenses/tests/test_libvirtd_qemu.aug #usr/share/augeas/lenses/tests/test_virtlockd.aug +#usr/share/augeas/lenses/tests/test_virtlogd.aug #usr/share/augeas/lenses/virtlockd.aug -#usr/share/doc/libvirt-1.2.18.3 -#usr/share/doc/libvirt-1.2.18.3/html -#usr/share/doc/libvirt-1.2.18.3/html/32favicon.png -#usr/share/doc/libvirt-1.2.18.3/html/404.html -#usr/share/doc/libvirt-1.2.18.3/html/acl.html -#usr/share/doc/libvirt-1.2.18.3/html/aclpolkit.html -#usr/share/doc/libvirt-1.2.18.3/html/api.html -#usr/share/doc/libvirt-1.2.18.3/html/api_extension.html -#usr/share/doc/libvirt-1.2.18.3/html/apps.html -#usr/share/doc/libvirt-1.2.18.3/html/archdomain.html -#usr/share/doc/libvirt-1.2.18.3/html/architecture.gif -#usr/share/doc/libvirt-1.2.18.3/html/architecture.html -#usr/share/doc/libvirt-1.2.18.3/html/archnetwork.html -#usr/share/doc/libvirt-1.2.18.3/html/archnode.html -#usr/share/doc/libvirt-1.2.18.3/html/archstorage.html -#usr/share/doc/libvirt-1.2.18.3/html/auditlog.html -#usr/share/doc/libvirt-1.2.18.3/html/auth.html -#usr/share/doc/libvirt-1.2.18.3/html/bindings.html -#usr/share/doc/libvirt-1.2.18.3/html/bugs.html -#usr/share/doc/libvirt-1.2.18.3/html/cgroups.html -#usr/share/doc/libvirt-1.2.18.3/html/compiling.html -#usr/share/doc/libvirt-1.2.18.3/html/contact.html -#usr/share/doc/libvirt-1.2.18.3/html/csharp.html -#usr/share/doc/libvirt-1.2.18.3/html/deployment.html -#usr/share/doc/libvirt-1.2.18.3/html/devguide.html -#usr/share/doc/libvirt-1.2.18.3/html/docs.html -#usr/share/doc/libvirt-1.2.18.3/html/downloads.html -#usr/share/doc/libvirt-1.2.18.3/html/drivers.html -#usr/share/doc/libvirt-1.2.18.3/html/drvbhyve.html -#usr/share/doc/libvirt-1.2.18.3/html/drvesx.html -#usr/share/doc/libvirt-1.2.18.3/html/drvhyperv.html -#usr/share/doc/libvirt-1.2.18.3/html/drvlxc.html -#usr/share/doc/libvirt-1.2.18.3/html/drvopenvz.html -#usr/share/doc/libvirt-1.2.18.3/html/drvparallels.html -#usr/share/doc/libvirt-1.2.18.3/html/drvphyp.html -#usr/share/doc/libvirt-1.2.18.3/html/drvqemu.html -#usr/share/doc/libvirt-1.2.18.3/html/drvremote.html -#usr/share/doc/libvirt-1.2.18.3/html/drvtest.html -#usr/share/doc/libvirt-1.2.18.3/html/drvuml.html -#usr/share/doc/libvirt-1.2.18.3/html/drvvbox.html -#usr/share/doc/libvirt-1.2.18.3/html/drvvmware.html -#usr/share/doc/libvirt-1.2.18.3/html/drvxen.html -#usr/share/doc/libvirt-1.2.18.3/html/errors.html -#usr/share/doc/libvirt-1.2.18.3/html/et.png -#usr/share/doc/libvirt-1.2.18.3/html/firewall.html -#usr/share/doc/libvirt-1.2.18.3/html/footer_corner.png -#usr/share/doc/libvirt-1.2.18.3/html/footer_pattern.png -#usr/share/doc/libvirt-1.2.18.3/html/format.html -#usr/share/doc/libvirt-1.2.18.3/html/formatcaps.html -#usr/share/doc/libvirt-1.2.18.3/html/formatdomain.html -#usr/share/doc/libvirt-1.2.18.3/html/formatdomaincaps.html -#usr/share/doc/libvirt-1.2.18.3/html/formatnetwork.html -#usr/share/doc/libvirt-1.2.18.3/html/formatnode.html -#usr/share/doc/libvirt-1.2.18.3/html/formatnwfilter.html -#usr/share/doc/libvirt-1.2.18.3/html/formatsecret.html -#usr/share/doc/libvirt-1.2.18.3/html/formatsnapshot.html -#usr/share/doc/libvirt-1.2.18.3/html/formatstorage.html -#usr/share/doc/libvirt-1.2.18.3/html/formatstorageencryption.html -#usr/share/doc/libvirt-1.2.18.3/html/generic.css -#usr/share/doc/libvirt-1.2.18.3/html/goals.html -#usr/share/doc/libvirt-1.2.18.3/html/governance.html -#usr/share/doc/libvirt-1.2.18.3/html/hacking.html -#usr/share/doc/libvirt-1.2.18.3/html/hooks.html -#usr/share/doc/libvirt-1.2.18.3/html/html -#usr/share/doc/libvirt-1.2.18.3/html/html/home.png -#usr/share/doc/libvirt-1.2.18.3/html/html/index.html -#usr/share/doc/libvirt-1.2.18.3/html/html/left.png -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-domain-snapshot.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-domain.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-event.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-host.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-interface.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-network.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-nodedev.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-nwfilter.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-secret.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-storage.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-libvirt-stream.html -#usr/share/doc/libvirt-1.2.18.3/html/html/libvirt-virterror.html -#usr/share/doc/libvirt-1.2.18.3/html/html/right.png -#usr/share/doc/libvirt-1.2.18.3/html/html/up.png -#usr/share/doc/libvirt-1.2.18.3/html/hvsupport.html -#usr/share/doc/libvirt-1.2.18.3/html/index.html -#usr/share/doc/libvirt-1.2.18.3/html/internals -#usr/share/doc/libvirt-1.2.18.3/html/internals.html -#usr/share/doc/libvirt-1.2.18.3/html/internals/command.html -#usr/share/doc/libvirt-1.2.18.3/html/internals/locking.html -#usr/share/doc/libvirt-1.2.18.3/html/internals/oomtesting.html -#usr/share/doc/libvirt-1.2.18.3/html/internals/rpc.html -#usr/share/doc/libvirt-1.2.18.3/html/intro.html -#usr/share/doc/libvirt-1.2.18.3/html/java.html -#usr/share/doc/libvirt-1.2.18.3/html/libvirt-daemon-arch.png -#usr/share/doc/libvirt-1.2.18.3/html/libvirt-driver-arch.png -#usr/share/doc/libvirt-1.2.18.3/html/libvirt-header-bg.png -#usr/share/doc/libvirt-1.2.18.3/html/libvirt-header-logo.png -#usr/share/doc/libvirt-1.2.18.3/html/libvirt-net-logical.png -#usr/share/doc/libvirt-1.2.18.3/html/libvirt-net-physical.png -#usr/share/doc/libvirt-1.2.18.3/html/libvirt-object-model.png -#usr/share/doc/libvirt-1.2.18.3/html/libvirt.css -#usr/share/doc/libvirt-1.2.18.3/html/libvirtLogo.png -#usr/share/doc/libvirt-1.2.18.3/html/locking-lockd.html -#usr/share/doc/libvirt-1.2.18.3/html/locking-sanlock.html -#usr/share/doc/libvirt-1.2.18.3/html/locking.html -#usr/share/doc/libvirt-1.2.18.3/html/logging.html -#usr/share/doc/libvirt-1.2.18.3/html/madeWith.png -#usr/share/doc/libvirt-1.2.18.3/html/main.css -#usr/share/doc/libvirt-1.2.18.3/html/migration-managed-direct.png -#usr/share/doc/libvirt-1.2.18.3/html/migration-managed-p2p.png -#usr/share/doc/libvirt-1.2.18.3/html/migration-native.png -#usr/share/doc/libvirt-1.2.18.3/html/migration-tunnel.png -#usr/share/doc/libvirt-1.2.18.3/html/migration-unmanaged-direct.png -#usr/share/doc/libvirt-1.2.18.3/html/migration.html -#usr/share/doc/libvirt-1.2.18.3/html/news.html -#usr/share/doc/libvirt-1.2.18.3/html/node.gif -#usr/share/doc/libvirt-1.2.18.3/html/pending.html -#usr/share/doc/libvirt-1.2.18.3/html/php.html -#usr/share/doc/libvirt-1.2.18.3/html/python.html -#usr/share/doc/libvirt-1.2.18.3/html/relatedlinks.html -#usr/share/doc/libvirt-1.2.18.3/html/remote.html -#usr/share/doc/libvirt-1.2.18.3/html/secureusage.html -#usr/share/doc/libvirt-1.2.18.3/html/securityprocess.html -#usr/share/doc/libvirt-1.2.18.3/html/sitemap.html -#usr/share/doc/libvirt-1.2.18.3/html/storage.html -#usr/share/doc/libvirt-1.2.18.3/html/testapi.html -#usr/share/doc/libvirt-1.2.18.3/html/testsuites.html -#usr/share/doc/libvirt-1.2.18.3/html/testtck.html -#usr/share/doc/libvirt-1.2.18.3/html/todo.html -#usr/share/doc/libvirt-1.2.18.3/html/uri.html -#usr/share/doc/libvirt-1.2.18.3/html/virshcmdref.html -#usr/share/doc/libvirt-1.2.18.3/html/windows.html +#usr/share/augeas/lenses/virtlogd.aug +#usr/share/doc/libvirt-2.1.0 +#usr/share/doc/libvirt-2.1.0/html +#usr/share/doc/libvirt-2.1.0/html/32favicon.png +#usr/share/doc/libvirt-2.1.0/html/404.html +#usr/share/doc/libvirt-2.1.0/html/acl.html +#usr/share/doc/libvirt-2.1.0/html/aclpolkit.html +#usr/share/doc/libvirt-2.1.0/html/api.html +#usr/share/doc/libvirt-2.1.0/html/api_extension.html +#usr/share/doc/libvirt-2.1.0/html/apps.html +#usr/share/doc/libvirt-2.1.0/html/archdomain.html +#usr/share/doc/libvirt-2.1.0/html/architecture.gif +#usr/share/doc/libvirt-2.1.0/html/architecture.html +#usr/share/doc/libvirt-2.1.0/html/archnetwork.html +#usr/share/doc/libvirt-2.1.0/html/archnode.html +#usr/share/doc/libvirt-2.1.0/html/archstorage.html +#usr/share/doc/libvirt-2.1.0/html/auditlog.html +#usr/share/doc/libvirt-2.1.0/html/auth.html +#usr/share/doc/libvirt-2.1.0/html/bindings.html +#usr/share/doc/libvirt-2.1.0/html/bugs.html +#usr/share/doc/libvirt-2.1.0/html/cgroups.html +#usr/share/doc/libvirt-2.1.0/html/compiling.html +#usr/share/doc/libvirt-2.1.0/html/contact.html +#usr/share/doc/libvirt-2.1.0/html/csharp.html +#usr/share/doc/libvirt-2.1.0/html/deployment.html +#usr/share/doc/libvirt-2.1.0/html/devguide.html +#usr/share/doc/libvirt-2.1.0/html/docs.html +#usr/share/doc/libvirt-2.1.0/html/downloads.html +#usr/share/doc/libvirt-2.1.0/html/drivers.html +#usr/share/doc/libvirt-2.1.0/html/drvbhyve.html +#usr/share/doc/libvirt-2.1.0/html/drvesx.html +#usr/share/doc/libvirt-2.1.0/html/drvhyperv.html +#usr/share/doc/libvirt-2.1.0/html/drvlxc.html +#usr/share/doc/libvirt-2.1.0/html/drvopenvz.html +#usr/share/doc/libvirt-2.1.0/html/drvphyp.html +#usr/share/doc/libvirt-2.1.0/html/drvqemu.html +#usr/share/doc/libvirt-2.1.0/html/drvremote.html +#usr/share/doc/libvirt-2.1.0/html/drvtest.html +#usr/share/doc/libvirt-2.1.0/html/drvuml.html +#usr/share/doc/libvirt-2.1.0/html/drvvbox.html +#usr/share/doc/libvirt-2.1.0/html/drvvirtuozzo.html +#usr/share/doc/libvirt-2.1.0/html/drvvmware.html +#usr/share/doc/libvirt-2.1.0/html/drvxen.html +#usr/share/doc/libvirt-2.1.0/html/errors.html +#usr/share/doc/libvirt-2.1.0/html/firewall.html +#usr/share/doc/libvirt-2.1.0/html/format.html +#usr/share/doc/libvirt-2.1.0/html/formatcaps.html +#usr/share/doc/libvirt-2.1.0/html/formatdomain.html +#usr/share/doc/libvirt-2.1.0/html/formatdomaincaps.html +#usr/share/doc/libvirt-2.1.0/html/formatnetwork.html +#usr/share/doc/libvirt-2.1.0/html/formatnode.html +#usr/share/doc/libvirt-2.1.0/html/formatnwfilter.html +#usr/share/doc/libvirt-2.1.0/html/formatsecret.html +#usr/share/doc/libvirt-2.1.0/html/formatsnapshot.html +#usr/share/doc/libvirt-2.1.0/html/formatstorage.html +#usr/share/doc/libvirt-2.1.0/html/formatstorageencryption.html +#usr/share/doc/libvirt-2.1.0/html/generic.css +#usr/share/doc/libvirt-2.1.0/html/goals.html +#usr/share/doc/libvirt-2.1.0/html/governance.html +#usr/share/doc/libvirt-2.1.0/html/hacking.html +#usr/share/doc/libvirt-2.1.0/html/hooks.html +#usr/share/doc/libvirt-2.1.0/html/html +#usr/share/doc/libvirt-2.1.0/html/html/home.png +#usr/share/doc/libvirt-2.1.0/html/html/index.html +#usr/share/doc/libvirt-2.1.0/html/html/left.png +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-common.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-domain-snapshot.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-domain.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-event.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-host.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-interface.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-network.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-nodedev.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-nwfilter.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-secret.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-storage.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-libvirt-stream.html +#usr/share/doc/libvirt-2.1.0/html/html/libvirt-virterror.html +#usr/share/doc/libvirt-2.1.0/html/html/right.png +#usr/share/doc/libvirt-2.1.0/html/html/up.png +#usr/share/doc/libvirt-2.1.0/html/hvsupport.html +#usr/share/doc/libvirt-2.1.0/html/index.html +#usr/share/doc/libvirt-2.1.0/html/internals +#usr/share/doc/libvirt-2.1.0/html/internals.html +#usr/share/doc/libvirt-2.1.0/html/internals/command.html +#usr/share/doc/libvirt-2.1.0/html/internals/eventloop.html +#usr/share/doc/libvirt-2.1.0/html/internals/locking.html +#usr/share/doc/libvirt-2.1.0/html/internals/oomtesting.html +#usr/share/doc/libvirt-2.1.0/html/internals/rpc.html +#usr/share/doc/libvirt-2.1.0/html/intro.html +#usr/share/doc/libvirt-2.1.0/html/java.html +#usr/share/doc/libvirt-2.1.0/html/libvirt-daemon-arch.png +#usr/share/doc/libvirt-2.1.0/html/libvirt-driver-arch.png +#usr/share/doc/libvirt-2.1.0/html/libvirt-header-bg.png +#usr/share/doc/libvirt-2.1.0/html/libvirt-header-logo.png +#usr/share/doc/libvirt-2.1.0/html/libvirt-net-logical.png +#usr/share/doc/libvirt-2.1.0/html/libvirt-net-physical.png +#usr/share/doc/libvirt-2.1.0/html/libvirt-object-model.png +#usr/share/doc/libvirt-2.1.0/html/libvirt.css +#usr/share/doc/libvirt-2.1.0/html/libvirtLogo.png +#usr/share/doc/libvirt-2.1.0/html/locking-lockd.html +#usr/share/doc/libvirt-2.1.0/html/locking-sanlock.html +#usr/share/doc/libvirt-2.1.0/html/locking.html +#usr/share/doc/libvirt-2.1.0/html/logging.html +#usr/share/doc/libvirt-2.1.0/html/madeWith.png +#usr/share/doc/libvirt-2.1.0/html/main.css +#usr/share/doc/libvirt-2.1.0/html/migration-managed-direct.png +#usr/share/doc/libvirt-2.1.0/html/migration-managed-p2p.png +#usr/share/doc/libvirt-2.1.0/html/migration-native.png +#usr/share/doc/libvirt-2.1.0/html/migration-tunnel.png +#usr/share/doc/libvirt-2.1.0/html/migration-unmanaged-direct.png +#usr/share/doc/libvirt-2.1.0/html/migration.html +#usr/share/doc/libvirt-2.1.0/html/news-2005.html +#usr/share/doc/libvirt-2.1.0/html/news-2006.html +#usr/share/doc/libvirt-2.1.0/html/news-2007.html +#usr/share/doc/libvirt-2.1.0/html/news-2008.html +#usr/share/doc/libvirt-2.1.0/html/news-2009.html +#usr/share/doc/libvirt-2.1.0/html/news-2010.html +#usr/share/doc/libvirt-2.1.0/html/news-2011.html +#usr/share/doc/libvirt-2.1.0/html/news-2012.html +#usr/share/doc/libvirt-2.1.0/html/news-2013.html +#usr/share/doc/libvirt-2.1.0/html/news-2014.html +#usr/share/doc/libvirt-2.1.0/html/news-2015.html +#usr/share/doc/libvirt-2.1.0/html/news.html +#usr/share/doc/libvirt-2.1.0/html/node.gif +#usr/share/doc/libvirt-2.1.0/html/nss.html +#usr/share/doc/libvirt-2.1.0/html/pending.html +#usr/share/doc/libvirt-2.1.0/html/php.html +#usr/share/doc/libvirt-2.1.0/html/python.html +#usr/share/doc/libvirt-2.1.0/html/relatedlinks.html +#usr/share/doc/libvirt-2.1.0/html/remote.html +#usr/share/doc/libvirt-2.1.0/html/secureusage.html +#usr/share/doc/libvirt-2.1.0/html/securityprocess.html +#usr/share/doc/libvirt-2.1.0/html/sitemap.html +#usr/share/doc/libvirt-2.1.0/html/storage.html +#usr/share/doc/libvirt-2.1.0/html/testapi.html +#usr/share/doc/libvirt-2.1.0/html/testsuites.html +#usr/share/doc/libvirt-2.1.0/html/testtck.html +#usr/share/doc/libvirt-2.1.0/html/todo.html +#usr/share/doc/libvirt-2.1.0/html/uri.html +#usr/share/doc/libvirt-2.1.0/html/virshcmdref.html +#usr/share/doc/libvirt-2.1.0/html/windows.html #usr/share/gtk-doc/html/libvirt #usr/share/gtk-doc/html/libvirt/general.html #usr/share/gtk-doc/html/libvirt/home.png @@ -243,6 +268,7 @@ usr/sbin/virtlockd #usr/share/gtk-doc/html/libvirt/up.png #usr/share/libvirt #usr/share/libvirt/api +usr/share/libvirt/api/libvirt-admin-api.xml usr/share/libvirt/api/libvirt-api.xml usr/share/libvirt/api/libvirt-lxc-api.xml usr/share/libvirt/api/libvirt-qemu-api.xml @@ -265,13 +291,17 @@ usr/share/libvirt/schemas/storagecommon.rng usr/share/libvirt/schemas/storagepool.rng usr/share/libvirt/schemas/storagevol.rng #usr/share/man/man1/virsh.1 +#usr/share/man/man1/virt-admin.1 #usr/share/man/man1/virt-host-validate.1 +#usr/share/man/man1/virt-login-shell.1 #usr/share/man/man1/virt-pki-validate.1 #usr/share/man/man1/virt-xml-validate.1 #usr/share/man/man8/libvirtd.8 #usr/share/man/man8/virtlockd.8 +#usr/share/man/man8/virtlogd.8 #var/cache/libvirt #var/cache/libvirt/qemu +var/ipfire/backup/addons/includes/libvirt #var/lib/libvirt #var/lib/libvirt/boot #var/lib/libvirt/filesystems @@ -283,6 +313,3 @@ usr/share/libvirt/schemas/storagevol.rng #var/log/libvirt/lxc #var/log/libvirt/qemu #var/log/libvirt/uml -etc/rc.d/init.d/libvirt-guests -etc/rc.d/init.d/libvirtd -var/ipfire/backup/addons/includes/libvirt diff --git a/lfs/libvirt b/lfs/libvirt index 854c52c..6a28b7b 100644 --- a/lfs/libvirt +++ b/lfs/libvirt @@ -24,16 +24,16 @@
include Config
-VER = 1.2.18.3 +VER = 2.1.0
THISAPP = libvirt-$(VER) -DL_FILE = $(THISAPP).tar.gz +DL_FILE = $(THISAPP).tar.xz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) SUP_ARCH = i586 x86_64 PROG = libvirt -PAK_VER = 9 +PAK_VER = 10
DEPS = "libpciaccess libyajl ncat qemu"
@@ -45,7 +45,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = bcb0738ff66972ddb25cfe0d086c5c37 +$(DL_FILE)_MD5 = fd1c054a8b59235e877efb728de79386
install : $(TARGET) check : $(patsubst %,$(DIR_CHK)/%,$(objects)) @@ -76,7 +76,7 @@ $(subst %,%_MD5,$(objects)) :
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD)
- @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
- @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar Jxf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/libvirt/0001-Change-default-behavior-of-libvirt-guests.sh-for-IPF.patch cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/libvirt/0002-Change-options-in-libvirtd.conf-for-IPFire.patch cd $(DIR_APP) && ./configure --prefix=/usr --localstatedir=/var --sysconfdir=/etc \
@@ -90,6 +90,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE) cd $(DIR_APP) && make install install -v -m 754 $(DIR_SRC)/src/initscripts/init.d/libvirtd /etc/rc.d/init.d/libvirtd
- install -v -m 754 $(DIR_SRC)/src/initscripts/init.d/virtlogd /etc/rc.d/init.d/virtlogd mv /usr/libexec/libvirt-guests.sh /etc/rc.d/init.d/libvirt-guests # Backup install -v -m 644 $(DIR_SRC)/config/backup/includes/libvirt /var/ipfire/backup/addons/includes/libvirt
diff --git a/src/initscripts/init.d/virtlogd b/src/initscripts/init.d/virtlogd new file mode 100644 index 0000000..1482686 --- /dev/null +++ b/src/initscripts/init.d/virtlogd @@ -0,0 +1,46 @@ +#!/bin/sh +######################################################################## +# Begin $rc_base/init.d/virtlogd +# +# Description : virtlogd init script +# +# Authors : Jonatan Schlag - jonatan.schlag@ipfire.org +# +# Version : 01.00 +# +# Notes : +# +########################################################################
+. /etc/sysconfig/rc +. $rc_functions
+case $1 in
- start)
boot_mesg "Starting virtlogd Daemon..."
loadproc /usr/sbin/virtlogd -d -p /var/run/virtlogd.pid
;;
- stop)
boot_mesg "Stopping virtlogd Daemon..."
killproc /usr/sbin/virtlogd
;;
- restart)
boot_mesg "Restart virtlogd Daemon..."
kill -10 $(cat /var/run/virtlogd.pid)
evaluate_retval
;;
- status)
statusproc /usr/sbin/virtlogd
;;
- *)
echo "Usage: $0 {start|stop|restart|status}"
exit 1
;;
+esac
+# End $rc_base/init.d/virtlogd diff --git a/src/paks/libvirt/install.sh b/src/paks/libvirt/install.sh index 4a693b9..a11caa4 100644 --- a/src/paks/libvirt/install.sh +++ b/src/paks/libvirt/install.sh @@ -45,7 +45,13 @@ chown -R nobody:kvm /var/lib/libvirt/images # restore the backup restore_backup ${NAME}
+start_service virtlogd start_service --background libvirtd
+ln -svf /etc/init.d/virtlogd /etc/rc.d/rc0.d/K21virtlogd +ln -svf /etc/init.d/virtlogd /etc/rc.d/rc3.d/S69virtlogd +ln -svf /etc/init.d/virtlogd /etc/rc.d/rc6.d/K21virtlogd
- ln -svf /etc/init.d/libvirtd /etc/rc.d/rc0.d/K20libvirtd ln -svf /etc/init.d/libvirtd /etc/rc.d/rc3.d/S70libvirtd ln -svf /etc/init.d/libvirtd /etc/rc.d/rc6.d/K20libvirtd
diff --git a/src/paks/libvirt/uninstall.sh b/src/paks/libvirt/uninstall.sh index 23c86e5..0d96e36 100644 --- a/src/paks/libvirt/uninstall.sh +++ b/src/paks/libvirt/uninstall.sh @@ -23,7 +23,7 @@ # . /opt/pakfire/lib/functions.sh stop_service libvirtd
+stop_service virtlogd extract_backup_includes make_backup ${NAME}
@@ -31,4 +31,5 @@ remove_files
rm -f /etc/rc.d/rc*.d/*libvirt-guests rm -f /etc/rc.d/rc*.d/*libvirtd +rm -f /etc/rc.d/rc*.d/*virtlogd
diff --git a/src/paks/libvirt/update.sh b/src/paks/libvirt/update.sh index d0b3ba1..fd0ca97 100644 --- a/src/paks/libvirt/update.sh +++ b/src/paks/libvirt/update.sh @@ -22,6 +22,60 @@ ############################################################################ # . /opt/pakfire/lib/functions.sh -./uninstall.sh -./install.sh
+# +#uninstall +# +stop_service libvirtd +extract_backup_includes +make_backup ${NAME}
+remove_files
+rm -f /etc/rc.d/rc*.d/*libvirt-guests +rm -f /etc/rc.d/rc*.d/*libvirtd +rm -f /etc/rc.d/rc*.d/*virtlogd
+# +#install +#
+# creates a new user and group called libvirt-remote if they not exist +getent group libvirt-remote >/dev/null || groupadd libvirt-remote +getent passwd libvirt-remote >/dev/null || \ +useradd -m -g libvirt-remote -s /bin/bash "libvirt-remote"
+extract_files
+# create diretorys in var +mkdir -p /var/cache/libvirt/qemu \ +/var/lib/libvirt/boot \ +/var/lib/libvirt/filesystems \ +/var/lib/libvirt/images \ +/var/lib/libvirt/lockd/files \ +/var/lib/libvirt/qemu \ +/var/log/libvirt/qemu +# set the permissions +chown -R nobody:kvm /var/cache/libvirt/qemu +chown -R nobody:kvm /var/lib/libvirt/qemu +chown -R nobody:kvm /var/lib/libvirt/images +# restore the backup +restore_backup ${NAME}
+#restart virtlogd to use the new version +/etc/init.d/virtlogd restart
+start_service --background libvirtd
+ln -svf /etc/init.d/virtlogd /etc/rc.d/rc0.d/K21virtlogd +ln -svf /etc/init.d/virtlogd /etc/rc.d/rc3.d/S69virtlogd +ln -svf /etc/init.d/virtlogd /etc/rc.d/rc6.d/K21virtlogd
+ln -svf /etc/init.d/libvirtd /etc/rc.d/rc0.d/K20libvirtd +ln -svf /etc/init.d/libvirtd /etc/rc.d/rc3.d/S70libvirtd +ln -svf /etc/init.d/libvirtd /etc/rc.d/rc6.d/K20libvirtd
+ln -svf /etc/init.d/libvirt-guests /etc/rc.d/rc0.d/K19libvirt-guests +ln -svf /etc/init.d/libvirt-guests /etc/rc.d/rc3.d/S71libvirt-guests +ln -svf /etc/init.d/libvirt-guests /etc/rc.d/rc6.d/K19libvirt-guests