domingo, 30 de abril de 2017

Transplantando instalação do XP para o VirtualBox

Pelos mais variados, às vezes absurdos, motivos, cacarecos com Windows XP ainda estão na ativa. Em geral, hardware cambaleante. Um provável meio de lidar com o abacaxi é passá-los para dentro de ambientes virtualizados. Sendo o VirtualBox gratuito, é a solução que usarei aqui.

Existem diversas ferramentas[1] para extrair o conteúdo do disco onde as velharias residem. O Symantec Ghost, o mais clássico dos programas para tal fim, suporta salvar diretamente em VMDK (VMware) desde a versão 11.5 e em VHD (Virtual PC, Hyper-V) desde a 12.

No entanto, usando a GUI do programa, não é possível salvar nesses formatos. Só permite fazê-lo no seu formato nativo GHO. Recorremos então à linha de comando.

O gdisk32 chamado sem argumentos nos dá os índices de cada dispositivo (estou rodando-o no Windows PE):

Disk  Partitions  Cylinders  Heads  Sectors  Mbytes  Model
  1        1        14593     255      63  114473.5  PH4-CE120
  2        1        38913     255      63  305245.3  WDC WD32 00BPVT-22JJ5T0 01

Com isso, acertamos src= nos comandos abaixo de acordo com a coluna "Disk".

VMDK:

ghost32 -clone,mode=create,src=1,dst=<unidade>:\caminho\imagem.vmdk -batch

Para salvar em VHD[2], basta mudar a extensão:

ghost32 -clone,mode=create,src=1,dst=<unidade>:\caminho\imagem.vhd -batch

Ambos formatos são suportados pelo VirtualBox. Prefiro VHD pois podemos montá-lo pelo Windows Explorer desde o 8. No 7, também é possível, porém sem a mesma praticidade, porque precisa ser feito via Gerenciamento de disco ou diskpart.

Agora, basta criar nova máquina virtual do tipo Windows XP (32-bit)[3] e usar a imagem VHD existente como disco. Detalhe importante! Até o XP, havia a salada de HALs! Caso o PC de origem use um dos HALs APIC (ACPI Uniprocessor PC ou ACPI Multiprocessor PC), você precisa marcar a opção "Habilitar o I/O APIC" nas propriedades, do contrário não iniciará:


Por fim, instale os Adicionais para Convidado.

Se você tiver imagens GHO, pode convertê-las para VMDK ou VHD usando o próprio Ghost:

ghost32 -clone,mode=restore,src=<unidade>:\caminho\imagem.gho,dst=<unidade>:\caminho\imagem.vmdk -batch
ghost32 -clone,mode=restore,src=<unidade>:\caminho\imagem.gho,dst=<unidade>:\caminho\imagem.vhd -batch


[1] O popular Disk2vhd é uma alternativa.
[2] VHD tem limite de ~2 TiB. O Ghost não suporta VHDX, formato mais novo, introduzido no Windows 8.1, sem a limitação. Nem faria diferença, pois igualmente não funciona no VirtualBox.
[3] Nem considerei o XP 64-bit pois é um Unicórnio. Em máquinas virtuais XP, o VirtualBox configura o controlador de disco IDE, que deve iniciar com qualquer instalação.

4 comentários:

  1. E como ficaria a impressora matricial epson LX300? O Virtual Box pegaria a porta Paralela ou teria que instalar a impressora no Windows 7? Mas neste caso os drivers seriam diferentes....
    Tenho um conhecido nesta situação, ele usa um programinha de Faturas em Clipper bem antigo feito para ele, e não tem os disquetes de instalação.
    E ainda tem outro problema...os computadores atuais dele não tem a porta Paralela...é complicado.

    ResponderExcluir
    Respostas
    1. Portas seriais e paralelas dificilmente o VirtualBox suportará conectar diretamente à máquina virtual. Já dispositivos USB ele suporta. Então daria para tentar o seguinte: conseguir um cabo adaptador USB para paralela ou serial (algum com chip FTDI ou Prolific) e ver se é possível fazer o VB conectá-lo diretamente à VM. Caso seja possível, instalar o driver no convidado, que passará a ter a porta provida pelo adaptador.

      Excluir
  2. Valeu...Realmente existem centenas de adaptadores USB. Vou garimpar...

    ResponderExcluir