VIRTLOCKD(8)

πŸ‘‘ VIRTLOCKD(8) ✨

okay so you found the virtlockd manual page, and bestie, we're gonna get through it together. it's the section 8 daemon page from Virtualization Support β€” very official, very demure. let's go πŸ’…


🌸 NAME 🌸

virtlockd β€” the libvirt lock management daemon. it manages locks. that's the whole vibe. πŸ”’


✨ SYNOPSIS ✨

virtlockd [OPTION]...

literally just the binary and some options. that's it. periodt.


πŸ’– DESCRIPTION πŸ’–

so virtlockd is a server-side daemon component of the libvirt virtualization management system, and its whole job β€” its main character energy, if you will β€” is managing the locks held against virtual machine resources, like their disks. πŸ–₯οΈπŸ”

important: this daemon is not used directly by libvirt client applications. nope. instead it gets called on their behalf by libvirtd. iykyk.

the way this slaps is that by keeping the locks in a standalone daemon, the main libvirtd daemon can be restarted without any risk of losing those locks. no lost locks, no drama. 🫢

and the glow-up? virtlockd has the ability to re-exec() itself upon receiving SIGUSR1, so you can do live upgrades without downtime. iconic behavior, honestly. πŸ”₯

also it listens for requests on a local Unix domain socket. lowkey cozy.


πŸŽ€ OPTIONS πŸŽ€

  • -h, --help β€” displays command line help usage, then dips out (exits). πŸ™ˆ
  • -d, --daemon β€” runs as a daemon and writes the PID file. 🧚
  • -f, --config FILE β€” use this configuration file, overriding the default value.
  • -t, --timeout SECONDS β€” automatically shuts down after SECONDS have elapsed with no active client or lock. she leaves when the party's over πŸ’€
  • -p, --pid-file FILE β€” use this name for the PID file, overriding the default value.
  • -v, --verbose β€” enables output of verbose messages. chatty era πŸ—£οΈ
  • -V, --version β€” displays version information, then exits.

πŸ¦‹ SIGNALS πŸ¦‹

on receipt of SIGUSR1, virtlockd will re-exec() its binary while maintaining all current locks and clients. that means live upgrades of the virtlockd service. no cap, that's the good stuff. ⭐


🌈 FILES 🌈

when run as root πŸ‘‘

  • /etc/libvirt/virtlockd.conf

the default configuration file used by virtlockd, unless it's overridden on the command line using the -f | --config option.

  • /run/libvirt/virtlockd-sock

the sockets virtlockd will use.

  • /run/virtlockd.pid

the PID file to use, unless overridden by the -p | --pid-file option.

when run as non-root 🌱

  • $XDG_CONFIG_HOME/libvirt/virtlockd.conf

the default configuration file used by virtlockd, unless overridden on the command line using the -f | --config option.

  • $XDG_RUNTIME_DIR/libvirt/virtlockd-sock

the socket virtlockd will use.

  • $XDG_RUNTIME_DIR/libvirt/virtlockd.pid

the PID file to use, unless overridden by the -p | --pid-file option.

if $XDG_CONFIG_HOME is not set in your environment, virtlockd will use $HOME/.config 🏠

if $XDG_RUNTIME_DIR is not set in your environment, virtlockd will use $HOME/.cache πŸ—‚οΈ


πŸ“ EXAMPLES πŸ“

to retrieve the version of virtlockd, bestie:

# virtlockd --version
virtlockd (libvirt) 12.8.0

to start virtlockd, instructing it to daemonize and create a PID file:

# virtlockd -d
# ls -la /run/virtlockd.pid
-rw-r--r-- 1 root root 6 Jul  9 02:40 /run/virtlockd.pid

see how it ate that? πŸ’…


πŸ’€ BUGS πŸ’€

please report all bugs you discover. not some. all. πŸ™ this should be done via either:

  1. the mailing list

https://libvirt.org/contact.html

  1. the bug tracker

https://libvirt.org/bugs.html

alternatively, you may report bugs to your software distributor / vendor. we don't gatekeep bug reports here 🫢


πŸ’œ AUTHORS πŸ’œ

please refer to the AUTHORS file distributed with libvirt.


Copyright (C) 2006-2013 Red Hat, Inc., and the authors listed in the libvirt AUTHORS file.


πŸ”₯ LICENSE πŸ”₯

virtlockd is distributed under the terms of the GNU LGPL v2.1+. this is free software; see the source for copying conditions. and listen β€” there is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. read that again. no warranty. none. 😭


⭐ SEE ALSO ⭐

libvirtd(8), https://libvirt.org/


okay that's the whole page bestie, you're officially educated πŸŽ“βœ¨ β€” signed off from the Virtualization Support section, page VIRTLOCKD(8) β€” go forth and lock responsibly πŸ’–πŸŒΈ

πŸ“¦ where this page comes from