Infra - Linux

QEMU - Instalando o Windows 98 em sessão virtualizada sem segredo

Nem sempre o ambiente de trabalho proporciona vários equipamentos e sistemas operacionais para testes de sistemas e aplicativos multi-plataforma. Sendo assim, podemos optar para virtualização.

por Alessandro de Oliveira Faria



Nem sempre o ambiente de trabalho proporciona vários equipamentos e sistemas operacionais para testes de sistemas e aplicativos multi-plataforma. Sendo assim, podemos optar para virtualização.

Como o Qemu atendeu as minhas necessidades, resolvi elaborar este tutorial para encurtar os caminhos das pedras dos membros da comunidade que desconhece ou nunca utilizou este pacote.

Download e instalação:

Em virtude da facilidade de instalação, não entrarei em detalhes sobre o mesmo. Para maiores informações, indico os seguinte link:

http://fabrice.bellard.free.fr/qemu/qemu-doc.html

Criando o HD virtual:

O primeiro passo é criar o HD virtual. Este HD é um arquivo que iremos gerar com o comando dd. Com o comando abaixo, criaremos um hd de 1Gbytes aproximadamente:

cabelo@linux:~> mkdir win98
cabelo@linux:~> cd win98
cabelo@linux:~/win98> dd of=hdc.img bs=2048 seek=500000 count=0

No exemplo acima criamos o nosso hd virtual que não passa de um arquivo com o tamhanho de 1 Gbytes. Confira:

cabelo@linux:~/win98> ls -l
total 26602
-rw-r--r--  1 cabelo users   11266048 2005-03-11 22:05 fdbootcd.iso
-rw-r--r--  1 cabelo users   10653696 2005-03-12 00:31 freedos.img
-rw-r--r--  1 cabelo users 1024000000 2005-03-12 02:05 hdc.img
-rwxr-xr-x  1 cabelo users      14560 2005-03-12 00:55 lomount
-rw-r--r--  1 cabelo users       8497 2005-03-12 00:55 lomount.c
-rw-r--r--  1 cabelo users         54 2005-03-11 20:23 run-qemu
-rw-r--r--  1 cabelo users         30 2005-03-12 02:01 serial.txt
-rw-r--r--  1 cabelo users    1474560 2004-03-25 12:23 WIN98C.IMG
cabelo@linux:~/win98>   

Para fundamentar o conceito de funcionamento, entenda que o Qemu enxegará este arquivo como um HD virgem. Partindo deste princípio, deremos que efetuar o boot com um disquete do Windows 98 e particiona-lo com o utilifário fdisk.

Como o meu Notebook não possui drive de disquete, só me restou obter um disco de boot virtual para formar o HD.

Encontrei uma imagem do Boot do Windows 98 em:

http://1gighost.net/randyboy/win98c.zip

Vale a pena ressaltar que vc pode criar uma imagem apartir de um disco de boot ou efetuar o boot a partir do próprio disquete.

Para descompactar o arquivo, use os seguintes passos:

cabelo@linux:~/win98> unzip win98c.zip
Archive:  win98c.zip
  inflating: WIN98C.IMG
  inflating: README.TXT
  inflating: LICENCE.TXT
  inflating: FIRM.COM
cabelo@linux:~/win98>
Formatando e particionando o HD Virtual.

Vamos efetuar o boot com a imagem do disquete virtual. O comando abaixo executa esta tarefa:

qemu -fda WIN98C.IMG -hda hdc.img -boot a

No comando acima informamos ao Qemu que o drive A: será a imagem WIN98C.IMG e o HD primário a imagem hdc.img. Reparem que o boot será efetuado pelo drive a atravez do comento -boot a!

Veja o resultado:

Execute o comando Fdisk e informe o suporte a disco com grande capacidade.

Selecione a opção 1 (Criar partição DOS).

Agora selecione a opção 1 novamente para criar uma partição primária.

Clique Y para confirma o uso de todo espaço disponível no HD virtual.

Pressione ESC para sair do Fdisk e reinicialize o Qemu se necessário, ou seja se a máquina virtual não reiniciar, feche e abra o Qemu novamente.

Após o reboot, format o HD com a opção S para tranferir o sistema operacional após a formatação.

Transferindo o CD de instalação para dentro do HD Virtual:

Comecei a tomar um baile ao tentar montar a imagem com o comando:

cabelo@linux:~/win98> mount -loop -t vfat hdc.img /mnt/win98  

Com um pouco de pesquisa, achei o fonte do utilitário lomount. Efetuei o download, compilei, executei e li os fontes. Isto é SOFTWARE LIVRE.

Este programa é um utilitário que monta hds virtuais criados para o qemu. Efetue o download neste link:

http://www.dad-answers.com/qemu/utilities/QEMU-HD-Mounter/lomount/lomount.c

Compile o fonte:

gcc lomount.c -o lomount

Transforme-se em Superusuário para executar a montagem.

cabelo@linux:~/win98> su
Password:

Execute a utilitário:

linux:/home/cabelo/win98 # ./lomount -t vfat -diskimage hdc.img -partition 1 /mnt/win98/
linux:/home/cabelo/win98 #

Agora copie a pasta de instalação do Windows 98 para o HD virtual. Ressalto que a instalação poderia ser efetuada apartir do CD. Mas a instalação efetuada diretamente de uma pasta do hd é bem mais rápida.

linux:/home/cabelo/win98 # mkdir -p  /mnt/win98/install/win98
linux:/home/cabelo/win98 # cp -r /neti/install/win98/* /mnt/win98/install/win98/
linux:/home/cabelo/win98 # umount /mnt/win98/
linux:/home/cabelo/win98 # exit

Instalação do Windows 98:

Agora é fácil, vamos executar novamente o Qemu, porém com a inicialização no HD. Depois é só instalar o Windows normalmente.

cabelo@linux:~/win98> qemu -fda WIN98C.IMG -hda hdc.img -boot c

Agora com este pacote posso excutar teste de programas em plataforma Windows, testar funcionalidades conexões de rede com Servidores SAMBA e outras tarefas que até então possível apenas com outro computador.

Para maiores detalhes sobre o Qemu, aconselho uma pesquisa mais profunda no assunto. Pois existem ínumeros documentos espalhado na internet sobre este utilitário e similares.

Alessandro de Oliveira Faria

Alessandro de Oliveira Faria - Sócio-proprietário da empresa NETi TECNOLOGIA fundada em Junho de 1996 (http://www.netitec.com.br), empresa especializada em desenvolvimento de software e soluções biométricas, Consultor Biométrico na tecnologia de reconhecimento facial, atuando na área de tecnologia desde 1986 assim propiciando ao mercado soluções em software nas mais diversas linguagens e plataforma, levando o Linux a sério desde 1998 com desenvolvimento de soluções open-source, membro colaborador da comunidade Viva O Linux, mantenedor da biblioteca open-source de vídeo captura entre outros projetos.