Problema com KVM ao tentar instalar WinBoat

Estou com dificuldade ao tentar inicializar container docker do WinBoat, estou recebendo um erro ao chegar na tela de instalação.

Verifiquei os logs do container Docker e diz o seguinte:

❯ ERROR: KVM acceleration is not available (/dev/kvm is missing), this will cause the machine to run about 10 times slower.
❯ ERROR: See the FAQ for possible causes, or disable acceleration by adding the "KVM=N" variable (not recommended).

No App do WinBoat mostra o seguinte:

Li a documentação e fiz os seguintes passos:

  • Verifiquei na BIOS se a virtualização estáva habilitada
  • Verifiquei se minha CPU tem suporte a virtualização (tem)
  • Adicionei kvm no meu grupo de usuário usando sudo usermod -aG kvm $USER
  • Verifiquei se é conflito na porta que o freeRDP usa por padrão
  • Fiz a instalação via LinuxToys

E como é se se esperar por eu esta fazendo esse post, não conseguir ter resultados.

Informações que podem ser úteis:

CPU: AMD Ryzen 7 5700U
KERNEL: 6.17.4-76061704-generic
OS: PopOS

Desde já agradeço!

Oi @luis3!

Me parece que o problema é um mapeamento de dispositivos mesmo.

Você olhou o /dev/kvm do container está mapeado para o /dev/kvm da máquina host?

Pelo visto você usou o LinuxToys para instalar, mas recomendaria testar o WinBoat direto também para ver se funciona.

Ele é um AppImage.

1 curtida

Opa dio!

Testei instalar o winboat direto também, tentei até instalar o dockurr direto também, usei o docker comprar que eles disponibiliza para instalação, e está mapeando para /dev/kvm em devices, não acho que seja o mapeamento.

Pior que estou sem opções, nem a IA me deu um norte kkkk

Você tem algo em mente? Sua experiência para talvez enxergar o que não estou conseguindo vai me ser muito útil!

Se está habilitado na bios, tente rodar os módulos

Depende se é amd ou intel

Para intel

kvm_intel e kvm

Para amd

kvm_amd e kvm

Exemplo

sudo modprobe kvm_amd kvm

Se funcionar, crie um arquivo

/etc/modules-load.d/kvm.conf

Adiciona

kvm
kvm_amd

Qual a sua placa-mãe?

veja o Hyper-V na bios

Veja a bateria cmos na bios

Veja VT-x/SVM, VT-d

Veja o IOMMU está disponivel

tentei o que falou, mas mesmo assim não funciona.

segue o meu docker compose do dockurr, caso ajude:

Mesa ou notebook?

Qual a placa?

A princípio não está definido na bios.

Você esta rodando dentro do VMware?

Olá luis!

Confirme se os módulos KVM necessários foram carregados pelo kernel:

lsmod | grep kvm

A saída deve mostrar kvm_intel ou kvm_amd, e kvm. Exemplo de saída

kvm_intel             380928  0
kvm                  1142784  1 kvm_intel
irqbypass              16384  1 kvm

Para verificar o suporte à virtualização de hardware (KVM) no seu CPU

egrep -c '(vmx|svm)' /proc/cpuinfo

Se o resultado for 1 ou maior, o KVM é suportado e pode ser usado.

Por fim, para um teste prático, você pode tentar iniciar uma máquina virtual usando o virt-manager

Verifiquei, todas as informações que eram esperadas batem.

Instala o virt-manager e cria uma máquina virtual do windows, assim teremos certeza que o kvm está ok.

Temos que ir eliminado as possibilidades.

opa, vou fazer isso hoje e trago o feedback

Aparentemente tudo certo, esta instalando ubuntu server sem complicações

Dada a quantidade de testes positivos quanto ao funcionamento do KVM, não podemos descartar a possibilidade de ser algum bug no software mesmo.

Mas ainda no docker, e se você tentar mapear assim:

 devices:
      - "/dev/kvm:/dev/kvm"

Do dispositivo do host, para o container.

Curiosamente tivemos um problema semelhante neste tópico: [RESOLVIDO] Windows em Docker nao reconhece kvm no Fedora 39

2 curtidas

Consegui vendo o tópico que me enviou, não instalar o winboat mas o dockurr diretamente.

O problema é que eu não estava rodando como root. Acredito que a mensagem de erro deveria ser mais descritiva né, mas enfim, deu certo. Obrigado!!

obs: ainda não sei como vou contornar isso pelo winboat, mas acho que agora ficou mais fácil

1 curtida

Este tópico foi fechado automaticamente 3 dias depois da última resposta. Novas respostas não são mais permitidas.