Servidor PXE
Introducción
Un servidor PXE es un sistema capaz de brindar a sus clientes la opción de instalación vía red (netinstall). Es una forma muy rápida y cómoda de realizar la instalación de un sistema operativo dado que no se necesita siquiera que el equipo a instalar cuente con una lectora de CD/DVD. Además, un servidor PXE puede contar con la capacidad de instalar múltiples sistemas operativos, evitándonos tener uno o más CDs/DVDs por cada sistema. Otra ventaja es que la instalación se realiza obteniendo los paquetes desde un repositorio central con lo que, terminada la instalación, el sistema contará con las últimas versiones de cada paquete. Esto mismo puede suponer una desventaja si la conexión a Internet es lenta, aunque en este último caso lo ideal es montar un mirror de los sistemas necesarios de manera que los archivos se descarguen mucho más rápido.
Para montar un servidor PXE propio utilizaremos Debian Lenny y los siguientes programas:
- Servidor DHCP.
- Servidor TFTP.
En la sección siguiente se procede a la instalación y configuración del servidor en cuestión.
Instalación y configuración
Instalar el software necesario.
pxe-server:~# aptitude install tftpd-hpa dhcp3-server
Una vez instalados ambos servicios, es necesario permitir el inicio de tftpd-hpa como demonio, de la siguiente manera:
pxe-server:~# vi /etc/default/tftpd-hpa RUN_DAEMON="yes" OPTIONS="-l -s /var/lib/tftpboot"
Si el directorio /var/lib/tftpboot no existiera será necesario crearlo. Ahora bien, el próximo paso es iniciar el servidor TFTP.
pxe-server:~# /etc/init.d/tftpd-hpa start
Luego de configurado TFTP, habrá que indicarle al servidor DHCP las interfaces en las que debe ofrecer IPs. En este caso se utiliza la eth0.
pxe-server:~# vi /etc/default/dhcp3-server INTERFACES="eth0"
El próximo paso es instruir al servidor DHCP acerca de la información de configuración que debe brindar.
pxe-server:~# vi /etc/dhcp3/dhcpd.conf
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.200 192.168.1.250;
option routers 192.168.1.1;
option domain-name-servers 192.168.1.1;
filename "pxelinux.0";
}
Una vez cumplidos los dos pasos anteriores ya se puede poner a funcionar el servidor DHCP.
pxe-server:~# /etc/init.d/dhcp3-server restart
Constatar entonces que tanto el servidor DHCP como el servidor TFTP estén funcionando.
pxe-server:~# netstat -nlup Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name udp 0 0 0.0.0.0:67 0.0.0.0:* 2684/dhcpd3 udp 0 0 0.0.0.0:68 0.0.0.0:* 1706/dhclient3 udp 0 0 0.0.0.0:69 0.0.0.0:* 2379/in.tftpd
El paso siguiente es descargar los archivos necesarios para realizar la instalación por red. En este caso se mostrará cómo configurar al servidor para que permita instalar Debian Lenny.
pxe-server:~# cd /var/lib/tftpboot/ pxe-server:/var/lib/tftpboot# lftp -c "open http://http.us.debian.org/debian/dists/lenny/main/installer-i386/current/images/netboot/; mirror"
Listo, el servidor ya está configurado y funcionando. A partir de este momento ya es posible instalar Debian Lenny en cualquier equipo vía red. Para ello, se configura el cliente para que bootee utilizando PXE, se lo conecta en el mismo segmento de red en que se encuentra el servidor configurado y listo, la instalación comenzará automáticamente.




y puedes decir cuanto tiempo dura la instalación hasta que arranca el cliente?
thx
Hola, no se si respondes aqui, pero conoces el metodo como para poner integro el cd de la distribucion?? porque con este metodo de aqui la mayor parte de la instalacion se descarga de internet luego de bootear la mini imagen. Para realizar varias instalaciones seria mejor tener disponible todos los archivos en el servidor de manera tal que no le haga gastar ancho de banda a los mirrors y que ademas sea mucho mas rapida :)
Sí, o bien podrías descargar el CD 1 completo que incluye todo lo necesario para la instalación o configurar un mirror de Debian en un equipo en tu misma LAN. También existe la posibilidad de hacer un caché de los paquetes, de manera que los bajás la primera vez si no están en dicha caché y luego la descarga se hace directamente desde la caché. Temas interesantes para algún próximo post.