No artigo anterior desta série nós mostramos como instalar o Windows XP como Guest OS na Virtual Box. Neste artigo, iniciaremos mostrando como fazer com que o Guest OS se comunique com o Host Os, tanto no caso do Windows, quanto no caso do Linux.
Pastas Compartilhadas
A maneira mais fácil e usual para que um Guest OS se comunique com seu Host OS é através do que se chama Pasta Compartilhada. Consiste em configurar uma pasta do sistema hospedeiro (Host OS) como elo de comunicação entre ambos, Host e Guest OS. Para isto, você abre as configurações da máquina virtual e vai na seção "Pastas Compartilhadas". Veja a figura abaixo, para esclarecimentos.
Configurando uma pasta compartilhada
A melhor coisa a se fazer, para tornar o ambiente mais seguro, é criar uma pasta especificamente para isto. Veja na figura acima que foi criada uma pasta chamada SharedFolder na pasta Home do usuário. Observe no painel inferior da tela de configuração instruções para a montagem desta pasta no Guest OS. O modo de fazer isto varia, conforme o Guest OS, se unix/linux ou windows.
Guest Additions / Acessando a pasta compartilhada
Agora que já configuramos a pasta compartilhada, basta abrir o Windows XP para completarmos a tarefa. Mas é importante lembrar que para isto funcionar você deve ter instalado os "Guest Additions" no Guest OS. Se ainda não fez isto, veja no artigo anterior como fazer. É muito fácil verificar se os Guest Additions estão instalados ou não: basta ver se seu ícone se encontra na bandeja do sistema, como mostrado na figura abaixo.
O ícone dos Guest Additions na bandeja do sistema
No Windows você pode mapear a pasta compartilhada como se ela fosse uma pasta da rede. Para isto, basta clicar com o botão direito em "Meu Computador" e selecionar Mapear unidade de rede. Veja na figura abaixo este processo em andamento.
Mapeando a pasta compartilhada
Depois que você mapeia a pasta compartilhada, você pode acessá-la como se ela fosse uma unidade da rede. Assim, a trasnferência de arquivos entre o Guest OS e o Host OS fica muito fácil!
O compartilhamento de arquivos na prática
Veja agora na figura abaixo o resultado destas configurações.
Comunicação Guest <-> Host, via pasta compartilhada
Podemos ver na figura acima que existem dois arquivos em /home/cawasame/SharedFolder (no Host OS) e eles estão sendo visualizados a partir do Guest OS, via unidade mapeada (X:).
A tecla de "Escape" da máquina virtual e suas funcionalidades
Vimos em artigo anterior que, por padrão, a VirtualBox usa a tecla Ctrl do lado direito como tecla de "Escape" da máquina virtual, ou seja, em algumas situações é necessário pressioná-la, para devolver o controle do mouse e do teclado para o Host OS. Mas ela também tem outras finalidades!
A tecla Ctrl do lado direito (irei chamá-la de Ctrl-D) é também chamada de Tecla Host na documentação e nos menus da VirtualBox. Tem muitos comandos que você pode enviar para a VirtualBox através desta tecla. Observe a figura abaixo.
Menu de comandos da VirtualBox acessíveis via Ctrl-D (Host, no menu)
Observe no menu que Host+Del equivale a apertar Ctrl-D+Del, cujo resultado é o famoso Ctrl+Alt+Del do Windows!
Da mesma forma, Host+N (Ctrl-D+N) exibe uma tela com informações sobre a sessão e Host+H (Ctrl-D+H) equivale a apertar o botão Power do computador virtual!
Uma espécie de "bônus" que você ganha ao instalar os Guest Additions é que a tela do computador virtual é ajustada automaticamente, na medida em que você redimensiona a janela da VirtualBox. Aperte Host+F, para ver o que acontece. Para voltar ao normal, aperte Host+F de novo!
A Rede Virtual
A VirtualBox estabelece uma rede entre o Guest OS e o Host OS, via placa de rede virtual. Há muitas maneiras de fazer isto, mas por padrão é usado o NAT - Network Address Translator. Isto torna as coisas muito mais fáceis, principalmente para usuários não entendidos de TI.
Basicamente, através do NAT, a máquina virtual tem acesso a rede "local" e a internet de forma transparente.
Mas se você for um daquelas usuários "fuçadores" (hackers), vai gostar de saber como obter informações desta rede, tais como enderaçamento IP, rota padrão, DHCP, etc. Isto é muito fácil! Basta abrir um "Prompt de comando" e digitar ipconfig /all, para obter uma saída mais ou menos como esta:
C:\Documents and Settings\Cawasame>ipconfig /all
Configuração de IP do Windows
Nome do host . . . . . . . . . . . : magister
Sufixo DNS primário. . . . . . . . :
Tipo de nó . . . . . . . . . . . . : desconhecido
Roteamento de IP ativado . . . . . : não
Proxy WINS ativado . . . . . . . . : não
Lista de pesquisa de sufixo DNS. . :
Adaptador Ethernet Conexão local:
Sufixo DNS específico de conexão . :
Descrição . . . . . . . . . . . . . : AMD PCNET Family PCI Ethernet Adapter
Endereço físico . . . . . . . . . . : 08-00-27-03-C0-CD
DHCP ativado. . . . . . . . . . . . : Sim
Configuração automática ativada . . : Sim
Endereço IP . . . . . . . . . . . . : 10.0.2.15
Máscara de sub-rede . . . . . . . . : 255.255.255.0
Gateway padrão. . . . . . . . . . . : 10.0.2.2
Servidor DHCP . . . . . . . . . . . : 10.0.2.2
Servidores DNS. . . . . . . . . . . : 200.167.216.14
200.167.216.15
Concessão obtida. . . . . . . . . . : terça-feira, 29 de dezembro de 2009 17:42:16
Concessão expira. . . . . . . . . . : quarta-feira, 30 de dezembro de 2009 17:42:16
C:\Documents and Settings\Cawasame>
Endereço IP da máquina virtual (Guest OS): 10.0.2.15
Configuração de IP do Windows
Nome do host . . . . . . . . . . . : magister
Sufixo DNS primário. . . . . . . . :
Tipo de nó . . . . . . . . . . . . : desconhecido
Roteamento de IP ativado . . . . . : não
Proxy WINS ativado . . . . . . . . : não
Lista de pesquisa de sufixo DNS. . :
Adaptador Ethernet Conexão local:
Sufixo DNS específico de conexão . :
Descrição . . . . . . . . . . . . . : AMD PCNET Family PCI Ethernet Adapter
Endereço físico . . . . . . . . . . : 08-00-27-03-C0-CD
DHCP ativado. . . . . . . . . . . . : Sim
Configuração automática ativada . . : Sim
Endereço IP . . . . . . . . . . . . : 10.0.2.15
Máscara de sub-rede . . . . . . . . : 255.255.255.0
Gateway padrão. . . . . . . . . . . : 10.0.2.2
Servidor DHCP . . . . . . . . . . . : 10.0.2.2
Servidores DNS. . . . . . . . . . . : 200.167.216.14
200.167.216.15
Concessão obtida. . . . . . . . . . : terça-feira, 29 de dezembro de 2009 17:42:16
Concessão expira. . . . . . . . . . : quarta-feira, 30 de dezembro de 2009 17:42:16
C:\Documents and Settings\Cawasame>
Com base nesta saída do comando ipconfig, podemos obter duas informações interessantes:
Endereço IP da máquina virtual (Guest OS): 10.0.2.15
Endereço IP da máquina real (Host OS): 10.0.2.2 (Gateway padrão)
Assim, se você quiser fazer alguma coisa via rede... ;-)
Compartilhamento da área de transferência
Muita informação também pode ser trocada entre o Guest OS e o Host OS via área de transferência. Basta copiar numa e colar noutra!!!
Mas, para variar, isto só será possível se os Guest Additions estiverem instalados.
E quando o Guest OS for o Linux?
Instalando os Guest Additions no Linux
"Desmontando" a unidade de CD/DVD
"Montando" a unidade de CD/DVD com o CD dos Guest Additions
E quando o Guest OS for o Linux?
Bem, se você vive numa situação contrária à prevista pelo Blog, ou seja, se você usa Windows e tem o Linux instalado dentro da VirtualBox, vou mostrar como instalar os Guest Additions numa Guest Os Linux.
Claro que você pode também ser um usuário Linux e que por alguma razão instalou outro Linux dentro da VirtualBox (para estudar outra distribuição, por exemplo, ou a nova versão da que você usa). O que vou mostrar a seguir também serve para você!
Instalando os Guest Additions no Linux
Para instalar os Guest Additions no Linux o procedimento é ligeiramente diferente que no Windows. A primeira coisa a fazer é iniciar a máquina virtual Linux.
O Linux tem um mecanismo de acesso às unidades de CD/DVD ligeiramente diferente do Windows, e isto causa certa estranheza aos novos usuários. Para acessar uma unidade de CD/DVD é preciso adotar um procedimento chamado de "montagem".
Atualmente, a "montagem" das unidades de CD/DVD no Linux se dá de forma automatica. Basta inserir uma midia na unidade e pronto. Mas algumas idiossincrasias podem ocorrem em alguns casos, por isto vou adotar um procedimento menos susceptível a "erros". Vamos lá...
"Desmontando" a unidade de CD/DVD
Então, antes de prosseguir, "desmonte" manualmente a unidade de CD/DVD. Você faz isto clicando com o botão direito no icone da unidade de CD/DVD, na barra de status da VirtualBox, e seleciona "Desmontar dispositivo de CD/DVD".
"Montando" a unidade de CD/DVD com o CD dos Guest Additions
Agora você vai no menu Dispositivos e seleciona "Instalar adicionais para convidado" (ou aperta Host+D). Feito isto, você deve ver algo como mostrado na figura abaixo.
Adicionando os Guest Additions no Linux
Copiando o executável dos Guest Additions
Agora você vai copiar o executável recomendado para a versão do Linux instalado. Se você instalou a versão 32 bits, tem de usar VBoxLinuxAdditions-x86.run; se instalou a versão 64 bits, tem de usar VBoxLinuxAdditions-amd64.run.
Neste exemplo vou usar a versão para 32 bits.
Executando a instalação dos Guest Additions
OBS.: Para ser bem sucedido nsta operação, você deve ter instalado os pacotes de desenvolvimento C/C++ e do Kernel do Linux.
Agora que você copiou o executável para a tua pasta, basta abrir um terminal e digitar os seguintes comandos:
su
./VBoxLinuxAdditions-x86.run
Depois de algum tempo, a operação se completará.
Reiniciando o sistema
Para efetivar "de fato" a instalação, você precisa reiniciar o Linux, pois é necessário carregar alguns módulos do Kernel do Linux, que foram compilados na instalação. Aproveite que está em modo SuperUsuário e digite:
reboot
Preparando uma pasta para compartilhamento
Nós já criamos uma pasta no HostOs para servir de compartilhamento entre ele e o(s) GuestOS. No Windows, nós fizemos um mapeamento para a pasta compartilhada, como se ela fosse uma unidade de rede. No Linux é um pouco diferente. O Linux não tem unidades de disco; o Linux tem pontos de montagem!
Criando um ponto de montagem
Sugiro criar uma pasta em tua home para servir de ponto de montagem para a pasta compartilhada. Neste exemplo vou usar o nome SharedFolder. Para isto, ou você usa o Dolphin, ou usa o comando mkdir. Como vamos abrir um terminal de qualquer jeito, sugiro usar o mkdir, da seguinte forma:
(abra um Terminal e digite)
mkdir SharedFolder
Agora que criamos um ponto de montagem, basta montar a pasta compartilhada da seguinte forma:
(ainda no Terminal)
sudo mount -t vboxsf cawasame /home/cawasame/SharedFolder
Note que cawasame aqui tem dois significados: o primeiro é o nome dado à pasta compartilhada, nas configurações da VirtualBox; o segundo é o nome do meu usuário, no GuestOS. Não confunda! Use os nomes que você tiver em tua configuração.
Finalmente, podemos ter acesso à pasta compartilhada! Podemos usar o Dolphin, como mostrado na figura abaixo.
Dolphin acessando a pasta compartilhada no HostOS, via ponto montagem
Considerações finais
Sempre que você reiniciar a máquina virtual Linux, será preciso repetir a instrução que "monta" a pasta compartilhada. Ou seja, esta instrução:
sudo mount -t vboxsf cawasame /home/cawasame/SharedFolder
terá que ser repetida toda vez que você reiniciar a máquina virtual Linux.
Existem mecanismos para automatizar este processo, mas serão mostrados em outra ocasião. Até lá, então!
Comentem, critiquem, fiquem à vontade!
.
Olá Washington,
ResponderExcluirVí que você é um "Manager".
Então, você "ensina" nesse nível, tal estivesse dando uma palestra com uma lousa para detalhar algo.
E você assume que os ensinandos já sejam bem "experts" (já com longa estrada) no assunto.
Percebe-se que você conhece o assunto. É bom para você. Faz curriculum.
Mas, para principiantes,......, como eu,..... isso não funciona muito bem. Deixa muito a desejar.
Embora respeitando-o, pois me foi útil, sou muito mais afeto à maneira "IBM MANUAL", que não usa linguajar corrente.
O linguajar corrente desvia o leitor do foco: Não se deve comparar o que se explica com outro assunto (tal fosse um Coffee Break para relaxar). Mas, a Internet é assim mesmo
Mas, obrigadão. Não fosse você (e outros) eu estaria no ZERO.
O que coloquei é, para usar suas palavras é uma IDIOSSINCRASIA minha: Grato, aprendi o significado.
Não é culpa de ninguém. É a nossa cultura: O Brasil não é técnico. O Brasil é romântico, sentimental. Faz tecnologia em ritmo de FADO.
Abs
Roberto
roberto7lembo5@gmail.com
Brasil / São Paulo / SP / Zona sul
De fato, Roberto, eu não tinha muitas pretensões ao publicar este Blog, a não ser aplicar a máxima latina "Docendo discimus", ou seja, "Ensinando, aprendemos!". Na verdade, eu que estava aprendendo ;-)
ExcluirMas achei muito pertinentes as tuas observações. Como Engenheiro, também sua afeto à maneira "IBM MANUAL". Por isto vou levar em consideração as tuas observações quando for escrever mais alguma coisa aqui no Blog.
Mas é verdade que a internet tem este "jeito meninão" de ser. Com relação a isto, inclusive, já tem pesquisas mostrando que permanecer tempo demais um "redes sociais", por exemplo, faz a pessoa entrar num processo de infantilização. Isto meio que me assustou, pois era um assíduo frequentado do (quase) extinto Orkut, rs.
Estou me organizando para sobrar tempo e dar uma atualizada no Blog. Quando fizer isto, me lembrarei das tuas observações.
Um abraço e obrigado também!