Preparando os arquivos para inicialização via rede usando TFTP Caso sua máquina esteja conectada a uma rede local, é possível iniciá-la através da rede a partir de outra máquina usando o servidor TFTP. Se você tem a intenção de iniciar o sistema de instalação a partir de outra máquina, os arquivos de inicialização precisarão ser colocados em locais específicos naquela máquina, que precisará ser configurada para oferecer suporte à inicialização da sua máquina específica. Você precisará configurar um servidor TFTP e, para muitas máquinas, um servidor DHCP, ou um servidor RARP, ou um servidor BOOTP. O Protocolo de Resolução Reversa de Endereços (RARP — Reverse Address Resolution Protocol) é o único método para dizer aos seus clientes qual endereço IP usar. Outro método é usar o protocolo BOOTP. O BOOTP é um protocolo IP que informa a um computador seu endereço IP e onde na rede será obtida a imagem de inicialização. O DHCP (Dynamic Host Configuration Protocol) é uma extensão mais flexível e retrocompatível do BOOTP. Alguns sistemas só podem ser configurados via DHCP. Para o PowerPC, se tiver uma máquina Power Macintosh NewWorld, é uma boa ideia de usar o DHCP ao invés do BOOTP. Algumas das últimas máquinas são incapazes de inicializar usando o BOOTP. Algumas máquinas HPPA antigas (e.g. 715/75) usam o RBOOTD ao invés do BOOTP. Há um pacote rbootd disponível no Debian. O protocolo de Transferência Trivial de Arquivo (TFTP — Trivial File Transfer Protocol) é usado para servir uma imagem de inicialização ao cliente. Teoricamente, qualquer servidor, em qualquer plataforma que implementa estes protocolos, poderá ser usado. Nos exemplos desta seção, nós mostraremos comandos para o SunOS 4.x, SunOS 5.x (também conhecido como Solaris) e para o GNU/Linux. Para um servidor &debian; nós recomendados o pacote tftpd-hpa. Ele é escrito pelo mesmo autor do carregador de inicialização syslinux e portanto é menos provável que cause problemas. Uma boa alternativa é o pacote atftpd. &tftp-rarp.xml; &tftp-dhcp.xml; &tftp-bootp.xml; Habilitando o servidor TFTP Para ter um servidor TFTP funcionando, primeiro você deverá certificar-se de que o tftpd está habilitado. No caso do tftpd-hpa há duas formas de executar o serviço. Uma é iniciá-lo sob demanda através do daemon inetd do sistema, a outra é configurá-lo para ser executado como um daemon independente. Qual dos dois métodos será usado é definido quando o pacote é instalado e pode ser modificado reconfigurando-o. Historicamente, servidores TFTP usavam /tftpboot como diretório para servir imagens. No entanto, pacotes &debian; podem usar outros diretórios para serem compatíveis com o Filesystem Hierarchy Standard (Padrão de Hierarquia de Sistemas de Arquivos). Por exemplo, o tftpd-hpa por padrão usa /var/lib/tftpboot. Você pode ter que ajustar os exemplos de configuração apresentados nesta seção. Todas as alternativas in.tftpd disponíveis no Debian deveriam, por padrão, registrar nos logs do sistema todas as requisições TFTP. Algumas delas dão suporte ao argumento -v para aumentar o nível de detalhes (verbose). É recomendado verificar estas mensagens de log em caso de problemas de inicialização pois elas são um bom ponto de partida para diagnosticar a causa dos erros. Se tiver a intenção de instalar o Debian em uma máquina SGI e seu servidor TFTP é uma máquina GNU/Linux executando o kernel Linux 2.4, você precisará configurar o seguinte em seu servidor: # echo 1 > /proc/sys/net/ipv4/ip_no_pmtu_disc para desligar a descoberta de caminho MTU (Path MTU discovery), caso contrário o PROM do SGI não poderá baixar o kernel. Além disso, tenha certeza que os pacotes TFTP são enviados de uma porta de origem que não seja maior que 32767 ou o download parará após o primeiro pacote. Novamente, é o Linux 2.4.x causando bugs na PROM e você pode evitar isto fazendo # echo "2048 32767" > /proc/sys/net/ipv4/ip_local_port_range para ajustar a faixa de portas de origem que o servidor TFTP do Linux usa. Movendo as imagens TFTP para o local Como próximo passo, coloque a imagem de inicialização TFTP que você precisa, como encontrada no no diretório de imagens de inicialização do tftpd. Você pode ter que fazer um link deste arquivo para o arquivo que o tftpd usará para inicializar um cliente em particular. Infelizmente, o nome do arquivo é determinado pelo cliente TFTP e não existem padrões rígidos. Em máquinas Power Macintosh NewWorld, você precisará configurar o gerenciador de inicialização yaboot como a imagem de inicialização do TFTP. O Yaboot copiará as imagens de kernel e disco RAM via TFTP. Você terá que baixar os arquivos a seguir do diretório netboot/: vmlinux initrd.gz yaboot yaboot.conf boot.msg Para a inicialização usando o PXE, tudo que você precisa já está configurado no arquivo netboot/netboot.tar.gz. Simplesmente descompacte este arquivo no diretório de imagem de inicialização do tftpd. Certifique-se de que seu servidor DHCP está configurado para passar o arquivo pxelinux.0 para o tftpd como o nome de arquivo para inicialização. Para inicialização através do PXE, tudo que você precisa já está configurado no arquivo netboot/netboot.tar.gz. Simplesmente descompacte este arquivo no diretório de imagem de inicialização do tftpd. Certifique-se de que seu servidor DHCP está configurado para passar o arquivo /debian-installer/ia64/elilo.efi para o tftpd como o nome de arquivo para inicialização. Inicialização através de TFTP em SPARC Algumas arquiteturas SPARC adicionaram nomes de subarquiteturas, tais como SUN4M ou SUN4C, ao nome de arquivo. Assim, se a subarquitetura do seu sistema é SUN4C e, seu endereço IP é 192.168.1.3, o nome do arquivo deverá ser C0A80103.SUN4C. Contudo, ainda existem subarquiteturas cujo arquivo que o cliente procura é apenas ip-do-cliente-em-hexa. Um método fácil de determinar o código hexadecimal para o endereço IP é executar o seguinte comando no shell (assumindo que o IP da máquina é 10.0.0.4): $ printf '%.2x%.2x%.2x%.2x\n' 10 0 0 4 Para obter o nome do arquivo correto, você precisará mudar todas as letras para maiúsculo e, se necessário, adicionar o nome da subarquitetura. Se você fez tudo isso corretamente, executar o comando boot net a partir do OpenPROM deverá carregar a imagem. Se a imagem não for encontrada, tente verificar os logs do seu servidor tftp para ver qual nome de imagem está sendo requisitado. Você também poderá forçar alguns sistemas sparc a procurar por nomes de arquivos específicos adicionando-o no final da linha de comando, por exemplo boot net minha-sparc.imagem. Este arquivo também deverá residir no diretório que o servidor TFTP consulta. Inicialização através de TFTP em SGI Nas máquinas SGI você poderá usar o bootpd para fornecer o nome do arquivo TFTP. Ele poderá ser fornecido na forma bf= no /etc/bootptab ou como opção filename= no arquivo /etc/dhcpd.conf.