Virtualização · 5 min read · Dec 02, 2025
VBoxHeadless - Executando Máquinas Virtuais Com VirtualBox 4.1 Em Um Servidor OpenSUSE 12.1 Sem Cabeça
VBoxHeadless - Executando Máquinas Virtuais Com VirtualBox 4.1 Em Um Servidor OpenSUSE 12.1 Sem Cabeça
Versão 1.0
Autor: Falko Timme
Siga-me no Twitter
Este guia explica como você pode executar máquinas virtuais com VirtualBox 4.1 em um servidor OpenSUSE 12.1 sem cabeça. Normalmente, você usa a GUI do VirtualBox para gerenciar suas máquinas virtuais, mas um servidor não tem um ambiente de desktop. Felizmente, o VirtualBox vem com uma ferramenta chamada VBoxHeadless que permite que você se conecte às máquinas virtuais por meio de uma conexão de desktop remoto, então não há necessidade da GUI do VirtualBox.
Não dou nenhuma garantia de que isso funcionará para você!
1 Nota Preliminar
Eu testei isso em um servidor OpenSUSE 12.1 (sistema host) com o endereço IP 192.168.0.100 onde estou logado como um usuário normal (nome de usuário admin neste exemplo) em vez de como root.
Se você tiver apenas uma conta root, mas nenhuma conta de usuário normal, crie uma da seguinte forma (usuário admin, grupo admin)…
# groupadd admin
# useradd -d /home/admin -m -g admin -s /bin/bash admin… crie uma senha para o novo usuário…
# passwd admin… e faça login como esse usuário.
2 Instalando o VirtualBox
Para instalar o VirtualBox 4.1 em nosso servidor OpenSUSE 12.1, precisamos de privilégios de root, portanto, executamos
$ suPrimeiro, precisamos descobrir qual kernel temos instalado:
# uname -aserver1:/home/admin # uname -a
Linux server1 3.1.0-1.2-desktop #1 SMP PREEMPT Thu Nov 3 14:45:45 UTC 2011 (187dde0) x86_64 x86_64 x86_64 GNU/Linux
server1:/home/admin #Como você pode ver, eu tenho o pacote kernel-desktop instalado - se você tiver o pacote kernel-server instalado, substitua desktop por server no seguinte comando.
Instalamos as dependências para o VirtualBox 4.1 da seguinte forma (instalando novamente o pacote kernel-desktop / kernel-server, garantimos que temos a versão mais recente instalada):
# yast -i kernel-desktop kernel-desktop-devel kernel-source kernel-syms Xerces-c gcc makeSe o kernel for atualizado, o YaST informará que você deve reiniciar o sistema - neste caso, execute:
# rebootFaça login como o usuário normal novamente e depois torne-se root:
$ suEm seguida, baixe e registre a chave pública rpm do VirtualBox:
# wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc
# rpm --import oracle_vbox.ascAgora habilitamos o repositório do VirtualBox OpenSUSE em nosso sistema (não há arquivo de repositório para OpenSUSE 12.1 porque o arquivo de repositório para 11.4 funciona no 12.1 também):
# cd /etc/zypp/repos.d/
# wget http://download.virtualbox.org/virtualbox/rpm/opensuse/11.4/virtualbox.repoAgora podemos simplesmente instalar o VirtualBox 4.1 da seguinte forma:
# yast -i VirtualBox-4.1Depois, certifique-se de que o módulo do kernel vboxdrv está carregado:
# modprobe vboxdrvO seguinte comando garante que o módulo do kernel vboxdrv seja carregado automaticamente sempre que você inicializar o sistema:
# insserv vboxdrvA 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:
Pacote de Extensão Oracle VM VirtualBox 4.1.18
Suporte para dispositivos USB 2.0, RDP do VirtualBox e inicialização PXE para placas Intel.Baixe e instale o pacote de extensão da seguinte forma:
# cd /tmp
# wget http://download.virtualbox.org/virtualbox/4.1.18/Oracle_VM_VirtualBox_Extension_Pack-4.1.18-78361.vbox-extpack
# sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.1.18-78361.vbox-extpack(Assegure-se de pegar a versão mais recente do site do VirtualBox.)
Agora devemos adicionar o usuário que executará o VirtualBox (admin neste exemplo) ao grupo vboxusers:
# /usr/sbin/usermod -G vboxusers admin(Você pode ter que sair e entrar novamente para que essa mudança tenha efeito.)
O VirtualBox agora está instalado e pronto para ser usado.
Digite
# exitpara sair da conta root e se tornar um usuário normal (admin) novamente.
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 12.04 Server com 512MB de memória e um disco rígido de 10GB a partir da imagem iso do Ubuntu 12.04 Server (que eu armazenei em /home/ubuntu-12.04-server-amd64.iso):
$ VBoxManage createvm --name "Ubuntu 12.04 Server" --register
$ VBoxManage modifyvm "Ubuntu 12.04 Server" --memory 512 --acpi on --boot1 dvd --nic1 bridged --bridgeadapter1 eth0
$ VBoxManage createhd --filename Ubuntu_12_04_Server.vdi --size 10000
$ VBoxManage storagectl "Ubuntu 12.04 Server" --name "IDE Controller" --add ide
$ VBoxManage storageattach "Ubuntu 12.04 Server" --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium Ubuntu_12_04_Server.vdi
$ VBoxManage storageattach "Ubuntu 12.04 Server" --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/ubuntu-12.04-server-amd64.iso3.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 seu nome de usuário for admin, este é /home/admin/.VirtualBox/Machines - o resultado deve ser /home/admin/.VirtualBox/Machines/examplevm/examplevm.xml).
Além disso, copie o arquivo examplevm.vdi do antigo diretório VDI para o novo (por exemplo, /home/admin/.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 12.04 Server"(Substitua Ubuntu 12.04 Server pelo nome da sua VM.)
VBoxHeadless iniciará a VM e um servidor VRDP (Protocolo de Desktop Remoto do VirtualBox) que permite que você veja a saída da VM remotamente em outra máquina.
Para parar uma VM, execute
$ VBoxManage controlvm "Ubuntu 12.04 Server" poweroffPara pausar uma VM, execute
$ VBoxManage controlvm "Ubuntu 12.04 Server" pausePara reiniciar uma VM, execute
$ VBoxManage controlvm "Ubuntu 12.04 Server" resetPara saber mais sobre o VBoxHeadless, dê uma olhada em
$ VBoxHeadless --helpe em http://www.virtualbox.org/manual/ch07.html#vboxheadless.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.