segunda-feira, 20 de julho de 2009

Iniciando o DOS pela rede

Apesar de não ser muito útil, em alguns casos pode ser necessário iniciar o DOS pela rede, como a atualização de uma BIOS, ou outros programas do tipo). Portanto resolvi mostrar como se faz para dar boot no DOS (MS-DOS, DR-DOS, FreeDOS, etc) pela rede. Para tanto é necessário uma imagem de disquete inicializável do DOS.

Programas Necessários:
  • Servidor TFTP e DHCP com suporte a PXE (Usaremos o TFTPd32). Para saber em detalhes veja meu outro artigo Montando um servidor de boot PXE.
  • PXELinux (componente do SYSLinux).
  • Imagem do DOS (usaremos o FreeDOS). fdboot.img.
Lembrando que qualquer imagem de disquete do DOS serve (DR-DOS, MS-DOS, boot Win98/ME, etc).

Copiando o arquivos para o servidor TFTP
  • Copie o arquivo de imagem do DOS (fdboot.img) para o díretório raiz do servidor TFTPd32 (C:\tftp, como antes).
  • Desconpacte o arquivo syslinux.zip em um pasta qualquer.
  • Pegue os arquivos memdisk (na pasta memdisk) pxelinux.0 (na pasta core) e os copie para a pasta do TFTPd32.
Criando um arquivo de configuração para o PXELinux

Dentro do diretório do TFTPd32 crie uma pasta chamada pxelinux.cfg. Em seguida, crie um arquivo chamado default (sem extensão) com o seguinte conteúdo:

default dos
timeout 0
prompt 0

label dos
kernel memdisk
append initrd=fdboot.img

Pronto! Agora ao dar boot pela rede ele vai carregar o FreeDOS ou DOS que você escolher.

terça-feira, 6 de janeiro de 2009

Iniciando Windows PE 2.0 via Rede

Nesse tutorial tentarei explicar como preparar um computador executando Windows para iniciar o sistema Windows PE 2.0 através da rede local. 

Programas necessários
  • Windows Automated Instalation Kit (WAIK). Download
  • servidor TFTP e DHCP com suporte a PXE (Usaremos o TFTPd32)
  • GimageX (para montar a imgem wim, Download)
O primeiro passo é configurar o servidor de boot PXE. Para saber em detalhes como configurar o TFTPd32 veja meu outro artigo Montando um servidor de boot PXE.

Em seguida, você deve criar uma pasta onde serão colocados todos os arquivos necessários. (Usaremos C:\tftp, como antes). Dentro desta deve-se criar uma pasta chamada sources e outra chamada boot.

Copie o arquivo winpe.wim que está no diretorio C:\Arquivos de Programas\Windows AIK\Tools\PETools\x86 para a pasta C:\tftp\sources e renomeie o arquivo winpe.wim para boot.wim.

Copie os arquivos boot.sdi e bcd que se estão na subpasta boot dentro da pasta onde que se encontra o winpe.wim para a pasta C:\tftp\boot.

Para obter os demais arquivos é necessário usar o gimagex para abrir o arquivo winpe.wim. Para isso, crie uma pasta onde será mostrado o conteúdo do arquivo boot.wim do Windows PE. Nesse tutorial usaremos c:\winpe. 
Obs. se estiver utlizando uma versão do Windows anterior ao Vista é necessário instalar o hotfix disponível na pasta hotfix do DVD do Windows AIK.

Abra o GimageX, clica a aba mount. Em mount point clique em browse escolha a pasta que você criou. Em source clique em browse escolha o arquivo boot.wim. Em seguida clique em mount.
Abra a pasta c:\winpe\windows\boot\PXE, e copie os arquivos bootmgr.exe e pxeboot.n12 para a pasta c:\tftp.

No TFTPd32 na opção Boot file preencha com pxeboot.n12, e aperte o botão Save para gravar as alterações.

Testando a inicialização

Para a testar a inicialização basta apenas iniciar outro computador da rede via PXE. Geralmente é necessário fazer alterar a configuração do BIOS setup. Se você não tiver outro computador para teste, ou não consegue configurá-lo para iniciar via PXE, você pode testar usando uma máquina virtual do VMWare.

Download do VMWare Player (necessário para executar a máquina virtual).

Atualização

O tutorial acima também serve para o Windows PE 3.0.

Nas versões em portugues do WAIK, parecem ter problemas com o bootmgr.exe. Se você tiver o DVD do Windows Vista poderá extrair-los do mesmo. Se não tiver pegue-o no link bootmgr.exe.

domingo, 4 de janeiro de 2009

Montando um servidor de boot PXE

Neste artigo tentarei mostrar como montar seu próprio servidor de inicialização pela rede via PXE no Windows XP usando o TFTPd32. Usaremos o TFTPd32, pois ele já vem com servidor TFTP e DHCP., além de ser bem simples de configurar.
1. Crie uma pasta onde serão colocados os arquivos do servidor TFTP (por exemplo C:\tftp).
2. Baixe o TFTPd32 de descompacte-o nesta pasta.
3. Abra o tftpd32.exe, clique no botão Settings e marque a opção PXE Compatibility.
Em seguida, vá até a guia DHCP server e altere a configuração do DHCP de acordo com o IP do computador. Por exemplo, conforme a figura abaixo:



Neste exemplo o computador está configurado no IP 10.10.2.1 e máscara da sub-rede 255.255.255.0, portanto o IP pool starting address deve ser 10.10.2.2. Size of pool define a quantidade de IPs que podem ser utilizados. Neste exemplo usamos o valor 10. O valor Mask deve ser preenchiado com a máscara da sub-rede.  O valor de Boot file vai variar de acordo com o sistema a ser inicializado pela rede. Ao concluir a configuração basta apertar o botão Save. Para mais detalhes de como inicializar um sistema operacional pela rede veja meus outros artigos que falam sobre sistemas específico.