Configurar PXE linux


PXE hace referencia al entorno de ejecución de prearranque (Preboot eXecution Environment). Es un entorno para arrancar e instalar el sistema operativo en ordenadores a través de una red, de manera independiente de los dispositivos de almacenamiento de datos disponibles (como discos duros) o de los sistemas operativos instalados.

PXE fue introducido como parte del framework Wired for Management por Intel y fue descrito en la especificación (version 2.1) publicada por Intel y Systemsoft el 20 de septiembre de 1999. PXE utiliza varios protocolos de red como IPUDPDHCPTFTP, y conceptos como Globally Unique Identifier (GUID), Universally Unique Identifier (UUID) y Universal Network Device Interface (UNDI).

El término cliente PXE sólo se refiere al papel que la máquina juega en el proceso de arranque mediante PXE. Un cliente PXE puede ser un servidor, un ordenador de mesa, portátil o cualquier otra máquina que esté equipada con código de arranque PXE.

Instalación:

Escribimos la comanda de instalación

#aptitude install netkit-inetd tftpd-hpa dhcp3-server lftp

escribiremos esta comanda para ver si el servicio tftp esta ok

#netstat -uap | grep tftp

Si podemos ver esto así es que está correcto

server1:~# netstat -uap | grep tftp
udp        0      0 *:tftp                  *:*                                 2242/inetd
server1:~#

Si no fue lo que apareció mala suerte, es broma entonces plan «b», deberemos editar el siguiente archivo /etc/inetd.conf y poner lo siguiente:

[…]

#:BOOT: TFTP service is provided primarily for booting.  Most sites

#       run this only on machines acting as «boot servers.»

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

[…]

y reiniciamos el demonio(servicio):

/etc/init.d/openbsd-inetd restart

Lo que hicimos en el paso anterior fue instalar el servicio TFTP ahora instalaremos y configuraremos el servicio DHCP a que mola, venga vamos allá:

DHCP:

hay que ir al archivo /etc/dhcp3/dhcpd.conf y editarlo poniendo esto:

option domain-name-servers 145.253.2.75, 213.191.92.86;

default-lease-time 86400;

max-lease-time 604800;

authoritative;

subnet 192.168.0.0 netmask 255.255.255.0 {

range 192.168.0.10 192.168.0.49;

option subnet-mask 255.255.255.0;

option broadcast-address 192.168.0.255;

option routers 192.168.0.1;

filename «pxelinux.0»;

next-server 192.168.0.100;

}

Basicamente hay que modificar desde donde pone subnet las ip para adaptarlas a tu maquina.

En next-server debes poner la ip del servidor PXE reiniciamos el demonio /etc/init.d/dhcp3-server restart

Bueno ahora solo hay que poner imagenes de distros para que nuestro PXE tenga algo de sentido:

poned estas comandas para bajarse una imagen de debian por ejemplo:

cd /tmp

lftp -c «open http://ftp.de.debian.org/debian/dists/lenny/main/installer-i386/current/images/; mirror netboot/»

mv netboot/* /var/lib/tftpboot

rm -fr netboot

Miramos este archivo cat /var/lib/tftpboot/pxelinux.cfg/default y si vemos esto es que vamos bien:

# D-I config version 1.0

include debian-installer/i386/boot-screens/menu.cfg

default debian-installer/i386/boot-screens/vesamenu.c32

prompt 0

timeout 0

Seguimos poniendo mas distros para poder escoger y tener(Esto es para debian Lenny 64 bits):

mv /var/lib/tftpboot/debian-installer /var/lib/tftpboot/lenny

mkdir /var/lib/tftpboot/debian

mv /var/lib/tftpboot/lenny /var/lib/tftpboot/debian/

mkdir /var/lib/tftpboot/debian/lenny/x86_64

cd /tmp

lftp -c «open http://ftp.de.debian.org/debian/dists/lenny/main/installer-amd64/current/images/; mirror netboot/»

cd /tmp/netboot/debian-installer/

mv amd64/* /var/lib/tftpboot/debian/lenny/x86_64

cd /tmp/

rm -fr netboot/  –>para borrar directorios

Miramos el archivo cat /var/lib/tftpboot/debian/lenny/i386/boot-screens/adtxt.cfg para ver si aparece esto

label expert

menu label ^Expert install

kernel debian-installer/i386/linux

append priority=low vga=normal initrd=debian-installer/i386/initrd.gz —

label rescue

menu label ^Rescue mode

kernel debian-installer/i386/linux

append vga=normal initrd=debian-installer/i386/initrd.gz rescue/enable=true — quiet

label auto

menu label ^Automated install

kernel debian-installer/i386/linux

append auto=true priority=critical vga=normal initrd=debian-installer/i386/initrd.gz — quiet

Miramos otro archivo para ver su configuracion:

cat /var/lib/tftpboot/debian/lenny/i386/boot-screens/txt.cfg

default install

label install

menu label ^Install

menu default

kernel debian-installer/i386/linux

append vga=normal initrd=debian-installer/i386/initrd.gz — quiet

Por ultimo miramos el archivo /var/lib/tftpboot/pxelinux.cfg/default y al final debe haber esto

prompt 1

timeout 0

Si el prompt no está a 1 ponlo.

Y ya está espero que lo disfruteis, si quereis poner mas distros como Ubuntu poned un comentario y lo pondré ok?


 
Etiquetado , , ,

Un pensamiento en “Configurar PXE linux

  1. Jose Luis Montenegro dice:

    Estimado amigo

    Muchas gracias por tu manual, voy ha tratar de instalarlo, la verdad tengo una empresa de servicio tecnico y siempre instalo diferentes sistemas operativos, quisiera que me ayudaras para poder instalar windows xp, vsta, windows 7

    Gracias de antemano.

    Jose Luis Montenegro

Deja un comentario