Cómo configurar en 10 breves pasos el servidor tftpboot en UNIX/Linux

En este artículo, analizaremos cómo configurar tftpboot, incluida la instalación de los paquetes necesarios y las configuraciones de tftpboot.

El servicio de arranque TFTP se utiliza principalmente para realizar la instalación del sistema operativo en una máquina remota para la que no tienes acceso físico. Para realizar la instalación del sistema operativo con éxito, debe haber una manera de reiniciar el servidor remoto, ya sea usando wakeonlan o alguien que la reinicie manualmente o de alguna otra manera.

En esos escenarios, puedes configurar los servicios de tftpboot en consecuencia y la instalación del sistema operativo se puede hacer de forma remota (necesitas tener el archivo de configuración autoyast para automatizar los pasos de instalación del sistema operativo).

El procedimiento paso a paso se presenta en este artículo para SLES10-SP3 en arquitectura de 64 bits. Sin embargo, estos pasos son bastante similares a cualquier otra distribución de Linux.

Paquetes requeridos

Los siguientes paquetes deben instalarse para la configuración de tftpboot.

  • Paquetes de servicios dhcp: dhcp-3.0.7-7.5.20.x86_64.rpm y dhcp-server-3.0.7-7.5.20.x86_64.rpm
  • Paquete tftpboot: tftp-0.48-1.6.x86_64.rpm
  • paquete pxeboot: syslinux-3.11-20.14.26.x86_64.rpm

Instalación de paquete

Se deben instalar los paquetes para los servicios del servidor dhcp:

Después de instalar el paquete syslinux, se creará el archivo pxelinux.0 en el directorio /usr/share/pxelinux/. Esto es necesario para cargar el núcleo de instalación y las imágenes initrd en la máquina cliente.

Es necesario verificar que los paquetes se hayan instalado correctamente.

Luego tienes que descargar el tftpserver apropiado del repositorio de su respectiva distribución de Linux.

Pasos para configurar tftpboot

Paso 1: crear el directorio /tftpboot

Hay que iniciar creando el directorio tftpboot en el directorio root(/) como se muestra a continuación.

Paso 2: copiar la imagen pxelinux

La imagen PXE Linux estará disponible una vez que hayas instalado el paquete syslinux. Esto se debe copiar a ruta la /tftpboot como se muestra a continuación.

Paso 3: crear el punto de montaje para la ISO y montar la imagen ISO

Supongamos que vamos a instalar la distribución SLES10 SP3 Linux en un servidor remoto. Si tienes el DVD SUSE10-SP3, insértalo en la unidad o monta la imagen ISO que tengas. Aquí, la imagen iso se ha montado de la siguiente manera:

Paso 4: Copiar las imágenes vmlinuz e initrd en /tftpboot

Copia initrd en el directorio tftpboot como se muestra a continuación.

Paso 5: Crear el directorio pxelinux.cfg

Luego se debe crear el directorio pxelinux.cfg en /tftpboot y especificar las definiciones de arranque pxe para el cliente.

Las siguientes opciones se utilizan para:

  • kernel: especifica dónde encontrar el kernel de instalación de Linux en el servidor TFTP.
  • install: especifica los argumentos de arranque para pasar al núcleo de instalación.

Según las entradas anteriores, el modo de instalación nfs se utiliza para servir RPM de instalación y archivos de configuración. Por lo tanto, configura nfs en esta máquina con el directorio /tftpboot en la lista exportada.

Puedes agregar la opción “autoyast” con el archivo de configuración de autoyast para automatizar los pasos de instalación del sistema operativo; de lo contrario, debes ejecutar los pasos de instalación manualmente.

Paso 6: cambiar el propietario y el permiso para el directorio /tftpboot

Asigna nobody:nobody al directorio /tftpboot.

Paso 7: Modificar /etc/dhcpd.conf

Asegúrate de modificar /etc/dhcpd.conf como se muestra a continuación.

Especifica la interfaz en /etc/syslinux/dhcpd para escuchar las solicitudes dhcp que provienen de los clientes.

Aquí, esta máquina tiene la dirección IP 192.168.1.101 en el dispositivo eth1. Por lo tanto, se debe especificar eth1 para DHCPD_INTERFACE como se muestra arriba.

Paso 8: Modificar /etc/xinetd.d/tftp

Cambia el archivo /etc/xinetd.d/tftp para reflejar lo siguiente. De forma predeterminada, el valor para el parámetro de disable es “yes”, asegúrate de modificarlo a “no” y debes cambiar la entrada server_args a -s /tftpboot.

Paso 9: sin cambios en /etc/xinetd.conf

No es necesario modificar el archivo etc/xinetd.conf. Utiliza los valores predeterminados especificados en el archivo xinetd.conf.

Paso 10: reiniciar los servicios xinetd, dhcpd y nfs

Reinicia estos servicios como se muestra a continuación.

Después de reiniciar los servicios nfs, puedes ver la lista de directorios exportados (/tftpboot) con el siguiente comando:

Finalmente, la configuración de tftpboot está lista y ahora la máquina cliente se puede iniciar después de cambiar el primer dispositivo de inicio como “network” en la configuración de la BIOS.

Si encuentras algún error tftp, puedes solucionar el problema recuperando algunos archivos a través del servicio tftpd.

Puedes recuperar algunos archivos del servidor tftpserver para asegurarte de que el servicio tftp funciona correctamente con el cliente tftp. Supongamos que el archivo sample.txt está presente en el directorio /tftpboot, entonces debes ejecutar lo siguiente: