Oracle VM VirtualBox

O programa VirtualBox serve para virtualização, ou seja, permite que você rode um sistema dentro de outro,
compartilhando o hardware para as operações de cada máquina, uma máquina virtual simula um disco rígido, memória, processador etc, praticamente tudo que uma máquina real possui.
Uma das vantagens da VirtualBox é o fato de ser completamente gratuita.
Para baixar a VirtualBox entre nesse link, vá para downloads e escolha o seu sistema operacional atual (Windows, Linux, OS X etc).
O tutorial foi feito na versão do Windows.

Algumas notas antes do tutorial, até mesmo para que o leitor se acostume com os termos utilizados, vou usar os seguintes termos durante o tutorial:
Hospedeiro: É o computador real, que "contém" as máquinas virtuais, e é dessa forma que vou me referir a ele no tutorial
Convidado: É a máquina ou as máquinas virtuais.
Disco virtual: É um arquivo que simula um HD para ser usado pela máquina virtual.
VM: Abreviação de virtual machine, máquina virtual em inglês.

Esse tutorial visa ajudar quem está começando a utilizar as máquinas virtuais, é importante ter conhecimento mais técnico para aproveitar esse tutorial.

IMPORTANTE: O VirtualBox está na versão 4, o tutorial está ainda na versão 3, em breve vou atualizar o tutorial.

Instalação

Instalação do tipo avançar e finalizar...

Preferências da VirtualBox

Clicando no menu Arquivo e em seguida em preferências, é possível ajustar algumas opções:

Guia geral
Escolhe o local das pasta em que as VMs serão guardadas, a pasta que os discos rígidos serão guardados e o caminho para a biblioteca VRDP.

Guia entrada: Escolhe a tecla do hospedeiro, um botão que serve para liberar o teclado e mouse do convidado para que você possa voltar a controlar o hospedeiro, é uma tecla importante, não esqueça dela.

Guia atualizar e idioma o próprio nome já diz tudo

Guia rede:
Permite adicionar, remover e configurar os adaptadores Host-Only, nas configurações você vai escolher o IP e mascara do adaptador, servidor DHCP e mascara, e a faixa de IPs que serão distribuídas pelo servidor DHCP.

Criando uma máquina virtual.

Após a instalação você vai ver essa tela, com a diferença que a sua estará vazia.

Para começar clique no Botão Novo na parte superior esquerda, será apresentada uma tela de boas vindas, e em seguida a tela abaixo, escolha o nome (serve somente para você identificar a VM) o tipo de sistema e a versão, vou simular a instalação de uma VM para o sistema Ubuntu.

Na próxima tela escolha o tamanho da memoria RAM que será reservada para a VM, lembre-se que depende do seu computador, já que ele tem que suportar a máquina real e a virtual (ou as virtuais).

Agora é a hora da criação do disco rígido da VM, você pode optar por criar um novo ou anexar um já existente, o disco virtual é um arquivo que simula o disco rígido, além do formato vdi que é o padrão criado pela VirtualBox, você pode anexar também os formatos vmdk, vhd e hdd.

Nessa simulação vou criar um novo para mostrar o processo, na tela abaixo escolha entre armazenamento expansível ou fixo.
Expansível: O tamanho do disco não é o tamanho real, por exemplo um disco de 20 GB para a VM pode ser um arquivo no seu HD de somente 1 GB, que cresce conforme o requisitado pela VM até o tamanho máximo, que não pode ser alterado (lembre-se que isso simula um HD), é mais lento pois tem que aumentar primeiro para adicionar informações depois, a vantagem é que pode ocupar menos espaço em seu HD.
Fixo: O arquivo em disco tem o tamanho real, um disco virtual de 20 GB vai criar um arquivo de 20 GB, é mais rápido porem ocupa todo o espaço de uma vez.
Recomendo o fixo pelo desempenho.


Agora escolha o nome do arquivo vdi e o tamanho, tenha em mente que o tamanho tem que suportar o sistema que será instalado, da mesma forma que um computador real.


Ao final de tudo é apresentado um resumo da VM a ser criada:

Configurando

Agora vamos ajustar alguns detalhes, é extremamente recomendável ter conhecimentos de hardware para alterar essas opções, na tela principal selecione a VM e clique em Configurações, na janela que vai abrir você terá as opções abaixo.
Note que a maioria das configurações são determinadas por padrão quando você define o tipo de sistema da VM na instalação, mas se quiser alterar algo veja abaixo como.

Guia Geral
Em Básico é possível trocar o nome e o tipo de sistema (serve somente para referencia).

Em Avançado você escolha a pasta de snapshots (explico adiante), se a área de transferência (por exemplo quando você copia um texto) é bi-direcional (ambos os lados), do hospedeiro para o convidado, do convidado para o hospedeiro ou nenhum, se a barra de ferramentas é mostrada nos modos Seamless e tela cheia (requerem adicionais para convidado) e a posição da barra.

Guia Sistema
Permite modificar a quantidade de RAM da VM, a ordem de boot, IO APIC, EFI, relógio em formato UTC e dispositivos de apontamento absoluto (tablet USB por exemplo).

Em Processador é possível escolher quantos processadores serão usados na VM (processadores não é igual nucleo, portanto processadores dual, quad, etc não deixam de ser 1), e o recurso PAE (Physical Address Extension, funciona da mesma forma que uma máquina real) e NX bit.

Guia Tela
Em vídeo você escolhe o tamanho da memória de vídeo, a quantidade de monitores da VM (somente convidados Windows), se há aceleração 3D (necessário adicionais de convidados, recurso "beta") e aceleração 2D (somente convidados Windows)

Em tela remota você pode habilitar o servidor de RDP (Remote Desktop Protocol) e permite que você acesse a VM por um cliente RDP como o Terminal Services da Microsoft, você também escolhe a porta (porta que a VM ira expor para conexão de entrada), o método de autenticação (caso você use a biblioteca RDP, se não deixe nula) e o tempo em milissegundos.

Guia armazenamento
Escolhe o tipo de controladora de disco como IDE, SATA, SCSI (a pronuncia é iscãzi), SAS e disquete.
Após a escolha da controladora você pode adicionar discos rígidos, leitor/gravador de DVD/CD, e leitor/gravador de disquetes.
Também é possível alterar as propriedades das controladoras, como o tipo, se utilizara o cache do hospedeiro (documentação em inglês sobre I/O caching  :D )

também é possível alterar as propriedades dos discos, DVDs/CDs e disquetes, por exemplo é possível gravar DVDs/CDs a partir do convidado com o recurso Passthrough (recuros de teste) nas propriedades.

Guia áudio
Escolhe o driver e o tipo de controladora de áudio

Guia rede
Essa guia merece um pouco mais de atenção, é aqui que você adiciona as "placas de rede" do convidado, você pode adicionar até 4 placas, escolhendo o tipo de conexão do convidado ao hospedeiro, o tipo de placa, o endereço físico (MAC) e se o "cabo" está conectado.
Também é possível configurar para que a VM enxergue as outras máquinas reais da sua rede ou a internet.
Vejas as opções de "Conectado a:"
Não conectado: Adiciona a placa de rede no convidado porém ela não se conecta ao hospedeiro
NAT: Conecta o convidado ao hospedeiro simulando uma rede do tipo NAT, ou seja, também tem as mesmas limitações e vantagens que uma rede desse tipo, por exemplo não permite conexões de entrada, mas pode enxergar as máquinas reais da sua rede e também ter acesso a internet (somente conexões de saída).
Rede interna: As máquinas convidadas enxergam umas as outras, mas não tem conectividade externa, seja a hospedeira, internet ou outra máquina real da sua rede.
Placa de rede exclusiva do hospedeiro (host-only): É conectada somente ao hospedeiro por meio de um adaptador de rede que é adicionado no momento da instalação ou manualmente por você.
Placa em modo Bridge: É a conexão mais impressionante da VirtualBox, através dela é possível que a VM faça parte de sua rede, se conecte a internet, receba conexões de entrada, seja vista pelos outros computadores (tanto reais quanto virtuais), etc, essa conexão é feita por um filtro no seu adaptador de rede (na sua placa de rede real), quando um pacote é enviado para a sua máquina real, apenas ela recebe, e quando um pacote é destinado a alguma VM em execução, essa ira receber o pacote, portanto essa conexão também merece um pouco mais de sua atenção nas configurações do seu firewall.

Após configurar a placa, para incluir a maquina na rede basta seguir os procedimentos padrões de rede, ou seja, configuração de IPs, compartilhamentos e etc, no sistema dentro da VM.

Guia portas seriais
Permite que você use as portas seriais do hospedeiro no convidado.

Guia USB
Permite criar filtros para que os dispositivos USB conectados no hospedeiro sejam redirecionados ao convidado.

Guia pastas compartilhadas
Permite que você escolha uma pasta do hospedeiro que será mostrada para a virtual como sendo uma pasta em um servidor de arquivos (desnecessário caso você use a rede de verdade para transferir os arquivos).


Gerenciador de Mídias virtuais

Também é possível gerenciar os discos, imagens de CDs/DVDs (aprenda a criar imagens ISO aqui) e imagens de disquetes na VirtualBox através do menu Arquivo e em seguida escolhendo a opção Gerenciador de Mídias virtuais.

É possível criar novos discos, remover da VitualBox ou deletar o arquivo, acrescentar mais discos existentes em arquivos vdi, vmdk, vhd e hdd.

É possível também adicionar imagens ISO para usar na VM, e por fim imagens de disquetes (arquivos img).

Rodando as VMs

O funcionamento é o mesmo de uma máquina real, ou seja, você precisa criar partição, formatar, instalar o sistema, etc.

Veja aqui o meu computador com o Windows 7 rodando uma VM  com o Ubuntu

Clicando no menu Máquina você tem essas opções:
As mais importantes são:
Ativar modo de tela cheia: A VM preenche toda a tela, você não irá mais visualizar sua máquina real, para sair do modo tela cheia é necessário apertar a tecla tecla do hospedeiro mais o botão F.
Entrar no modo Seamless: É um modo que "mistura" a sua área de trabalho com a da VM.
Criar Snapshot: Explico abaixo

Clicando em Dispositivos:
Dispositivos de CD/DVD: Permite adicionar os arquivos ISOs ou escolher um leitor real.
Instalar adicionais para convidado: É inserido um ISO com os adicionais, para instalação no convidado, entre as funções temos: captura integração do mouse que permite liberar o mouse sem apertar a tecla do hospedeiro, apenas "saindo da tela" da VM, adicionar os drivers para o funcionamento adequado do vídeo, aceleração e suporte para varios monitores (Windows somente).

Snapshots

Uma ótima função, ela serve para salvar o estado da máquina e excluir todas as modificações feitas a partir desse ponto, por exemplo, eu quero testar um programa em uma VM, eu crio um snapshot, instalo o programa e utilizo, depois eu retorno a máquina ao momento do snapshot, ou seja, quando o programa não estava instalado.
Para isso a VirtualBox cria alguns arquivos chamados Discos Diferenciais, e as alterações são gravadas nele, mantendo o arquivo de disco original intacto.

Para criar basta na tela principal selecionar a VM e na coluna da direita clicar em Snapshots, depois no botão que representa uma máquina fotografica, para voltar a um estado anterior é usado o segundo botão, e para excluir um snapshot o terceiro.
Dicas: 
  • Para excluir o snapshot e NÃO voltar ao estado anterior, preservando assim as alterações, exclua direto o snapshot, e aguarde a mesclagem dos discos diferenciais.
  • Para excluir o snapshot e voltar ao estado anterior, primeiro volte ao estado e depois exclua o snapshot.
  • Para gravar um snapshot enquanto a VM está em execução, use a opção do menu dispositivos com a VM aberta.


Considerações finais

Alguns exemplos de aplicações? 
Hoje a virtualização é usada para muitas coisas, um exemplo de uso para empresas é utilizar somente um servidor real ao invés de vários, e nele montar várias VMs que serão os servidores dessa rede.

As VMs são uma ótima forma de treinar suas habilidades na informatica, pois se algo der errado você pode "voltar no tempo" com os snapshots, ou mesmo reinstalar o sistema, e sempre mantendo sua máquina real a salvo.
Um exemplo disso é quando eu estava estudando configurações de redes e também as configurações das VMs, na época eu salvei a imagem da tela:
A esquerda acima uma VM com o Windows Vista, a direita uma VM com XP, e abaixo no centro o meu Explorer, na época com Windows 7 RC, todas as máquinas se enxergando na rede perfeitamente.

Programadores podem testar suas aplicações em diversos sistemas operacionais, existem testes de vírus que são feitos em VMs já que é um ambiente isolado (lembre-se que não existem 100% de segurança no mundo da informatica),
eu posso fazer os tutoriais sem instalar os programas de verdade rss, enfim, basta usar sua imaginação na aplicação das VMs, no fim das contas é o mesmo que ter vários computadores, porém com a economia de espaço.

Apenas tenha em mente que o computador real tem que ser potente o suficiente para manter todas as VMs.

Espero que tenha aproveitado o tutorial.
Sugestões, reclamações,etc, aqui.
Para receber as novidades do site clique aqui e escolha a melhor forma.



Paulo Roberto - 18/06/2010