Preparando os arquivos para inicialização via rede usando TFTP Caso sua máquina esteja conectada a uma rede de área local, é possivel inicia-la através da rede a partir de outra máquina usando o servidor TFTP. Se tem a intenção de iniciar o sistema de instalação para outra arquitetura, os arquivos de inicialização precisarão ser colocados em localizações específicas da máquina e a máquina configurada para suportar inicialização em sua máquina específica. Você precisará configurar um servidor TFTP e para muitas máquinas um servidor BOOTP , ou um servidor RARP , ou um servidor DHCP. O Reverse Address Resolution Protocol (RARP) é o único método para dizer aos clientes qual endereço IP usar para si mesmo. Outro método é usar o protocolo BOOTP. O BOOTP é um protocolo IP que informa um computador de seu endereço IP e onde na rede será obtida a imagem de inicialização. Outra alternativa ainda existe nos sistemas VMEbus: o endereço IP pode ser manualmente configurado na ROM de inicialização. O DHCP (Dynamic Host Configuration Protocol) é uma extensão mais flexível, compatível com versões mais antigas do BOOTP. Alguns sistemas somente podem ser configurados via DHCP. Para o PowerPC, se tiver uma máquina Power Macintosh NewWorld, será uma boa idéia de usar o DHCP ao invés do BOOTP. Algumas das últimas máquinas sã incapazes de inicializar usando o BOOTP. Ao contrário do Open Firmware encontrado em máquinas Sparc e PowerPC, o console SRM não usará RARP para obter seu endereço IP, e então você deverá usar o BOOTP para inicializar via rede seu Alpha Os sistemas Alpha também podem ser inicializados via rede usando o DECNet MOP (Maintenance Operations Protocol), mas isto nao será discutido aqui. Presumivelmente, seu operador local do OpenVMS estará satisfeito em ajuda-lo se você tiver que esquentar a cabeça para usar o MOP para inicializar o Linux em seu Alpha. . Você também poderá entrar com a configuração IP de suas interfaces de rede diretamente no console SRM. Algumas máquinas HPPA antigas (e.g. 715/75) usarão o RBOOTD ao invés do BOOTP. Há um pacote rbootd disponível no Debian. O protocolo Trivial File Transfer Protocol (TFTP) é usado para servidor uma imagem de inicialização ao cliente. Teoricamente, qualquer servidor, em qualquer plataforma que implementa estes protocolos poderá ser usados. Nos exemplos desta seção, nós mostraremos comando para o SunOS 4.x, SunOS 5.x (a.k.a. Solaris), e para o GNU/Linux. Para utilizar o método Pre-boot Execution Environment (PXE) de inicialização através de TFTP, você precisará configurar um servidor TFTP coom suporte a tsize. Em um servidor &debian; os pacotes atftpd e tftpd-hpa se qualificam; nós recomendamos o pacote tftpd-hpa. &tftp-rarp.xml; &tftp-bootp.xml; &tftp-dhcp.xml; Ativando o servidor TFTP Para ter um servidor TFTP funcionando, primeiro deverá ter certeza que o tftpd está ativado. Ele normalmente é ativado através da seguinte linha no seu arquivo /etc/inetd.conf: tftp dgram udp wait nobody /usr/sbin/tcpd in.tftpd /tftpboot Os pacotes da Debian geralmente configurarão isto corretamente por padrão quando forem instalados. Olhe neste arquivo e lembre-se do diretório que é usado como argumento para o in.tftpd; você irá precisa dele mais abaixo. O argumento -l permite que alguns tipos de versões do in.tftpd registrem todas as requisições para os logs do sistema; isto é mais útil para diagnosticar erros de inicialização. Se você tiver que mudar o /etc/inetd.conf, você terá que notificar o processo em execução inetd de que o arquivo foi modificado. Em máquinas Debian, execute /etc/init.d/inetd reload; em outras máquinas, encontre o ID do processo do inetd e execute o comando kill -HUP inetd-pid. Se tiver a intenção de instalar a Debian em uma máquina SGI e seu servidor TFTP é uma máquina GNU/Linux executando o kernel do 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, caso contrário o PROM do Indy 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 irá parar após o primeiro pacote. Novamente o Linux 2.4.x causando bugs na PROM você poderá 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 utilizará. Movendo as imagens TFTP para o Local Como próximo passo, coloque a imagem de inicialização TFTP que precisa, como encontrada no no diretório de imagens de inicialização do tftpd. Geralmente este diretório será /tftpboot. Você tera que fazer um link deste arquivo para o arquivo que o tftpd usará para inicializar em cliente em particular. Infelizmente, o nome do arquivo é determinado pelo client e TFTP e não existem padrões rígidos. Em máquinas Power Macintosh NewWorld, você precisará configurar o gerenciador de partida yaboot como a imagem de inicialização do TFTP. O Yaboot então copiará as imagens de kernel e disco em RAM via TFTP. Para a inicialização via rede, use o yaboot-netboot.conf. Apenas renomeie este arquivo para yaboot.conf no diretório do TFTP. Para a inicialização usando o PXE, tudo que precisa fazer já está feito no arquivo tar netboot/netboot.tar.gz. Simplesmente descompacte este arquivo no diretório de imagem de inicialização do tftpd. Tenha certeza que seu servidor DHCP está configurado para passar o arquivo /pxelinux.0 através do tftpd para inicializar através dele. Para inicialização através do PXE, tudo que precisa fazer já está feito no arquivo tar netboot/netboot.tar.gz. Simplesmente descompacte este arquivo para o diretório de imagem de tftpd. Tenha certeza que seu servidor dhcp está configurado para passar o arquivo /debian-installer/ia64/elilo.efi para o tftpd para inicializar através dele. Imagens TFTP do DECstation Para as DECstations, existem arquivos tftpimage para cada sub-arquitetura. que contém ambos os kernels e o programa de instalação em um arquivo. A convenção de nomes é subarquitetura/netboot-boot.img. Copie o arquivo tftpimage que deseja usar para /tftpboot/tftpboot.img caso você utilize o exemplo BOOTP/DHCP descritos acima. A firmware do DECstation é inicializada pelo TFTP com o comando boot#/tftp, onde # é o número do dispositivo TurboChannel que será inicializado. Na maioria das DECstations este número é o 3. Se o servidor BOOTP/DHCP não fornecer o nome de arquivo ou você precisar passar parâmetros adicionais, eles poderão ser opcionalmente adicionados com a seguinte sintaxe: boot #/tftp/filename param1=value1 param2=value2 ... Diversas revisões da firmware da DECstation mostram um problema se tratanto com a inicialização via rede: a transferência inicia, mas após algum tempo ela para com o erro a.out err. Isto pode ter diversas razões: A firmware não responde a uma requisição ARP durante uma transferência TFTP. Isto leva a um timeout de ARP e a transferência é interrompida. A solução é adicionar o endereço MAC da placa ethernet na DECstation estaticamente para a tabela ARP do servidor de TFTP. Isto é feito rodando arp -s IP-address MAC-address como root na máquina que atua como servidor TFTP. O endereço MAC da DECstation pode ser lido entrando com o comando cnfg no aviso da firmware da DECstation. A firmware tem o limite de tamanho nos arquivos que podem ser inicializados através do TFTP. Existem também revisões de firmware que não permitem inicializações através do TFTP. Uma visão sobre as diferentes revisões de firmware podem ser encontradas nas páginas web do NetBSD: . Inicialização através de TFTP no Alpha No Alpha, você deverá especificar um nome de arquivo (como um caminho relativo ao diretório da imagem de inicialização) usando o argumento -file ou o comando boot do SRM ou definindo a variável de ambiente BOOT_FILE. Alternativamente, o nome do arquivo deverá ser fornecido via BOOTP (no dhcpd da ISC, use a diretiva filename). Ao contrário da Open Firmware, não existe nome padrão no SRM, assim você deverá especificar um nome de arquivo usando um destes métodos. Inicialização através TFTP no SPARC As arquiteturas SPARC usam os nomes de sub-arquiteturas, tais como SUN4M ou SUN4C; em alguns casos, a arquitetura é deixada em branco, assim o arquivo que o cliente procura é simplesmente client-ip-in-hex. Assim, caso a sub-arquitetura do seu sistema seja SUN4C e seu endereço IP 192.168.1.3, o nome de arquivo deverá ser C0A80103.SUN4C. Um método fácil de determinar isto é entrar com o seguinte comando no interpretador de comandos (assumindo que o IP da máquina é 10.0.0.4): $ printf '%.2x%.2x%.2x%.2x\n' 10 0 0 4 Isto mostrará o IP em hexadecimal; para obter o nome do arquivo correto, você precisará mudar todas as letras para maiúsculas e, se necessário, adicionar o nome da sub-arquitetura. 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 my-sparc.image. Este arquivo também deverá residir no diretório que o servidor TFTP procura. Inicialização TFTP no BVM/Motorola Para os sistemas BVM e Motorola VMEbus copie os arquivos &bvme6000-tftp-files; para /tftpboot/. A seguir, configure o servidor BOOTP ou boot ROMs para carregar inicialmente o arquivo tftplilo.bvme ou tftplilo.mvme a partir do servidor TFTP. Veja o arquivo tftplilo.txt de sua sub-arquitetura para informações adicionais específicas de sistema. Inicialização TFTP nos Indys SGI Nos Indys 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. Inicialização através de TFTP na Broadcom BCM91250A Você não precisa configurar o DHCP de uma forma especial porque você passará o caminho completo do arquivo que será carregado para o CFE.