Atualmente é bem comum nos depararmos com um cenário onde os servidores não possuem ambiente gráfico instalado. Neste caso, saber se virar bem no shell é uma arte importante, que deve ser aperfeiçoada a cada dia que passa.
Neste post, mostrarei como fazer tarefas simples no VirtualBox através de sua interface por linhas de comando (pela falta de uma interface gráfica ou porque você só quer executar tarefas via SSH em uma VM, e nada de mais).
Antes de qualquer coisa, você deve saber quais são os nomes (ou o UUID - Identificador) das VMs que estão no servidor:
Tanto no Windows, quanto no Linux ou no Mac OS X, os comandos são os mesmos. Entretanto, no Windows você deverá ajustar o PATH para a inclusão dos executáveis do VirtualBox. Veja um exemplo de como fazer isto neste post.
Antes de mais nada, é necessário sabermos a versão do VirtualBox que está rodando no sistema. Para isso, execute:
$ VBoxManage -v
Para saber que VMs podem ser gerenciadas, execute:
$ VBoxManage list vms
Serão mostradas as seguintes informações: "Nome da VM" e UUID. Em meu caso (Linux), o resultado deste comando foi:
$ VBoxManage list vms Oracle VM VirtualBox Command Line Management Interface Version 3.2.12 (C) 2005-2010 Oracle CorporationAll rights reserved. "Zimbra" {33917a83-0a89-4438-b879-22900c875a8d} "BSD8" {fb803722-b353-4189-becc-e90cbdfba60d} "Horde - TESTE" {20457621-5ced-49e4-bda2-0d5cf7db754c} "Horde - Ubuntu" {c456cb2c-df78-4612-8fef-9e2fd390af08} "POC - EXO" {872c0ed9-c9ab-42b3-8613-87f1e337ce94} "TEMP - CentOS" {ce322164-7113-4782-a637-62da1480b4ec} "CentOS - ZCS + LDAP" {b69e72a6-9c88-4917-a179-145eb846858a}
Com essas informações em mãos, vamos aos trabalhos:
- Para visualizar as VMs em execução:
$ VBoxManage list runningvms Oracle VM VirtualBox Command Line Management Interface Version 3.2.12 (C) 2005-2010 Oracle Corporation All rights reserved. "CentOS - ZCS + LDAP" {b69e72a6-9c88-4917-a179-145eb846858a} "ZCS + UBUNTU" {c136decd-5cd8-4ddd-8f20-299f88834d0f}
- Para iniciar uma VM:
$ VBoxManage startvm "nome_da_vm"
Também é possível rodar o "startvm" passando o UUID da VM. Veja a incialização da VM "Horde - Ubuntu" através de seu UUID:
$ VBoxManage startvm c456cb2c-df78-4612-8fef-9e2fd390af08 Oracle VM VirtualBox Command Line Management Interface Version 3.2.12 (C) 2005-2010 Oracle Corporation
All rights reserved. Waiting for the VM to power on... VM has been successfully started.
- Para parar uma VM:
$ VBoxManage controlvm "nome-da-vm" poweroff
Caso a VM esteja com os Guest Additions instalados, o comando a seguir fará o desligamento via ACPI (mais recomendado que o poweroff).
$ VBoxManage controlvm "CentOS - ZCS + LDAP" acpipowerbutton
- Verificar as informações de uma VM:
$ VBoxManage showvminfo "nome da vm"
Nos próximos posts, vamos nos aprofundar mais no VirtualBox pela linha de comando, vendo opções como criar/configurar/deletar uma VM, gerenciar os discos e outras opções menos conhecidas desse sistema.