VirtualBox can't enable the AMD-V extension. Please disable the KVM kernel extension, recompile your kernel and reboot (VERR_SVM_IN_USE). How to fix it.
Introdução
Tivemos um avanço grande nas atualizações do Kernel do Linux. Sempre adicionando bastante coisa. Sempre corrigindo bastante coisa. Só que para quem usa distribuições como Debian as versões de todos os pacotes vão ficando muito antigas. Isso inclui o próprio Kernel.
Experiências
Eu tive experiências boas e ruins antecipando uso do Kernel do Linux preparado especificamente para o Debian, com regras do projeto. Essas versões costumam vir do Testing, do Unstable e até do Experimental. Não recomendo obviamente uso para ambiente de produção, já que tudo no Debian é testado a exaustão. Até finalmente chegarem à versão Stable. Pode levar longos anos. Porém o Kernel do Linux tem um ciclo bem mais curto de lançamentos no site oficial. Teoricamente poderia já pegar a versão estável mais nova e apenas ir atualizando. Mas compilar o dito cujo não é tarefa trivial.
No meu caso, monitoro o repositório Experimental para poder testar logo as versões mais recentes. Como não é recomendável deixar como versão de trabalho nas máquinas. Eu deixo a última atualização da versão Stable(no Debian está na 6.1.0-28 no momento em que redijo este artigo) sempre à disposição. Não recomendo desinstalar essa.
Versão mais recente(até o momento)
E finalmente chegamos ao Linux Kernel 6.12.3. Cheguei a instalar a versão Release Candidate, porém não compilava os módulos do Virtualbox de jeito nenhum. E está ainda no experimental. Agora finalmente apareceu no Unstable e cá estou para dar minhas impressões...pelo menos sobre o problema encontrado que é título deste artigo. Não adiantou nada. Não tinha opção específica na BIOS. Não adiantou recompilar os módulos(sim, na versão sem ser RC compila normalmente os bagulhetes do VB). Quando eu vou rodar o Virtualbox mostra o erro abaixo:
VirtualBox can't enable the AMD-V extension. Please disable the KVM kernel extension, recompile your kernel and reboot (VERR_SVM_IN_USE)
Pesquisei e cheguei um work around que funcionou bem aqui.
Work around
Basicamente você vai precisar criar um script abaixo e deixar em /usr/local/bin/
#!/bin/bash
killall VBoxSVC
rmmod kvm_amd
rmmod kvm
modprobe kvm
Guarde o nome do arquivo do seu script. Vamos precisar para a próxima etapa.
Crie um arquivo em /etc/systemd/system/ com o seguinte conteúdo:
[Unit]
Description=Script Final de Inicialização
After=graphical.target
[Service]
Type=oneshot
ExecStart=/usr/local/bin/nome-seu-script.sh
RemainAfterExit=yes
[Install]
WantedBy=graphical.target
Exemplo /etc/systemd/system/corrigir-vbox-kvm.service e /usr/local/bin/corrigir-vbox-kvm.sh
Agora execute os comandos abaixo:
sudo systemctl enable corrigir-vbox-kvm.service
sudo systemctl start corrigir-vbox-kvm.service
sudo systemctl status corrigir-vbox-kvm.service
Talvez precise acrescentar o seguinte no final do seu .profile ou .bashrc:
export VBOX_HWVIRTEX_IGNORE_SVM_IN_USE="true"
Pode ser que dê uns erros nos comandos acima. Para ter certeza de que o fix funcionou você pode precisar reiniciar.
Conclusão
Infelizmente precisei de receita de bolo para continuar usando o Virtualbox normalmente. Vamos ver se corrigem isso na próxima atualização. Mas parece que tudo está funcionando normalmente. Também testei alguns jogos pesados no Steam junto com o OBS, o que pesa bastante, e o resultado foi satisfatório.
Espero que tenha ajudado vocês. Abraço! Não se esqueçam de nos seguir nas redes e de se inscrever no canal lá no YouTube. Quem puder mande sua ajuda pelo pix da livepix. Valeu!
Gostou?
Inscreva-se no meu canal:
Quer ajudar? Manda um PIX:
https://livepix.gg/meurefugionerd