pxe_boot.png

En los primeros tiempos de la vida de Linux la instalación se realizaba desde diskettes y con ello bastaba, luego pasamos a los CD y más tarde a los DVD y medios externos como pendrives, pero hay una forma muy interesante de instalación del gran sistema operativo libre y es a través de la red, aprovechando las muy buenas velocidades que en promedio hoy tenemos disponibles (al menos en las ciudades claro está).

Pero antes de comenzar necesitamos preparar algunas cosas, por ello en este post vamos a mostrar cómo instalar un servidor PXE en Ubuntu. Para quienes no estén demasiado en conocimiento de esto, decir que las siglas se refieren a un servidor de preboot execution environment -o en español ‘entorno de ejecución previo al inicio’- y lo que nos permite es iniciar un ordenador en forma remota a través de una interfaz de red.

Para esto, lo que hacemos es copiar la imagen ISO de instalación en el servidor PXE, pero para que ello funcione necesitaremos montar el servidor, que es lo que vamos a mostrar en este tutorial. Y partiremos de la base de que nuestro equipo tiene una dirección IP fija que es 192.168.1.100 y un hostname servidorpxe.com, pero además de esto vamos a necesitar un servidor DHCP en nuestro Ubuntu así que nos ponemos manos a la obra.

# apt-get update

#apt-get install isc-dhcp-server

Luego abrimos para edición el archivo del servidor:

nano /etc/default/isc-dhcp-server

Y añadimos la interfaz de red de nuestro equipo para que sea la que recibe las conexiones:

[…]

INTERFACES=”eth0?

Ahora hacemos lo propio con el archivo de configuración:

# nano /etc/dhcp/dhcpd/conf

[…]

option domain-name “servidorpxe.com”;

option domain-name-servers “server1.servidorpxe.com”;

subnet 192.168.1.100 netmask 255.255.255.0 {

range 192.168.1.10 192.168.1.30;

option routers 192.168.1.1;

option broadcast-address 192.168.1.255;

}

default-lease-time 600;

max-lease-time 7200

[…]

authoritative;

[…]

Una vez que finalizamos, tenemos que reiniciar el servicio DHCP:

service isc-dhcp-server restart

Ahora vamos a instalar el servidor PXE propiamente dicho, y luego abrimos para edición su archivo:

# apt-get install apache2 tftpd-hpa inetutils-inetd

# nano /etc/default/tftpd-hpa

Agregamos la opción que nos permite iniciar el demonio:

[…]

RUN_DAEMON=”yes”

OPTIONS=”-l -s /var/lib/tftpboot”

Guardamos y abrimos para edición el archivo de configuración del demonio inetd:

# nano /etc/inetd.conf

Añadimos lo siguiente:

[…]

tftp    dgram    udp    wait    root    /usr/sbin/in.tftpd /user/sbin/in.tftpd -s /var/lib/fttpboot

Guardamos, y ahora toca reiniciar el servicio:

service tftpd-hpa restart

Para finalizar la configuración de servicios, tenemos que hacer lo propio con el servidor PXE:

# nano /etc/dhcp/dhcp.conf

Añadimos lo siguiente, al final del archivo:

[…]

allow booting;

allow bootp;

option option-128 code 128 = string;

option option-129 code 129 = text;

next-server 192.168.1.100;

filename “pxelinux.0?;

Guardamos y reiniciamos el servicio:

# service isc-dhcp-server restart

Ya falta menos, y ahora tenemos que configurar las carpetas en las cuales vamos a montar las ISO a las cuales van a acceder los demás equipos.

mount /dev/sr0 /mnt

cp -avr /mnt/install/netboot/* /var/lib/tftpboot/

mkdir -p /var/www/html/ubuntu14.10

cp -avr /mnt/* /var/www/html/ubuntu14.10/

Luego editamos el archivo de configuración pxelinux.cfg/default:

nano /var/lib/tftpboot/pxelinux.cfg/default

Añadimos:

[…]
label linux
kernel ubuntu-installer/amd64/linux
append ks=http://192.168.1.100/ks.cfg vga=normal initrd=ubuntu-installer/amd64/initrd.gz
ramdisk_size=16432 root=/dev/rd/0 rw –

Por último, añadimos compatibilidad con PXE al servidor DHCP:

nano /etc/dhcp/dhcpd.conf

Añadimos:

[…]
allow booting;
allow bootp;
option option-128 code 128 = string;
option option-129 code 129 = text;
next-server 192.168.1.100;
filename “pxelinux.0?;

Eso es todo, ahora simplemente debemos configurar los otros equipos desde su BIOS para que puedan iniciarse desde la red, y al hacerlo solicitarán a nuestro servidor PXE la configuración y ya podremos comenzar con la instalación.

 

Fuente: ubunlog

¿Quién está en línea?

Hay 28124 invitados y ningún miembro en línea