VIRTNODEDEVD(8)
π VIRTNODEDEVD(8) β the libvirt host device management daemon, but make it make sense
okay bestie, listen. this is the man page for virtnodedevd(8), a daemon from the libvirt virtualization support world, and i'm gonna walk you through it like we're texting at 2am. no gatekeeping, periodt. π«Ά
β¨ NAME β¨
virtnodedevd β the libvirt host device management daemon. yes that's her full government name π
π¦ SYNOPSIS π¦
virtnodedevd [OPTION]...
that's it. that's the whole vibe check. options go in, daemon comes out.
πΈ DESCRIPTION πΈ
so the virtnodedevd program is a server side daemon component of the libvirt virtualization management system. she's server-side, she's a component, she's doing her job. π
she's one of a whole collection of modular daemons that replace functionality that used to be provided by the monolithic libvirtd daemon. like the group chat breaking up into individual DMs β same energy, more organized. ngl, glow-up.
this daemon runs on virtualization hosts to provide management for host devices. devices. on hosts. she manages them. iconic.
the virtnodedevd daemon only listens for requests on a local Unix domain socket. that's it, that's the whole social circle. remote access via TLS/TCP, plus backwards compatibility with legacy clients that are still expecting libvirtd, is provided by the virtproxyd daemon. so if you're old-school and need remote β wrong daemon, bestie, go talk to virtproxyd. π
and now the important bit: restarting virtnodedevd does not interrupt running guests. guests keep operating, and changes in their state will generally be picked up automatically during startup. lowkey fine. but none the less it is recommended to avoid restarting with running guests whenever practical. so like... you can. but should you? π
β DAEMON STARTUP MODES β
the virtnodedevd daemon is capable of starting in two modes. pick your fighter.
π§ 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. so systemd does the socket work, she just shows up. main character energy fr.
in this mode most of the socket related config options in /etc/libvirt/virtnodedevd.conf will no longer have any effect. yeah. they're just sitting there. decorative. π
π₯ Traditional service mode
on hosts without systemd, it will create and listen on UNIX sockets itself. self-sufficient queen. she makes her own sockets. π
π OPTIONS π
here's the whole roster, no skips:
-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 goes in the background and leaves a little note (the PID file) so you know she's alive β¨-f,--configFILE β use this configuration file, overriding the default value. your config, your rules π-p,--pid-fileFILE β use this name for the PID file, overriding the default value. rename the note π-t,--timeoutSECONDS β exit after timeout period (in seconds), provided there are no client connections. nobody's calling? she's leaving. β°-v,--verboseβ enable output of verbose messages. she will overshare. we love that for her π¬--versionβ display version information then exit. the "who even am i" button π¦
π SIGNALS π
on receipt of SIGHUP, virtnodedevd will reload its configuration. that's the whole section. one signal. she's simple like that. (politely. with love.) π
π FILES π
π When run as root
/etc/libvirt/virtnodedevd.confβ the default configuration file used byvirtnodedevd, unless overridden on the command line using the-f | --configoption./run/libvirt/virtnodedevd-sock/run/libvirt/virtnodedevd-sock-ro/run/libvirt/virtnodedevd-admin-sock
these three above are the sockets virtnodedevd will use. π§¦π§¦π§¦
the TLS Server private key virtnodedevd will use. (yes, it's just vibing there in the list with no path attached β that's how the page ships it, i don't make the rules π)
/run/virtnodedevd.pidβ the PID file to use, unless overridden by the-p | --pid-fileoption.
π¦ When run as non-root
$XDG_CONFIG_HOME/libvirt/virtnodedevd.confβ the default configuration file used byvirtnodedevd, unless overridden on the command line using the-f | --configoption.$XDG_RUNTIME_DIR/libvirt/virtnodedevd-sock$XDG_RUNTIME_DIR/libvirt/virtnodedevd-admin-sock
the sockets virtnodedevd will use. π«
$XDG_RUNTIME_DIR/libvirt/virtnodedevd.pidβ the PID file to use, unless overridden by the-p | --pid-fileoption.
and the fallback tea β: if $XDG_CONFIG_HOME is not set in your environment, virtnodedevd will use $HOME/.config.
if $XDG_RUNTIME_DIR is not set in your environment, virtnodedevd will use $HOME/.cache.
π EXAMPLES π
to retrieve the version of virtnodedevd:
# virtnodedevd --version
virtnodedevd (libvirt) 12.8.0
she said hi and told you her version number. slay. π₯
to start virtnodedevd, instructing it to daemonize and create a PID file:
# virtnodedevd -d
# ls -la /run/virtnodedevd.pid
-rw-r--r-- 1 root root 6 Jul 9 02:40 /run/virtnodedevd.pid
look at that PID file. six whole bytes of proof of life. π₯Ή
π BUGS π
please report all bugs you discover. this should be done via either:
- the mailing list
https://libvirt.org/contact.html
- the bug tracker
alternatively, you may report bugs to your software distributor / vendor. tell them everything, bestie, they signed up for this π«Ά
πΈ AUTHORS πΈ
please refer to the AUTHORS file distributed with libvirt. the whole squad is credited there. π―
π COPYRIGHT π
copyright (C) 2006-2020 Red Hat, Inc., and the authors listed in the libvirt AUTHORS file. respect the lineage. π
β LICENSE β
virtnodedevd is distributed under the terms of the GNU LGPL v2.1+. this is free software; see the source for copying conditions.
and the loudest disclaimer on the page, in all caps because it MEANS it: There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. no cap, zero warranty, she said what she said π
π¦ SEE ALSO π¦
virsh(1), libvirtd(8), https://libvirt.org/daemons.html, https://libvirt.org/drvnodedev.html
okay that's the whole page, you're officially caught up. β¨ this has been VIRTNODEDEVD(8) from the libvirt Virtualization Support section of your manual β go forth, manage those host devices, and remember: restarting with running guests is generally fine but please don't, iykyk π
π«Άπ
π¦ where this page comes from
- centos-stream 10: libvirt-daemon-driver-nodedev 12.8.0-1.el10 Β· GPL-2.0-or-later AND LGPL-2.1-only AND LGPL-2.1-or-later AND OFL-1.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms