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-gnu; 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-gnu; 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 /srv/tftp. 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.