Publicado em
Dicas
O VirtualBox é um excelente software de virtualização distribuído em GPL, para uso doméstico e/ou avaliação, pela Sun Microsystems, embora nascido alemão, criado pela empresa Innotek posteriormente adquirida por aquela empresa norte-americana.
A virtualização, para quem não sabe e entre outras coisas, é a criação de ambientes de hardware virtual, sobre um hardware real (host ou anfitrião) onde é executado outro sistema operativo simulando uma outra máquina (guest ou hospede), com características operacionais diferentes das do anfitrião.
Por exemplo, em meu caso, o problema era o seguinte: Eu prefiro, sem muitas dúvidas, o Linux enquanto sistema operativo principal de meu portátil HP DV9575ep, originalmente equipado com o péssimo Windows Vista (que me traz à memória infelizes lembranças do Windows ME), mas tenho a necessidade de utilizar o Windows para desenvolver programas para clientes que têm este sistema instalado na maioria de suas máquinas devido as ferramentas que estou habituado a utilizar. Para resolver este problema tinha pelo menos as seguintes opções:
- Instalar o Linux em Dual Boot (ter os dois sistemas operativos instalados em partições diferentes do disco rígido) com o Vista, o que fiz imediatamente a seguir da aquisição da máquina, obrigando-me assim a desligar um sistema para acessar ao outro, ou;
- Instalar o Linux em uma máquina virtual sobre o Vista, mas que me obrigaria a ter que conviver com este, o que foi muito conturbado em nosso curto convívio, ou;
- Retirar completamente o Vista da máquina, substituindo-o pelo Linux como sistema operativo principal, anfitrião portanto, e virtualizar o Windows com hóspede. Neste caso poderia mesmo escolher substituir o péssimo Vista pelo excelente XP (Justiça seja feita. Não tenho nenhum problema com a MS, pela qual sou inclusive profissional certificado).
Foi o que fiz. Primeiramente utilizando o software padrão de virtualização da distribuição Linux que utilizo. Neste caso utilizava o KVM sobre o Fedora 9. Porém isto se mostrou antes de mais nada lento na execução do Windows, difícil de configurar e com acesso a poucos recursos do anfitrião, a partir do hóspede.
Pesquisando sobre software de virtualização, encontrei o VMware, que eu já conhecia. Mas muito ouvi falar do VirtualBox da Sun, que por si só já era alguma indicação de qualidade. Para além disso é distribuído em GPL.
Não pensei duas vezes e resolvi experimentar. Confesso que fiquei surpreendido com a qualidade do produto e com os recursos que oferece. Muito rápido, quase não noto a diferença de velocidade entre a instalação original do Vista e a virtual do XP. Desde a activação do XP, passando por todas as actualizações inclusive do SP3, até a instalação dos programas que tenho que utilizar na minha actividade profissional (basicamente ferramentas de desenvolvimento de sites e aplicações) não tive (quase) nenhum problema. Na verdade, os únicos programas que não consegui fazer funcionar são aqueles que dependem de um hardware específico para isto como jogos, Second Life e Premier Mananger, por exemplo, por causa do acesso a placa de vídeo, ou o Skype, pelo acesso a componentes multimédia, como o microfone e webcam.
No resto, todo o software que tentei instalar fi-lo com sucesso. Programas como o anti-vírus da AVG, MS Visual Studio Express, incluindo MS SQL Server, Xamp (Apache com suporte ao PHP, MySql e o servidor FTP Filezila), OpenOffice 3.0, Delphi 7 (que tive problemas para instalar no Vista), Delphi for PHP 2.0, etc., estão todos a funcionar lindamente no Windows, digamos assim, aprisionado no Linux.
Quanto aos recursos de hardware do anfitrião só tive um pouco mais de trabalho para acessar aos dispositivos USB, nomeadamente dispositivos de armazenamento amovíveis externos. Tudo por causa da, correcta, política de autorizações do Fedora, que não deixava o hóspede ter acesso aos dispositivos USB.
O problema foi solucionado com a criação de um grupo chamado USB e a adição da seguinte linha no /etc/fstab do Fedora:
none /sys/bus/usb/drivers usbfs devgid=502,devmode=664 0 0
Ou seja, os dispositivos USB eram encontrados pelo XP hóspede mas o Fedora anfitrião não permitia o acesso. Notar somente que o número 502 no parâmetro devgid (device group ID) é o ID do grupo USB que criei e onde incluí meu nome de utilizador no Linux como membro.
Um outro pequeno problema que encontrei foi que a rede do hospedeiro criada por defeito pelo VirtualBox, não funcionava bem no diz respeito a resolução dos nomes (DNS). Para ultrapassar este problema modifiquei a configuração de rede do XP hóspede definindo um DNS diferente ao que o DHCP do VirtualBox atribuíra. Simplesmente coloquei um endereço válido de um DNS público na Internet, já que o acesso a esta já existia.
De resto só maravilhas! O VirtualBox vem acompanhado de um CD (um ficheiro ISO facilmente montado como CD no hóspede) chamado de The VirtualBox Guest Additions, que ao ser instalado no hóspede permite funcionalidades extremamente úteis como, por exemplo, a de marcar um texto no anfitrião, no caso numa aplicação rodando sobre o Linux, e colar este texto no hóspede, ou seja numa aplicação Windows!!! Permite também uma muito melhor relação entre o rato e a placa de vídeo entre os dois sistemas.
Com a instalação do The VirtualBox Guest Additions no hóspede é possível ainda definir pastas do anfitrião que serão encontradas directamente no hospedeiro como se de discos de rede se tratasse, utilizar pelo hóspede a placa de som do anfitrião, aceder ao hóspede por acesso remoto, etc..
Mas o recurso que mais me impressionou foi o chamado modo «Seamless», onde as janelas do Windows se misturam com harmonia com as janelas do Linux, como se fosse um único sistema operativo.
No desenvolvimento de aplicações, num ambiente complexo cliente/servidor, utilizo o Windows como ferramenta de desenvolvimento e o software que desenvolvo como cliente, por exemplo, de bases de dados Mysql um servidor Linux externo. No caso que aqui descrevo estão no mesmo computador físico, mas em máquinas virtuais diferentes, como se houvesse quilómetros de distância a separa-las, ligadas tão somente por um simples endereço IP.
E com o modo «Seamless» a integração de tudo se faz de forma soberbam facilitando muito ao desenvolvimento. Vejam na imagem abaixo:

As barras nas extremidades da imagem, topo e base, são do Gnome no Linux. De baixo para cima é visível a barra de tarefas do XP com o inconfundível botão «Iniciar? bem como com as aplicações abertas. Notem na área de trabalho o Delphi 7 aberto, com duas janelas, o «object inspector» e um formulário ligado a uma tabela da base de dados. O Delphi 7 está a rodar sobre o Windows XP (ele não roda sobre o Linux nem mesmo com o Wine). A outra janela, com a estrutura da tabela do Mysql, é do programa Navicat que está a rodar sobre o Linux! Fantástico, não!? Vê-se ainda, imediatamente acima da barra de ferramentas do Windows, o ícone de uma janela do Delphi que está fechada no Windows mas visível no Linux. Esplêndido! A imagem natalícia do fundo do ambiente de trabalho é do Linux.
Poderia ainda optar por trabalhar e modo tela cheia onde, ao contrário, nem se daria pela presença do Linux numa máquina que funcionaria como se somente o Windows estivesse instalado. Veja na imagem abaixo:

Onde está o Wally, digo, Linux? Onde deveria estar: por traz de tudo, fazendo o Windows funcionar melhor de que se fosse só ele a fazer as coisas todas!!! :)
Ou seja: dá pra notar que estou entusiasmado? E o melhor que tudo: GPL! Não é preciso subtrair o pouco dinheiro de muitos para somar ao muito dinheiro de um gajo!
Usem e abusem do VirtualBox: funciona de forma fenomenal e, como está sobre o Linux, sem azuladamente parar!
Um abraço e até pra semana.
Edgard Costa




