Resumindo: Minha máquina virtual chamada CONAN01 não está inicializando em gnome-boxes, recebo/vejo diferentes erros e não sei quais são os verdadeiros problemas por trás deles:
Erro 1:
Ao iniciar o gnome-boxes a partir do ambiente de desktop Gnome e clicar na minha máquina virtual CONAN01 para iniciá-la, recebo uma mensagem pop-up com a opção de abrir o log de erros e nesse log de erros posso ver as últimas linhas, que estado:
2022-06-15 09:39:22.707+0000: Domain id=1 is tainted: host-cpu
char device redirected to /dev/pts/0 (label charserial0)
2022-06-15T09:39:22.800582Z qemu-system-x86_64: warning: This family of AMD CPU doesn't support hyperthreading(2)
Please configure -smp options properly or try enabling topoext feature.
2022-06-15T10:30:56.757942Z qemu-system-x86_64: terminating on signal 15 from pid 3544 (/lib/systemd/systemd)
Erro 2:
Ao usar o terminal para iniciar gnome-boxes e, em seguida, usar o mouse para clicar e executar minha máquina virtual CONAN01, recebo o seguinte erro:
gnome-boxes
saída de erro na inicialização do gnome-boxes:
(gnome-boxes:709111): Gtk-WARNING **: 22:02:27.216: GtkFlowBox with a model will ignore sort and filter functions
(gnome-boxes:709111): Gtk-WARNING **: 22:02:27.217: GtkListBox with a model will ignore sort and filter functions
(gnome-boxes:709111): GLib-GObject-WARNING **: 22:02:28.067: ../../../gobject/gsignal.c:2715: handler '2888' of instance '0x562fb55b44e0' is not blocked
saída de erro na inicialização da máquina virtual CONAN01:
(gnome-boxes:709111): Boxes-WARNING **: 22:02:32.045: machine.vala:605: Failed to start CONAN01: Unable to start domain: internal error: /usr/lib/qemu/qemu-bridge-helper --use-vnet --br=virbr0 --fd=31: failed to communicate with bridge helper: Transport endpoint is not connected
stderr=failed to create tun device: Operation not permitted
Erro 3:
Ao executar as gnome-boxes - verificações CLI executando o comando necessário, recebo as seguintes informações:
gnome-boxes --checks
saída de informação:
(gnome-boxes:717997): Boxes-WARNING **: 22:50:30.599: util-app.vala:376: Failed to execute child process ?restorecon? (No such file or directory)
• The CPU is capable of virtualization: yes
• The KVM module is loaded: yes
• Libvirt KVM guest available: yes
• Boxes storage pool available: no
/root/.local/share/gnome-boxes/images is known to libvirt as GNOME Boxes’s storage pool but this directory does not exist
• The SELinux context is default: no
Report bugs to <http://gitlab.gnome.org/gnome/gnome-boxes/issues>.
Boxes home page: <https://wiki.gnome.org/Apps/Boxes>.
Apesar de alterar a localização do pool de armazenamento usando os comandos necessários, mas a saída mostrando a configuração XML não mudou, virsh e gnome-boxes ainda acham que a localização antiga é válida, minha intenção era alterar “/home/myusername/ .local/share/gnome-boxes/images”:
virsh pool-info gnome-boxes
Name: gnome-boxes
UUID: edb0bf37-df0f-4295-a3cf-0ced96970de0
State: running
Persistent: yes
Autostart: yes
Capacity: 907,44 GiB
Allocation: 531,49 GiB
Available: 375,95 GiB
virsh pool-dumpxml gnome-boxes
<pool type='dir'>
<name>gnome-boxes</name>
<uuid>edb0bf37-df0f-4295-a3cf-0ced96970de0</uuid>
<capacity unit='bytes'>974357393408</capacity>
<allocation unit='bytes'>570679726080</allocation>
<available unit='bytes'>403677667328</available>
<source>
</source>
<target>
<path>/root/.local/share/gnome-boxes/images</path>
<permissions>
<mode>0744</mode>
<owner>0</owner>
<group>0</group>
</permissions>
</target>
</pool>
sudo virsh pool-edit gnome-boxes
virsh pool-dumpxml gnome-boxes
<pool type='dir'>
<name>gnome-boxes</name>
<uuid>edb0bf37-df0f-4295-a3cf-0ced96970de0</uuid>
<capacity unit='bytes'>974357393408</capacity>
<allocation unit='bytes'>570679726080</allocation>
<available unit='bytes'>403677667328</available>
<source>
</source>
<target>
<path>/root/.local/share/gnome-boxes/images</path>
<permissions>
<mode>0744</mode>
<owner>0</owner>
<group>0</group>
</permissions>
</target>
</pool>
A solução é habilitar a rede no qemu-instance qemu:///session, porque
gnome-boxes
cria as máquinas virtuais nessa instância, que por padrão não pode ter acesso sofisticado à rede.Habilitando-o dando
qemu-bridge-helper
um bit setuid:sudo chmod 4755 /usr/lib/qemu/qemu-bridge-helper
ou você pode habilitar todos os executáveis nessa pasta:
sudo chmod 4755 /usr/lib/qemu/*
Informações mais sofisticadas podem ser encontradas aqui e aqui: