Problema
Al intentar definir un dominio en libvirt en un servidor nuevo, encontré el siguiente error:
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'mientras que KVM estaba configurado correctamente:
kvm_ok_output.txt
$ kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be usedSolución
El problema en mi caso era que el usuario con el que se ejecutaba virsh no era miembro del grupo kvm.
Primero, determina el usuario usando
qemu_conf_user.txt
$ grep "user =" /etc/libvirt/qemu.conf
# user = "qemu" # Un usuario llamado "qemu"
# user = "+0" # Superusuario (uid=0)
# user = "100" # Un usuario llamado "100" o un usuario con uid=100
#user = "libvirt-qemu"
swtpm_user = "swtpm"La línea que debes buscar es user = "libvirt-qemu" - ya sea esté comentada o no.
En mi caso, el usuario era simplemente el predeterminado libvirt-qemu. Para solucionar el problema, añadí este usuario al grupo kvm:
add_kvm_group.sh
sudo usermod -aG kvm libvirt-qemuDespués de eso, necesitas reiniciar el demonio de libvirt:
restart_libvirtd.sh
sudo systemctl restart libvirtdluego, deberías poder definir el dominio sin ningún problema:
virsh_define.sh
virsh define domain.xml
Echa un vistazo a artículos similares por categoría:
Virtualization Linux
Si este artículo te ha ayudado, considera invitarme a un café o hacer una donación vía PayPal para apoyar la investigación y publicación de nuevos artículos en TechOverflow