Caso sua máquina esteja conectada a uma rede de área local, você poderá ser capaz de 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 máquinas CATS um servidor 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 em seu Alpha. Você também poderá entrar com a configuração IP de suas interfaces de rede diretamente no console SRM. [3]
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 ter o servidor TFTP pronto, você terá primeiro que ter certeza que o tftpd está ativado. Ele normalmente é ativado tendo a seguinte linha no seu arquivo /etc/inetd.conf:
tftp dgram udp wait root /usr/sbin/tcpd in.tftpd /tftpboot |
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 (para a potato/2.2 e sistemas mais novos use /etc/init.d/inetd reload); em outras máquinas, encontre o ID do processo do inetd e execute o comando kill -HUP inetd-pid.
Como próximo passo, coloque a imagem de inicialização TFTP que precisa, como encontrada no Secção 4.2.3, “Onde encontrar os arquivos de Instalação” 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.
Freqüentemente, o arquivo que o cliente TFTP irá procurar é client-ip-in-hexclient-architecture. Para computar client-ip-in-hex, pegue cada byte do endereço IP do cliente e transforme-o em notação hexadecimal. Se tiver uma máquina por perto com o programa bc, você poderá usa-lo. Primeiro digite o comando obase=16 para ajustar a base para hex, então entre com componentes individuais do IP do cliente um de cada vez. Como em client-arquitetura, tente alguns valores.
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.
Em alguns sistemas, o disco RAM de instalação padrão, combinado com os requerimentos de memória da imagem de inicialização do TFTP, não cabem na memória. Neste caso, você ainda poderá instalar usando o TFTP, você terá que ir através do passo adicional de montagem do sistema de arquivos raíz via NFS pela rede também. Este tipo de configuração também é apropriada para clientes sem discos (diskless) ou sem dados (dataless).
Primeiro, siga todos os passos acima descritos em Secção 4.4, “Preparando os arquivos para inicialização via rede usando TFTP”.
Copie a imagem do kernel do Linux para seu servidor TFTP usando a imagem a.out para a arquitetura que estiver inicializando.
Descompacte o arquivo raíz tar em seu servidor NFS (pode ser o mesmo sistema que seu servidor TFTP):
# cd /tftpboot # tar xvzf root.tar.gz |
Tenha certeza de utilizar o comando tar da GNU (ao invés de outros programas, como o do SunOS, que manipula os dispositivos de forma incorreta como texto plano).
Exporte seu diretório /tftpboot/debian-sparc-root com acesso root para seus clientes. E.g., adicione a seguinte linha ao seu arquivo /etc/exports (sintaxe do GNU/Linux, deverá ser similar no SunOS):
/tftpboot/debian-sparc-root cliente(rw,no_root_squash) |
NOTA: "cliente" é o nome de estação ou endereço IP reconhecido pelo servidor para o sistema que deseja inicializar.
Crie um link simbólico do endereço IP do seu cliente em notação pontuada para o arquivo debian-sparc-root no diretório /tftpboot directory. Por exemplo, caso o endereço IP do cliente seja 192.168.1.3, faça
# ln -s debian-sparc-root 192.168.1.3 |
A instalação com TFTP e NFS raíz é similar a Secção 4.4.3, “Instalação via TFTP em sistemas com pouca memória” porque você não precisará carregar o disco RAM mais mas inicializará através do seu novo sistema de arquivos NFS criado. Você precisará então substituir o link simbólico para a imagem tftpboot por um link simbólico apontando para uma imagem de kernel (por exemplo, linux-a.out).
O RARP/TFTP requer que todos os daemons estejam sendo executados no mesmo servidor (a estação de trabalho que estiver enviando requisições TFTP de volta para o servidor que respondeu a requisição RARP anterior).
[3] 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.