Skip to navigationSkip to content
libvirtd docs
Commands

Manual nav

Search `/` or jump with `g` / `G`.

Portal

  • Home manual
  • Command explorer
Foundations6 sections
  • Overview1
  • Installation2
  • Platform1
  • Concepts5
  • Domains2
  • Domain XML2
Subsystems9 sections
  • Identity1
  • Automation2
  • Daemons3
  • virsh3
  • Networking5
  • Storage4
  • Security3
  • Observability2
  • Remote Access1
Operations6 sections
  • Migration2
  • Backup2
  • Performance3
  • Recovery1
  • Troubleshooting2
  • References2

/ search · g top · G quickstart

mandaemonsReviewed March 6, 2026

Socket activation versus traditional daemon mode

Systemd socket activation starts the relevant libvirt daemon only when a client connects. Traditional mode keeps the service process running all the time. How socket activation behaves With socket activation, the .socket

systemdsocket activationlibvirtdvirtqemud

Systemd socket activation starts the relevant libvirt daemon only when a client connects. Traditional mode keeps the service process running all the time.

How socket activation behaves

With socket activation, the .socket unit owns the listening endpoint and spawns the .service unit on demand.

BASH
systemctl status virtqemud.socket virtqemud.service
systemctl status libvirtd.socket libvirtd.service

systemctl status

Use systemctl status on both the .socket and the .service units together. Looking at only the service is how operators misread healthy socket activation as a failure.

Read sockets before services

When a libvirt service appears inactive, that may be correct. If the socket is enabled and listening, the service can still start on first client access.

Traditional mode

Traditional mode is simpler to reason about during debugging because the service is expected to stay resident. It can still be the right choice for older automation or when you want more obvious steady-state process visibility.

What changes for operators

  • systemctl status ...service is not enough by itself.
  • Socket ownership matters as much as process ownership.
  • Journal timestamps often begin exactly when the first client connects.

Quick decision points

Use socket activation when you want the default modern systemd flow and clean idle behavior.

Use traditional mode only when you have a concrete compatibility reason and you understand which sockets or listeners must be disabled first.

Socket activation pattern

The pattern is consistent: verify the listening socket first, then the service, then the journal entries created when the first client connects.

Related

  • Modular daemons context
  • virtqemud and virtproxyd roles
  • Troubleshooting playbook

On this page

  • How socket activation behaves
  • systemctl status
  • Traditional mode
  • What changes for operators
  • Quick decision points
  • Socket activation pattern