Wie ich den libvirt-Fehler behoben habe: unsupported configuration: Emulator '/usr/bin/qemu-system-x86_64' does not support virt type 'kvm'

Problem

Beim Versuch, eine Domain in libvirt auf einem neuen Server zu definieren, trat der folgende Fehler auf:

virsh_define_error.txt
$ virsh define domain.xml
error: Failed to define domain from domain.xml
error: unsupported configuration: Emulator '/usr/bin/qemu-system-x86_64' does not support virt type 'kvm'

während KVM ordnungsgemäß eingerichtet war:

kvm_ok_output.txt
$ kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used

Lösung

Das Problem in meinem Fall war, dass der Benutzer, als den virsh ausgeführt wurde, nicht Mitglied der kvm-Gruppe war.

Bestimme zuerst den Benutzer mit

qemu_conf_user.txt
$ grep "user =" /etc/libvirt/qemu.conf
#       user = "qemu"   # Ein Benutzer namens "qemu"
#       user = "+0"     # Superuser (uid=0)
#       user = "100"    # Ein Benutzer namens "100" oder ein Benutzer mit uid=100
#user = "libvirt-qemu"
swtpm_user = "swtpm"

Die Zeile, nach der du suchen musst, ist user = "libvirt-qemu" - ob auskommentiert oder nicht.

In meinem Fall war der Benutzer einfach der Standard-libvirt-qemu. Um das Problem zu beheben, fügte ich diesen Benutzer zur kvm-Gruppe hinzu:

add_kvm_group.sh
sudo usermod -aG kvm libvirt-qemu

Danach musst du den libvirt-Daemon neu starten:

restart_libvirtd.sh
sudo systemctl restart libvirtd

danach solltest du die Domain ohne Probleme definieren können:

virsh_define.sh
virsh define domain.xml

Ähnliche Beiträge nach Kategorie: Virtualization, Linux