4.3. Preparación de los ficheros para el arranque a través de red usando TFTP

Si su máquina está conectada a una red de área local, podría tener la posibilidad de arrancarla a través de la red desde otra máquina, usando TFTP. Si pretende arrancar el sistema de instalación desde otra máquina, debe ubicar los ficheros de arranque necesarios en lugares específicos en esa máquina, y debe configurarla para permitir el arranque desde ella.

Necesita configurar un servidor TFTP, y, en caso de que tenga muchas máquinas, un servidor DHCP .

DHCP («Dynamic Host Configuration Protocol», o protocolo de configuración dinámica de equipos) es una extensión de BOOTP compatible con éste, pero más flexible. Algunos sistemas solamente se pueden configurar a través de DHCP.

El protocolo de transferencia trivial de ficheros (TFTP) se usa para servir la imagen de arranque al cliente. Teóricamente, se puede usar cualquier servidor, en cualquier plataforma, que implemente este protocolo. En los ejemplos de esta sección, mostraremos órdenes para SunOS 4.x, SunOS 5.x (conocido también como Solaris) y GNU/Linux.

4.3.1. Configuración del servidor DHCP

Un servidor DHCP de software libre es el dhcpd de ISC. Se recomienda el uso del paquete isc-dhcp-server en Debian GNU/Linux. A continuación se muestra una configuración de ejemplo para él (consulte /etc/dhcpd3/dhcpd.conf):

option domain-name "ejemplo.com";
option domain-name-servers ns1.ejemplo.com;
option subnet-mask 255.255.255.0;
default-lease-time 600;
max-lease-time 7200;
server-name "nombre-de-servidor";

subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.200 192.168.1.253;
  option routers 192.168.1.1;
}

host nombredecliente {
  filename "/tftpboot.img";
  server-name "nombre-de-servidor";
  next-server nombre-de-servidor;
  hardware ethernet 01:23:45:67:89:AB;
  fixed-address 192.168.1.90;
}

En este ejemplo, hay un servidor nombre-de-servidor que hace el trabajo de DCHP, servidor, servidor TFTP y puerta de enlace de la red. Probablemente necesite cambiar las opciones de nombre de dominio, así como la dirección hardware del servidor y del cliente. La opción filename debe ser el nombre del fichero que se recuperará a través de TFTP.

Después de editar el fichero de configuración de dhcpd, reinícielo con /etc/init.d/isc-dhcp-server restart.

4.3.2. Habilitar el servidor TFTP

Para tener listo el servidor TFTP, primero deberá asegurarse de que la orden tftpd está instalada.

Existen dos formas de ejecutar el servicio de tftpd-hpa. Puede iniciarlo desde el demonio del sistema inetd, o lo puede configurar para que se inicie como un demonio independiente. El método a usar se selecciona durante la instalación del paquete, y se puede modificar reconfigurando el paquete.

Nota

Los servidores de TFTP utilizan /tftpboot como directorio del que servir las imágenes por motivos históricos. Sin embargo, algunos paquetes Debian GNU/Linux puede utilizar otros directorios para cumplir con el estándar de jerarquía de sistemas de ficheros. Por ejemplo, tftpd-hpa utiliza, por omisión, /srv/tftp. Puede tener que ajustar los ejemplos de configuración en esta sección si la ubicación varía.

Todas las alternativas de in.tftpd en Debian deberían almacenar las solicitudes TFTP en la registro del sistema de forma predeterminada. Algunas de ellas cuentan con el argumento -v para ofrecer más información. Se recomienda revisar todos los mensajes del registro en caso de problemas al arrancar puesto que son un buen punto de partida para diagnosticar la causa de los errores.

Si pretende instalar Debian en una máquina SGI y su servidor TFTP es una máquina GNU/Linux ejecutando Linux 2.4 necesitará configurar en su servidor lo siguiente:

# echo 1 > /proc/sys/net/ipv4/ip_no_pmtu_disc

para desactivar el descubrimiento de ruta MTU, de otro modo el PROM de Indy no podrá descargar el núcleo. Adicionalmente, asegúrese de que los paquetes de TFTP se envían desde un puerto origen inferior al 32767, o la descarga se interrumpirá después del primer paquete. Nuevamente, es Linux 2.4.x el que presenta este fallo en la PROM, y puede evitarlo configurando

# echo "2048 32767" > /proc/sys/net/ipv4/ip_local_port_range

para ajustar el rango de puertos origen que usa el servidor TFTP.

4.3.3. Mover las imágenes TFTP a su ubicación

Seguidamente, ubique la imagen TFTP de arranque que necesita, como se describe en la Sección 4.2.1, “Dónde encontrar las imágenes de instalación”, en el directorio de imagen de arranque de tftpd. Tendrá que hacer un enlace desde este fichero hacia el fichero que usará tftpd para arrancar un cliente en específico. Desafortunadamente, el nombre del fichero es determinado por el cliente TFTP, y no existe un estándar definido.

4.3.3.1. Arranque TFTP en SGI

En Indys SGI puede confiar en la orden bootpd para proveer el nombre del fichero TFTP. Éste se señala o bien como bf= en /etc/bootptab o como la opción filename= en /etc/dhcpd.conf.