VIRTXEND(8)
π
VIRTXEND β the libvirt Xen management daemon (yes bestie, that's virtxend(8), the whole manual right here)
okay so picture this: it's virtxend(8), straight out of the Virtualization Support section, and it's literally the whole page. stay with me, it's gonna slay β¨
πΈ SYNOPSIS πΈ
virtxend [OPTION]...
that's it. that's the whole vibe. one program, a bunch of options, we move. π
β¨ DESCRIPTION β¨
okay so virtxend is a server side daemon component of the libvirt virtualization management system. it's the behind-the-scenes bestie doing the actual work while everyone else takes credit π
it's one of a whole collection of modular daemons β the crew that replaced the functionality previously provided by the monolithic libvirtd daemon. glow-up era, fr fr π₯
this daemon runs on virtualization hosts and provides management for Xen virtual machines. that's its whole personality, and it's iconic for it.
here's the important bit, bestie: the virtxend daemon only listens for requests on a local Unix domain socket. that's it. no wild internet energy. if you want remote access via TLS/TCP, and backwards compatibility with legacy clients that are still expecting libvirtd? that's a whole different girl β the virtproxyd daemon handles all that. don't ask virtxend to do it, she will not. π
and now the part that lowkey matters most: restarting virtxend does not interrupt running guests. guests keep operating, and changes in their state will generally be picked up automatically during startup. none the less (yes I'm keeping that exact spelling, don't @ me) it is recommended to avoid restarting with running guests whenever practical. like, it's fine, but also, why risk it? β
π¦ DAEMON STARTUP MODES π¦
the virtxend daemon is capable of starting in two modes. two modes! main character has range π
π Socket activation mode
on hosts with systemd it is started in socket activation mode, and 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/virtxend.conf will no longer have any effect. systemd said "I got this," and honestly? she does.
πΈ Traditional service mode
on hosts without systemd, it will create and listen on UNIX sockets itself. DIY queen energy. self-made. no notes π
π OPTIONS π
-h,--helpβ display command line help usage, then exit. the "wait what does this do again" button π«Ά-d,--daemonβ run as a daemon & write PID file. she's going to the background, bye bestie π-f,--configFILE β use this configuration file, overriding the default value.-p,--pid-fileFILE β use this name for the PID file, overriding the default value.-t,--timeoutSECONDS β exit after timeout period (in seconds), provided there are neither any client connections nor any running domains. like an Irish goodbye, but scheduled β°-v,--verboseβ enable output of verbose messages. she's talking now. all the tea. β--versionβ display version information, then exit.
π SIGNALS π
on receipt of SIGHUP, virtxend will reload its configuration. that's it. that's the signal. one signal, one job, ate π
π FILES π
real talk first: the virtxend program must be ran as root. trying to start the program under a different user results in error. root only. no exceptions. periodt. π₯
/etc/libvirt/virtxend.conf
the default configuration file used by virtxend, unless overridden on the command line using the -f | --config option.
in addition to the default configuration file, virtxend reads configuration for the libxl driver from:
/etc/libvirt/libxl.conf
this file contains various knobs and default values for virtual machines created within libxl driver, and offers a way to override the built in defaults. location of this file can't be overridden by any command line switch. nope. not a single one. π
/run/libvirt/virtxend-sock/run/libvirt/virtxend-sock-ro/run/libvirt/virtxend-admin-sock
the sockets virtxend will use.
the TLS Server private key virtxend will use. (yes, it's just sitting here in the list like that, no path attached β I don't make the rules, I just relay them faithfully π)
/run/virtxend.pid
the PID file to use, unless overridden by the -p | --pid-file option.
β EXAMPLES β
to retrieve the version of virtxend:
# virtxend --version
virtxend (libvirt) 12.3.0
to start virtxend, instructing it to daemonize and create a PID file:
# virtxend -d
# ls -la /run/virtxend.pid
-rw-r--r-- 1 root root 6 Jul 9 02:40 /run/virtxend.pid
look at that PID file. living its best life at 6 bytes. we love to see it π₯Ή
π§ 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. no gatekeeping, just tell someone π
π AUTHORS π
please refer to the AUTHORS file distributed with libvirt. the whole squad is credited in there.
π COPYRIGHT π
Copyright (C) 2006-2020 Red Hat, Inc., and the authors listed in the libvirt AUTHORS file.
π LICENSE π
virtxend 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. like, zero. none. don't come for her if it breaks π
π«Ά SEE ALSO π«Ά
okay that's the whole page, nothing skipped, every flag accounted for π
and for the cute sign-off: this was the VIRTXEND(8) page from the Virtualization Support section, libvirt edition β footer's giving VIRTXEND(8) all over again, no date in sight, just vibes. mwah. ππβ¨
π¦ where this page comes from
- alpine 3.24: libvirt-doc 12.3.0-r0 Β· LGPL-2.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms