diff --git a/docs/manpages/index.rst b/docs/manpages/index.rst index da835d62ec..18153ac714 100644 --- a/docs/manpages/index.rst +++ b/docs/manpages/index.rst @@ -18,6 +18,7 @@ Modular Driver daemons These daemons provide functionality to a single libvirt driver * `virtbhyved(8) `__ - libvirt bhyve management daemon +* `virtinterfaced(8) `__ - libvirt host network interface management daemon Tools ===== diff --git a/docs/manpages/meson.build b/docs/manpages/meson.build index 7c03cb74cf..a46f75d503 100644 --- a/docs/manpages/meson.build +++ b/docs/manpages/meson.build @@ -23,6 +23,7 @@ docs_man_files = [ { 'name': 'libvirtd', 'section': '8', 'install': conf.has('WITH_LIBVIRTD') }, { 'name': 'virt-sanlock-cleanup', 'section': '8', 'install': conf.has('WITH_SANLOCK') }, { 'name': 'virtbhyved', 'section': '8', 'install': conf.has('WITH_BHYVE') }, + { 'name': 'virtinterfaced', 'section': '8', 'install': conf.has('WITH_INTERFACE') }, { 'name': 'virtlockd', 'section': '8', 'install': conf.has('WITH_LIBVIRTD') }, { 'name': 'virtlogd', 'section': '8', 'install': conf.has('WITH_LIBVIRTD') }, { 'name': 'virtproxyd', 'section': '8', 'install': conf.has('WITH_LIBVIRTD') }, diff --git a/docs/manpages/virtinterfaced.rst b/docs/manpages/virtinterfaced.rst new file mode 100644 index 0000000000..5777dba638 --- /dev/null +++ b/docs/manpages/virtinterfaced.rst @@ -0,0 +1,215 @@ +============== +virtinterfaced +============== + +------------------------------------------------ +libvirt host network interface management daemon +------------------------------------------------ + +:Manual section: 8 +:Manual group: Virtualization Support + +.. contents:: + +SYNOPSIS +======== + +``virtinterfaced`` [*OPTION*]... + + +DESCRIPTION +=========== + +The ``virtinterfaced`` program is a server side daemon component of the libvirt +virtualization management system. + +It is one of a collection of modular daemons that replace functionality +previously provided by the monolithic ``libvirtd`` daemon. + +This daemon runs on virtualization hosts to provide management for host network +interfaces. + +The ``virtinterfaced`` daemon only listens for requests on a local Unix domain +socket. Remote off-host access and backwards compatibility with legacy +clients expecting ``libvirtd`` is provided by the ``virtproxy`` daemon. + +Restarting ``virtinterfaced`` does not interrupt running guests. Guests continue to +operate and changes in their state will generally be picked up automatically +during startup. None the less it is recommended to avoid restarting with +running guests whenever practical. + + +SYSTEM SOCKET ACTIVATION +======================== + +The ``virtinterfaced`` daemon is capable of starting in two modes. + +In the traditional mode, it will create and listen on UNIX sockets itself. + +In socket activation mode, it will rely on systemd to create and listen +on the UNIX sockets and pass them as pre-opened file descriptors. In this +mode most of the socket related config options in +``/etc/libvirt/virtinterfaced.conf`` will no longer have any effect. + +Socket activation mode is generally the default when running on a host +OS that uses systemd. To revert to the traditional mode, all the socket +unit files must be masked: + +:: + + $ systemctl mask virtinterfaced.socket virtinterfaced-ro.socket \ + virtinterfaced-admin.socket + + +OPTIONS +======= + +``-h``, ``--help`` + +Display command line help usage then exit. + +``-d``, ``--daemon`` + +Run as a daemon & write PID file. + +``-f``, ``--config *FILE*`` + +Use this configuration file, overriding the default value. + +``-p``, ``--pid-file *FILE*`` + +Use this name for the PID file, overriding the default value. + +``-t``, ``--timeout *SECONDS*`` + +Exit after timeout period (in seconds), provided there are neither any client +connections nor any running domains. + +``-v``, ``--verbose`` + +Enable output of verbose messages. + +``--version`` + +Display version information then exit. + + +SIGNALS +======= + +On receipt of ``SIGHUP`` ``virtinterfaced`` will reload its configuration. + + +FILES +===== + +When run as *root* +------------------ + +* ``@SYSCONFDIR@/libvirt/virtinterfaced.conf`` + +The default configuration file used by ``virtinterfaced``, unless overridden on the +command line using the ``-f`` | ``--config`` option. + +* ``@RUNSTATEDIR@/libvirt/virtinterfaced-sock`` +* ``@RUNSTATEDIR@/libvirt/virtinterfaced-sock-ro`` +* ``@RUNSTATEDIR@/libvirt/virtinterfaced-admin-sock`` + +The sockets ``virtinterfaced`` will use. + +The TLS **Server** private key ``virtinterfaced`` will use. + +* ``@RUNSTATEDIR@/virtinterfaced.pid`` + +The PID file to use, unless overridden by the ``-p`` | ``--pid-file`` option. + + +When run as *non-root* +---------------------- + +* ``$XDG_CONFIG_HOME/libvirt/virtinterfaced.conf`` + +The default configuration file used by ``virtinterfaced``, unless overridden on the +command line using the ``-f``|``--config`` option. + +* ``$XDG_RUNTIME_DIR/libvirt/virtinterfaced-sock`` +* ``$XDG_RUNTIME_DIR/libvirt/virtinterfaced-admin-sock`` + +The sockets ``virtinterfaced`` will use. + +* ``$XDG_RUNTIME_DIR/libvirt/virtinterfaced.pid`` + +The PID file to use, unless overridden by the ``-p``|``--pid-file`` option. + + +If ``$XDG_CONFIG_HOME`` is not set in your environment, ``virtinterfaced`` will use +``$HOME/.config`` + +If ``$XDG_RUNTIME_DIR`` is not set in your environment, ``virtinterfaced`` will use +``$HOME/.cache`` + + +EXAMPLES +======== + +To retrieve the version of ``virtinterfaced``: + +:: + + # virtinterfaced --version + virtinterfaced (libvirt) @VERSION@ + + +To start ``virtinterfaced``, instructing it to daemonize and create a PID file: + +:: + + # virtinterfaced -d + # ls -la @RUNSTATEDIR@/virtinterfaced.pid + -rw-r--r-- 1 root root 6 Jul 9 02:40 @RUNSTATEDIR@/virtinterfaced.pid + + +BUGS +==== + +Please report all bugs you discover. This should be done via either: + +#. the mailing list + + `https://libvirt.org/contact.html `_ + +#. the bug tracker + + `https://libvirt.org/bugs.html `_ + +Alternatively, you may report bugs to your software distributor / vendor. + + +AUTHORS +======= + +Please refer to the AUTHORS file distributed with libvirt. + + +COPYRIGHT +========= + +Copyright (C) 2006-2020 Red Hat, Inc., and the authors listed in the +libvirt AUTHORS file. + + +LICENSE +======= + +``virtinterfaced`` is distributed under the terms of the GNU LGPL v2.1+. +This is free software; see the source for copying conditions. There +is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR +PURPOSE + + +SEE ALSO +======== + +virsh(1), libvirtd(8), +`https://www.libvirt.org/daemons.html `_, +`https://www.libvirt.org/drvinterface.html `_ diff --git a/libvirt.spec.in b/libvirt.spec.in index 0d7e472637..ac6eab4ff2 100644 --- a/libvirt.spec.in +++ b/libvirt.spec.in @@ -1605,6 +1605,7 @@ exit 0 %{_unitdir}/virtinterfaced-admin.socket %attr(0755, root, root) %{_sbindir}/virtinterfaced %{_libdir}/%{name}/connection-driver/libvirt_driver_interface.so +%{_mandir}/man8/virtinterfaced.8* %files daemon-driver-network %config(noreplace) %{_sysconfdir}/sysconfig/virtnetworkd