Virtualização · 5 min read · Dec 07, 2025
VBoxHeadless - Executando Máquinas Virtuais com VirtualBox 5.1 em um Servidor Ubuntu 16.04 LTS sem Interface Gráfica
Este guia explica como você pode executar máquinas virtuais com VirtualBox 5.1 em um servidor Ubuntu 16.04 sem interface gráfica. Normalmente, você usa a GUI do VirtualBox para gerenciar suas máquinas virtuais, mas um servidor não possui um ambiente de desktop. Felizmente, o VirtualBox vem com uma ferramenta chamada VBoxHeadless que permite conectar-se às máquinas virtuais por meio de uma conexão de desktop remoto, portanto, não há necessidade da GUI do VirtualBox.
1 Nota Preliminar
Eu testei isso em um servidor Ubuntu 16.04 (sistema host) com o endereço IP 192.168.1.100 onde estou logado como um usuário normal (nome de usuário administrador neste exemplo) em vez de como root.
2 Instalando o VirtualBox
Para instalar o VirtualBox 5.1 em nosso servidor Ubuntu 16.04, abrimos /etc/apt/sources.list…
sudo nano /etc/apt/sources.list… e adicionamos a seguinte linha a ele:
deb http://download.virtualbox.org/virtualbox/debian xenial contribEm seguida, baixamos a chave pública do VirtualBox…
wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -… e atualizamos nosso banco de dados de pacotes:
sudo apt-get updateDepois, instalamos o VirtualBox 5.1 da seguinte forma:
sudo apt-get install linux-headers-$(uname -r) build-essential virtualbox-5.1 dkms(O pacote dkms garante que os módulos do kernel do host do VirtualBox sejam atualizados corretamente se a versão do kernel Linux mudar.)
A partir da versão 4.0, o VirtualBox introduziu os chamados “pacotes de extensão” e terceirizou algumas funcionalidades como suporte a conexão de desktop remoto (VRDP) que faziam parte dos pacotes do VirtualBox antes da versão 4.0 para esses pacotes de extensão. Como precisamos de conexões de desktop remoto para controlar nossas máquinas virtuais, precisamos instalar o pacote de extensão apropriado agora. Vá para http://www.virtualbox.org/wiki/Downloads, e você encontrará um link para o seguinte pacote de extensão:
VirtualBox 5.1 Oracle VM VirtualBox Extension PackBaixe e instale o pacote de extensão da seguinte forma:
cd /tmp
wget http://download.virtualbox.org/virtualbox/5.1.0/Oracle_VM_VirtualBox_Extension_Pack-5.1.0-108711.vbox-extpack
sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-5.1.0-108711.vbox-extpack(Certifique-se de pegar a versão mais recente do site do VirtualBox e usar sudo para instalar o arquivo extpack com VBoxManage.)
Agora devemos adicionar o usuário que executará o VirtualBox (administrador neste exemplo) ao grupo vboxusers:
sudo adduser administrator vboxusersO VirtualBox agora está instalado e pronto para ser usado.
3 Usando o VirtualBox na Linha de Comando
3.1 Criando uma VM
Para criar uma VM na linha de comando, podemos usar o comando VBoxManage. Veja
VBoxManage --helppara uma lista de opções disponíveis e (altamente recomendado!) dê uma olhada em http://www.virtualbox.org/manual/ch08.html.
Agora vou criar uma VM Ubuntu 16.04 Server com 2048MB de memória e um disco rígido de 10GB a partir da imagem iso do Ubuntu 16.04 Server (que eu armazenei em /home/administrator/iso/ubuntu-16.04-server-amd64.iso):
VBoxManage createvm --name "Ubuntu 16.04 Server" --register
VBoxManage modifyvm "Ubuntu 16.04 Server" --memory 2048 --acpi on --boot1 dvd --nic1 bridged --bridgeadapter1 ens33
VBoxManage createhd --filename /home/administrator/Ubuntu_16_04_Server.vdi --size 10000
VBoxManage storagectl "Ubuntu 16.04 Server" --name "IDE Controller" --add ide
VBoxManage storageattach "Ubuntu 16.04 Server" --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium /home/administrator/Ubuntu_16_04_Server.vdi
VBoxManage storageattach "Ubuntu 16.04 Server" --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/administrator/iso/ubuntu-16.04-server-amd64.iso
VBoxManage modifyvm "Ubuntu 16.04 Server" --vrde onAgora prossiga para o capítulo 3.3 para iniciar a vm e, em seguida, conectar-se à VM com um cliente de desktop remoto, conforme descrito no capítulo 4.
3.2 Importando uma VM Existente
Vamos supor que você tenha uma VM chamada examplevm que deseja reutilizar neste host. No host antigo, você deve ter um diretório Machines/examplevm no diretório do VirtualBox; Machines/examplevm deve conter o arquivo examplevm.xml. Copie o diretório examplevm (incluindo o arquivo examplevm.xml) para o seu novo diretório Machines (se o seu nome de usuário for administrator, este é /home/administrator/.VirtualBox/Machines - o resultado deve ser /home/administrator/.VirtualBox/Machines/examplevm/examplevm.xml).
Além disso, copie o arquivo examplevm.vdi do antigo diretório VDI para o novo (por exemplo, /home/administrator/.VirtualBox/VDI/examplevm.vdi).
Depois, você deve registrar a VM importada:
VBoxManage registervm Machines/examplevm/examplevm.xml3.3 Iniciando uma VM com VBoxHeadless
Independentemente de você criar uma nova VM ou importar uma antiga, você pode iniciá-la com o comando:
VBoxHeadless --startvm "Ubuntu 16.04 Server"(Substitua Ubuntu 16.04 Server pelo nome da sua VM.)
VBoxHeadless iniciará a VM e um servidor VRDP (VirtualBox Remote Desktop Protocol) que permite que você veja a saída da VM remotamente em outra máquina.
Para parar uma VM, execute
VBoxManage controlvm "Ubuntu 16.04 Server" poweroffPara pausar uma VM, execute
VBoxManage controlvm "Ubuntu 16.04 Server" pausePara reiniciar uma VM, execute
VBoxManage controlvm "Ubuntu 16.04 Server" resetPara saber mais sobre VBoxHeadless, dê uma olhada em
VBoxHeadless --helpe em http://www.virtualbox.org/manual/ch07.html#vboxheadless.
4 Conectando-se a uma VM a partir de um Desktop Remoto
4.1 Windows
Você pode usar a ferramenta de Conexão de Área de Trabalho Remota embutida para se conectar à VM.
Digite o nome do host ou o endereço IP do host (não do convidado!):

E voilà, você deve estar conectado à VM:

4.2 Desktop Ubuntu
Em desktops Ubuntu, você pode usar o Cliente de Área de Trabalho Remota Remmina ou gnome-rdp para se conectar à VM.
Instale o cliente com apt:
sudo apt-get install remmina remmina-plugin-rdpBasta procurar por remmina e, em seguida, clicar duas vezes no ícone do Cliente Remmina para iniciar o aplicativo RDP.
No Cliente de Área de Trabalho Remota Remmina, clique no ícone de mais para adicionar uma nova conexão de desktop remoto:

Na janela de Preferência de Área de Trabalho Remota, preencha um nome para o perfil (como Ubuntu 16.04 Server), certifique-se de que RDP esteja selecionado como o protocolo (deve estar selecionado por padrão), em seguida, preencha o endereço IP do host - não o IP do convidado do VirtualBox! - no campo Servidor, e selecione uma profundidade de cor maior do que o padrão de 8bpp - 16bpp está ok. Em seguida, clique em Conectar:

E voilà, você deve estar conectado à VM:

4.3 Se a Conexão de Área de Trabalho Remota não funcionar…
Se a conexão de desktop remoto não funcionar, você provavelmente perdeu a etapa em que instalei o pacote de extensão do VirtualBox no capítulo 2. Por favor, instale o pacote de extensão agora, pare sua máquina virtual (veja o capítulo 3.3) e modifique sua máquina virtual para aceitar conexões de desktop remoto:
VBoxManage modifyvm "Ubuntu 16.04 Server" --vrde on(Se o pacote de extensão já estiver instalado quando você criar sua máquina virtual, as conexões de desktop remoto são habilitadas automaticamente.)
Então inicie sua máquina virtual novamente.
5 Links
- VirtualBox: http://www.virtualbox.org/
- Ubuntu: http://www.ubuntu.com/
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.