QUICKSTART / LIVE OPERATOR CONSOLE
Learn libvirt by operating it.
Start with a working command, trace what it touches, then descend into the exact daemon, network, storage, XML, and security concepts behind it.
$ virsh uri
qemu:///system
$ virsh list --all
Id Name State
- demo01 shut off
REQUEST PATH
Follow one virsh command through the stack.
virsh
The CLI parses your intent, selects a connection URI, and speaks the libvirt RPC protocol.
SYSTEM OR SESSION?
Connection URI matters.
qemu:///systemSystem-wide guests, privileged networking, shared storage, service-managed daemons, and policy-controlled access.
qemu:///sessionPer-user guests with user-owned storage and narrower networking capabilities. Useful, but not interchangeable with system mode.
COMMAND COMPOSER
Choose an operator intent.
virsh --connect qemu:///system list --allConnect to the system QEMU driver and list running and inactive domains.
FAILURE SIMULATOR
Start from the symptom.
- 01Check the URI: virsh uri
- 02Inspect socket units: systemctl status virtqemud.socket libvirtd.socket
- 03Confirm system versus session mode
- 04Review group membership and polkit decisions
Storage
Pools, volumes, qcow2, raw disks, permissions, backing chains, and safe snapshots.
Networking
NAT, routed, isolated, bridged, macvtap, dnsmasq, nftables, and interface XML.
Security
SELinux, sVirt labels, polkit, TLS, SASL, SSH transport, sockets, and least privilege.