
Como todos sabem, existem muitas distribuições GNU/Linux, talvez demais e deixando de lado as que são baseadas em outras, como Ubuntu e Mint, a instalação do Virtualbox é geralmente simples, mas funciona. Isso ocorre porque o Virtualbox precisa de cabeçalhos de kernel do Linux, além de certos módulos. Isso pode ser uma dor de cabeça às vezes e, em alguns casos, é até possível que você tenha que instalar um novo kernel para que a máquina virtual funcione.
Este tópico é talvez muito complicado. Vou oferecer algumas soluções mais comuns que você pode encontrar com o Virtualbox, mas possivelmente para o que eu expliquei acima, pode não funcionar para você.
Primeiro de tudo, você deve ter o pacote DKMS instalado no Ubuntu:
sudo apt update
sudo apt -y install dkms
sudo ldconfig
sudo dpkg --configure -a && sudo apt-get clean
Extension pack
Veja se a extensão está instalada:
sudo vboxmanage list extpacks
Instale um novo pacote de extensão e substitua o antigo:
sudo vboxmanage extpack install --replace /caminho/a/Oracle_VM_VirtualBox_Extension_Pack-x.x.x.x-xxxxxx.vbox-extpack
Passo a passo:
Remova o pacote de extensão antigo:
sudo vboxmanage extpack uninstall "Oracle VM VirtualBox Extension Pack"
Agora devemos limpar:
sudo vboxmanage extpack cleanup
Instale um novo:
sudo vboxmanage extpack install /caminho/a/Oracle_VM_VirtualBox_Extension_Pack-x.x.x.x-xxxxxx.vbox-extpack
Link para a extensão.
A VM está ausente
Às vezes, a VM pode estar faltando. Existe um erro possível.
Uma das razões pode ser a falta do arquivo .vbox localizado em:
~/VirtualBox VMs/Exemplo VM/Exemplo máquina.vbox
O arquivo geralmente está na mesma pasta:
~/VirtualBox VMs/Exemplo VM/Exemplo VM.vbox-prev
Uma solução alternativa seria fechar o VirtualBox e copiar o arquivo .vbox-prev para o mesmo local com a extensão .vbox:
cd ~/VirtualBox VMs/Exemplo VM/
cp “Exemplo VM.vbox-prev” “Exemplo VM.vbox”
…. e voltar a executar o VirtualBox.
Se a VM ainda assim não aparecer na lista de VMs do VirtualBox, é possível adicionar a VM novamente via Máquina> Menu Adicionar ou a tecla de atalho CTRL+A
, navegando pelo arquivo .vbox e adicionando-o.
Caso contrário, quando não houver nenhum arquivo .vbox *, crie uma nova máquina virtual usando o antigo arquivo de imagem de disco virtual .vdi (vdi é o disco rígido virtual). Se não houver nenhum arquivo .vdi, a VM desaparecerá. Seria útil ter uma cópia da VM somente na pasta ou exportada para .ova.
Copiar VM
Copie a pasta VM para outro armazenamento e tente adicionar a máquina (Máquina> Adicionar ou CTRL + A) retorna:
Não pode registrar o disco rígido ‘/path/to/VMs/<VM name>/<VM name>/<VDI name>.vdi’ {a73ccd48-a9b8-4274-954a-308c40634cae} porque já existe um disco rígido ‘/path/to/VMs/<VM name>/<VDI name>/<VDI name>.vdi’ con UUID {1690f3e8-dc15-42ff-975b-4c9fa1c0b448}.
Código do resultado:
NS_ERROR_INVALID_ARG (0x80070057)
Componente:
VirtualBoxWrap
Interface:
IVirtualBox {0169423f-46b4-cde9-91af-1e9d5b6cd945}
Solução:
Execute na linha de comando (substitua pelas informações apropriadas sobre o caminho e o nome do arquivo):
VBoxManage internalcommands sethduuid "/caminho/a/VMs/<VM name>/<VDI name>.vdi"
Abra o arquivo /caminho/a/VMs//.vbox e corrija o seguinte (em negrito):
- vdi nome e localização do arquivo (caminho)
- substitua o antigo UUID por um novo gerado
linhas 11-14:
<HardDisks>
<HardDisk uuid="{a73ccd48-a9b8-4274-954a-308c40634cae}" location="/caminho/a/VMs/<nome VM>/<nome VDI>.vdi" format="VDI" type="Normal"/>
<HardDisk uuid="{a73ccd48-a9b8-4274-954a-308c40634cae}" location="/caminho/a/VMs/<nome VM>/<nome VDI>.vdi" format="VDI" type="Normal"/>
</HardDisks>
linhas 195-197:
<AttachedDevice nonrotational=”true” type=”HardDisk” hotpluggable=”false” port=”0″ device=”0″>
<Image uuid=”{a73ccd48-a9b8-4274-954a-308c40634cae}”/>
</AttachedDevice>
A VM não pôde ser iniciada
Ao instalar um novo kernel, etc. e por algum motivo os novos módulos não são compilados. Às vezes pode ser necessário instalar uma nova versão do GCC no caso de uma versão muito nova do kernel e uma antiga distribuição GNU/Linux. Mas como eu disse no começo do artigo, os erros às vezes são complicados de serem resolvidos.
Solução possível:
Certifique-se de que o pacote dkms esteja instalado antecipadamente.
sudo vboxconfig
O vboxconfig geralmente está localizado na pasta /sbin/.
Solução (se não funcionar):
sudo /usr/lib/virtualbox/vboxdrv.sh setup
Reiniciando os módulos principais do VB:
sudo rcvboxdrv restart
Verifique se os módulos do kernel estão carregados:
sudo rcvboxdrv status
Ou bem:
sudo vboxdrv
Se não houver saída no terminal, tudo correu bem. Lembre-se que para compilar os módulos do Virtualbox você precisa dos cabeçalhos do kernel que você usa. Na família Debian ele é chamado de linux-headers, no RPM kernel-devel. Para ver o kernel que você tem em uso:
uname -r
Error QT
“Qt FATAL: This application failed to start because it could not find or load the Qt platform plugin “xcb”. Geralmente ocorre em plataformas de 32 bits.
Solução:
ldd /usr/lib/virtualbox/plugins/platforms/libqxcb.so | grep not
libQt5XcbQpaVBox.so.5 => not found
libQt5DBusVBox.so.5 => not found
libQt5GuiVBox.so.5 => not found
libQt5CoreVBox.so.5 => not found
sudo updatedb
locate libQt5XcbQpaVBox.so.5
/usr/lib/virtualbox/libQt5XcbQpaVBox.so.5
sudo ln -s /usr/lib/virtualbox/libQt5XcbQpaVBox.so.5 /lib/i386-linux-gnu/
sudo ln -s /usr/lib/virtualbox/libQt5DBusVBox.so.5 /lib/i386-linux-gnu/
sudo ln -s /usr/lib/virtualbox/libQt5GuiVBox.so.5 /lib/i386-linux-gnu/
sudo ln -s /usr/lib/virtualbox/libQt5CoreVBox.so.5 /lib/i386-linux-gnu/
Confira:
ls -l /lib/i386-linux-gnu/ | grep Qt
VERR_VMX_NO_VMX
Error: Hardware virtualization (VT-x/AMD-V) in exact virtual machine is not set.
Alterar das configurações:
Máquina->Configuração ou CTRL+S
Sistema->Aceleração
Virtualização de hardware -> Ativar VT-X/AMD-V
ou execute o comando no terminal:
VBoxManage modifyvm <uuid|vmname>[--hwvvirtex on|off]