Liibvirtd service won't start

inxi -Fxz
❯ inxi -Fxz  
System:    Kernel: 5.10.7-3-MANJARO x86_64 bits: 64 compiler: gcc v: 10.2.1 Desktop: KDE Plasma 5.20.5 
           Distro: Manjaro Linux 
Machine:   Type: Desktop Mobo: MSI model: Z97S SLI Krait Edition (MS-7922) v: 2.0 serial: <filter> 
           UEFI: American Megatrends v: 10.7 date: 02/16/2016 
CPU:       Info: Quad Core model: Intel Core i5-4690K bits: 64 type: MCP arch: Haswell rev: 3 
           L2 cache: 6 MiB 
           flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 28008 
           Speed: 805 MHz min/max: 800/4000 MHz Core speeds (MHz): 1: 805 2: 825 3: 805 4: 808 
Graphics:  Device-1: Intel Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics 
           vendor: Micro-Star MSI driver: i915 v: kernel bus ID: 00:02.0 
           Device-2: NVIDIA GM206 [GeForce GTX 960] vendor: ASUSTeK driver: nvidia v: 460.32.03 
           bus ID: 01:00.0 
           Display: x11 server: X.Org 1.20.10 driver: loaded: nvidia resolution: 1920x1080~60Hz 
           OpenGL: renderer: GeForce GTX 960/PCIe/SSE2 v: 4.6.0 NVIDIA 460.32.03 direct render: Yes 
Audio:     Device-1: Intel Xeon E3-1200 v3/4th Gen Core Processor HD Audio vendor: Micro-Star MSI 
           driver: snd_hda_intel v: kernel bus ID: 00:03.0 
           Device-2: Intel 9 Series Family HD Audio vendor: Micro-Star MSI driver: snd_hda_intel v: kernel 
           bus ID: 00:1b.0 
           Device-3: NVIDIA GM206 High Definition Audio vendor: ASUSTeK driver: snd_hda_intel v: kernel 
           bus ID: 01:00.1 
           Device-4: Logitech QuickCam Communicate STX type: USB driver: gspca_zc3xx,snd-usb-audio 
           bus ID: 3-4:2 
           Sound Server: ALSA v: k5.10.7-3-MANJARO 
Network:   Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet vendor: Micro-Star MSI 
           driver: r8169 v: kernel port: d000 bus ID: 05:00.0 
           IF: enp5s0 state: up speed: 1000 Mbps duplex: full mac: <filter> 
Drives:    Local Storage: total: 2.72 TiB used: 1002.99 GiB (36.0%) 
           ID-1: /dev/nvme0n1 vendor: Samsung model: SSD 970 EVO Plus 1TB size: 931.51 GiB temp: 33.9 C 
           ID-2: /dev/sda vendor: Western Digital model: WD5000BEKT-00KA9T0 size: 465.76 GiB 
           ID-3: /dev/sdb vendor: Samsung model: SSD 850 EVO 250GB size: 232.89 GiB 
           ID-4: /dev/sdc vendor: Kingston model: SA400S37240G size: 223.57 GiB 
           ID-5: /dev/sdd type: USB vendor: Western Digital model: WD My Passport 0820 size: 931.48 GiB 
Partition: ID-1: / size: 146.65 GiB used: 17.53 GiB (12.0%) fs: ext4 dev: /dev/nvme0n1p3 
           ID-2: /boot/efi size: 5.49 GiB used: 312 KiB (0.0%) fs: vfat dev: /dev/nvme0n1p1 
           ID-3: /home size: 353.35 GiB used: 16.61 GiB (4.7%) fs: ext4 dev: /dev/nvme0n1p4 
Swap:      ID-1: swap-1 type: partition size: 16 GiB used: 0 KiB (0.0%) dev: /dev/nvme0n1p2 
Sensors:   System Temperatures: cpu: 29.8 C mobo: 27.8 C gpu: nvidia temp: 53 C 
           Fan Speeds (RPM): N/A gpu: nvidia fan: 27% 
Info:      Processes: 211 Uptime: 26m Memory: 15.52 GiB used: 4.36 GiB (28.1%) Init: systemd Compilers: 
           gcc: 10.2.0 Packages: 1403 Shell: Zsh v: 5.8 inxi: 3.2.02

I’ve spent several hours Google-ing and trying to get libvirt to start without the following error:

Error

 ❯ sudo systemctl status libvirtd.service
    ● libvirtd.service - Virtualization daemon
         Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; vendor preset: disabled)
         Active: failed (Result: exit-code) since Tue 2021-01-19 19:51:21 PST; 16s ago
    TriggeredBy: ● libvirtd.socket
                 ● libvirtd-admin.socket
                 ● libvirtd-ro.socket
           Docs: man:libvirtd(8)
                 https://libvirt.org
        Process: 3405 ExecStart=/usr/bin/libvirtd $LIBVIRTD_ARGS (code=exited, status=3)
       Main PID: 3405 (code=exited, status=3)

    Jan 19 19:51:21 username systemd[1]: libvirtd.service: Scheduled restart job, restart counter is at 5.
    Jan 19 19:51:21 username systemd[1]: Stopped Virtualization daemon.
    Jan 19 19:51:21 username systemd[1]: libvirtd.service: Start request repeated too quickly.
    Jan 19 19:51:21 username systemd[1]: libvirtd.service: Failed with result 'exit-code'.
    Jan 19 19:51:21 username systemd[1]: Failed to start Virtualization daemon.
    Jan 19 19:51:27 username systemd[1]: libvirtd.service: Start request repeated too quickly.
    Jan 19 19:51:27 username systemd[1]: libvirtd.service: Failed with result 'exit-code'.
    Jan 19 19:51:27 username systemd[1]: Failed to start Virtualization daemon.

❯virsh -c qemu:///system
error: failed to connect to the hypervisor
error: Failed to connect socket to '/var/run/libvirt/libvirt-sock': Connection refused

System


❯ lsmod | grep kvm
kvm_intel             327680  0
kvm                   933888  1 kvm_intel
irqbypass              16384  1 kvm

❯ LC_ALL=C lscpu | grep Virtualization
Virtualization:                  VT-x

❯ zgrep CONFIG_KVM /proc/config.gz
CONFIG_KVM_GUEST=y
CONFIG_KVM_MMIO=y
CONFIG_KVM_ASYNC_PF=y
CONFIG_KVM_VFIO=y
CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y
CONFIG_KVM_COMPAT=y
CONFIG_KVM_XFER_TO_GUEST_WORK=y
CONFIG_KVM=m
CONFIG_KVM_INTEL=m
CONFIG_KVM_AMD=m
CONFIG_KVM_AMD_SEV=y
CONFIG_KVM_MMU_AUDIT=y

❯ emulator -accel-check
accel:
0
KVM (version 12) is installed and usable.
accel

Arch Wiki:

I’ve followed several posts on setup:

Just a couple of the many troubleshooting articles I’ve tried:

Has anyone seen this one before and recall what you did to address it? Any thoughts, by chance?

Thanks!

Find out what is preventing libvirtd from starting. The systemctl status command just shows the last log entries, but not the error.

Use journalctl -u libvirtd.service to see all log messages.

Thanks for the reply @xabbu, that’s very helpful to finally be able to see the actual error now lol.

It was full of this following:

Jan 19 19:51:21 username systemd[1]: Started Virtualization daemon.
Jan 19 19:51:21 username libvirtd[3392]: 3392: info : libvirt version: 6.5.0
Jan 19 19:51:21 username libvirtd[3392]: 3392: info : hostname: username
Jan 19 19:51:21 username libvirtd[3392]: 3392: error : virModuleLoadFile:53 : internal error: Failed to load module '/usr/lib/libvirt/storage-backend/libvirt_storage_backend_rbd.so': libfmt.so.7: cannot open shared object file: No such file or directory
Jan 19 19:51:21 username systemd[1]: libvirtd.service: Main process exited, code=exited, status=3/NOTIMPLEMENTED
Jan 19 19:51:21 username systemd[1]: libvirtd.service: Failed with result 'exit-code'.
Jan 19 19:51:21 username systemd[1]: libvirtd.service: Scheduled restart job, restart counter is at 4.
Jan 19 19:51:21 username systemd[1]: Stopped Virtualization daemon.
Jan 19 19:51:21 username systemd[1]: Started Virtualization daemon.
Jan 19 19:51:21 username libvirtd[3405]: 3405: info : libvirt version: 6.5.0
Jan 19 19:51:21 username libvirtd[3405]: 3405: info : hostname: username
Jan 19 19:51:21 username libvirtd[3405]: 3405: error : virModuleLoadFile:53 : internal error: Failed to load module '/usr/lib/libvirt/storage-backend/libvirt_storage_backend_rbd.so': libfmt.so.7: cannot open shared object file: No such file or directory
Jan 19 19:51:21 username systemd[1]: libvirtd.service: Main process exited, code=exited, status=3/NOTIMPLEMENTED
Jan 19 19:51:21 username systemd[1]: libvirtd.service: Failed with result 'exit-code'.
Jan 19 19:51:21 username systemd[1]: libvirtd.service: Scheduled restart job, restart counter is at 5.
Jan 19 19:51:21 username systemd[1]: Stopped Virtualization daemon.
Jan 19 19:51:21 username systemd[1]: libvirtd.service: Start request repeated too quickly.
Jan 19 19:51:21 username systemd[1]: libvirtd.service: Failed with result 'exit-code'.
Jan 19 19:51:21 username systemd[1]: Failed to start Virtualization daemon.
Jan 19 19:51:27 username systemd[1]: libvirtd.service: Start request repeated too quickly.
Jan 19 19:51:27 username systemd[1]: libvirtd.service: Failed with result 'exit-code'.
Jan 19 19:51:27 username systemd[1]: Failed to start Virtualization daemon.

I’ll see what I can do with that…

P.s. I tried journalctl -xe but, it didn’t give me any more details; nice to know we can dig down a bit deeper with journalctl -u libvirtd.service

Okay, so far I think it’s working now:

❯ sudo systemctl status libvirtd
● libvirtd.service - Virtualization daemon
     Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; vendor preset: disabled)
     Active: active (running) since Tue 2021-01-19 20:55:41 PST; 22s ago
TriggeredBy: ● libvirtd-ro.socket
             ● libvirtd-admin.socket
             ● libvirtd.socket
       Docs: man:libvirtd(8)
             https://libvirt.org
   Main PID: 560 (libvirtd)
      Tasks: 17 (limit: 32768)
     Memory: 33.7M
     CGroup: /system.slice/libvirtd.service
             └─560 /usr/bin/libvirtd --timeout 120

Jan 19 20:55:41 username systemd[1]: Started Virtualization daemon.

I found this:

libvirt_storage_backend_rbd.so links to both librbd.so.1 and librados.so.2 which both link to libceph-common.so.2 which links to libfmt.so.7
fmt is only listed in ceph-libs makedepends. Add fmt to depends of ceph-libs?

I installed fmt and it seem to start working right away and after a reboot too.

❯ sudo pacman -Syu fmt

Thanks again @xabbu :grin:

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.