Embora a melhor forma de virtualizar hardware em linux seja com KVM+qemu+(virt-manager ou gnome boxes) (aqui os tutoriais do virt-manager e do gnome-boxes e aqui também), muitos ainda usam VirtualBox da Oracle pois já usavam quando tinha máquinas windows, ou porque estão seguindo algum curso e as orientações são todas baseadas no VirtualBox.
O problema de usar virtualbox em host linux surge quando há uma atualização de kernel no host (o que no fedora pode acontecer algumas vezes ao mês ), o que vai sempre ocasionar um erro na próxima execução de uma máquina virtual no VirtualBox, isto ocorre pois o ele não é nativo do kernel linux e precisa a cada vez ter um código específico "injetado" novamente como um módulo do novo kernel.
O procedimento para fazer isso não é muito complicado não, mas precisa que se tenha o repositório RPM fusion habilitado, para que o DNF baixe os pacotes necessários.
Aqui vou aproveitar e listar os dois tutorias de instalação que temos no forum sobre como instalar VirtualBox no fedora:
Instalando e configurando virtualbox no fedora pelo rpmfusion (funciona no F31/32/33)
Instalando VirtualBox baixando o rpm do site deles (atualmente a última versão disponível lá para fedora era a F32, e ela não serve pra versões posteriores)
Depois de algum tempo sem usar seu virtualbox e após algumas atualizações de seu sistema fedora, incluindo o kernel, você inicia seu virtual box na esperança de continuar alguma atividade naquela máquina virtual do windows que você ainda mantém por causa de um certo programa.
Entretanto o que acontece é que aparecem estas mensagens abaixo ao tentar iniciar a VM:
Observe que nesta ultima mensagem é mencionado especificamente que falta um "kernel driver", pois o kernel atualizado é diferente do que existia no momento da primeira instalação do VirtualBox.
Como citei no começo, para baixar os pacotes atualizados necessários para a correção, é necessário habilitar os repositórios RPMfusion (neste caso específico o rpm fusion free).
1 - Caso você ainda não tenha habilitado ele, aqui vai o código pra você fazer isso pelo terminal (caso já tenha feito antes, pode seguir pro próximo passo).
sudo dnf install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
Caso você queira fazer isso pelo ambiente gráfico pode ver nesse outro tutorial como fazer isso pro fedora worstation.
2 - Abra um terminal e digite o seguinte comando:
sudo dnf install kernel-devel-$(uname -r) akmod-VirtualBox
O dnf verificará os repositórios e informará os pacotes que irá instalar.
ATENÇÃO: Caso você tenha instalado baixando o RPM do site do VirtualBox e instalado para uma versão que não a correta (por exemplo F32 pra instalar no F33) a correção não irá funcionar, pois haverá conflito de versões instaladas.
Após baixar os pacotes, durante a execução dos scripts de instalação, em um momento ele perguntará pra você se deseja adicionar uma chave, responda "yes", ele continuará com a instalação até o final.
3 - Após encerrar a instalação, digite essas linhas no terminal, após cada uma dê "enter" e espere a saída do comando:
sudo akmods
sudo systemctl restart vboxdrv
lsmod | grep -i vbox
Aqui um print da tela com os resultados:
Se o resultado for semelhante com essa imagem acima, é porque deu certo.
4 - Reinicie sua máquina e experimente abrir a VM no VirtualBox novamente.
Sucesso!!!! Aqui no exemplo uma VM de F32 Workstation rodando em VirtualBox num host F33 Cinnamon.
Aqui pra mostrar um pouco do poder da virtualização
Fedora 33 KDE rodando em VirtualBox dentro de um Fedora 33 Workstation rodando em qemu/virt-manager dentro de um host Fedora 33 KDE...
Quer participar e contribuir? Clique no botão "Registrar-se" se é sua primeira vez aqui. Se você já é um dos nossos, clique em "Entrar".