Diferencia entre revisiones de «Instalación de Fedora por PXE»
(→Servidor TFTP) |
(→Nota) |
||
Línea 62: | Línea 62: | ||
Para configurar correctamente el arranque hay que copiar el archivo /usr/lib/syslinux/pxelinux.0 al directorio /tftpboot/. Deberemos copiar también en el mismo directorio los archivos /boot/initrd.img y /boot/vmlinuz | Para configurar correctamente el arranque hay que copiar el archivo /usr/lib/syslinux/pxelinux.0 al directorio /tftpboot/. Deberemos copiar también en el mismo directorio los archivos /boot/initrd.img y /boot/vmlinuz | ||
− | == | + | == Anotación == |
− | Nota: Es posible crear una | + | ---------------------------- |
+ | Nota: Es posible crear una jerarquía con diversas arquitecturas y versiones de CentOS/Fedora por ejemplo con esta estructura: | ||
<pre> | <pre> | ||
/tftpboot/images/centos/i386/5.4 | /tftpboot/images/centos/i386/5.4 | ||
</pre> | </pre> | ||
Del DVD de la CentOS debemos copiar los ficheros initrd.img y vmlinuz de images/pxeboot/ | Del DVD de la CentOS debemos copiar los ficheros initrd.img y vmlinuz de images/pxeboot/ | ||
− | + | ---------------------------- | |
Hay que crear el directorio /tftpboot/pxelinux.cfg/ y crear los siguientes archivos usando ''touch'': | Hay que crear el directorio /tftpboot/pxelinux.cfg/ y crear los siguientes archivos usando ''touch'': |
Revisión del 19:22 8 ene 2010
Tipo | Manual (How To) |
Categoria | Linux |
Plataforma | Fedora Linux |
Dificultad | ![]() ![]() ![]() |
En esta página se explica cómo instalar Fedora usando PXE. Esto es útil cuando hay que instalar muchas máquinas iguales o parecidas. La idea es instalar primero una de las máquinas y coinfigurarla como servidor dhcp para que el resto de las máquinas carguen el kernel por tftp y el instalador y los paquetes por http.
Contenido
Preliminares
Después de instalar la primera máquina debemos copiar el contenido del DVD a nuestro disco duro y montarlo.
dd if=/dev/sr0 of=/root/fedora_dvd.iso mount -o ro,loop -t iso9660 /root/fedora_dvd.iso /mnt
Hay que instalar las herramientas necesarias.
yum install tftp-server syslinux dhcp httpd
Servidor DHCP
Para configurar el servidor dhcp es necesario crear o editar el archivo /etc/dhcpd.conf con algo como esto:
ddns-update-style ad-hoc; deny unknown-clients; not authoritative; allow bootp; allow booting; subnet 192.168.1.0 netmask 255.255.255.0 { option domain-name-servers 192.168.1.1; range dynamic-bootp 192.168.1.10 192.168.1.254; default-lease-time 36000; max-lease-time 72000; option routers 192.168.1.1; option broadcast-address 192.168.1.255; option subnet-mask 255.255.255.0; next-server 192.168.1.1; option root-path "/tftpboot/"; filename "pxelinux.0"; } host maq1 { hardware ethernet 00:0A:5E:54:19:A5; fixed-address 192.168.1.11; }
Resumiendo un poco, lo que dice este archivo es que cuando la máquina con MAC 00:0A:5E:54:19:A5 haga una petición de IP, se le asigne la IP 192.168.1.11 y se le envíe el archivo /tftpboot/pxelinux.0 como arranque. Se ha supuesto que el servidor tiene IP 192.168.1.1
Servidor TFTP
Para activar el servidor tftp hay que editar el archivo /etc/xinetd.d/tftp y cambiar disable = yes a disable = no.
Para configurar correctamente el arranque hay que copiar el archivo /usr/lib/syslinux/pxelinux.0 al directorio /tftpboot/. Deberemos copiar también en el mismo directorio los archivos /boot/initrd.img y /boot/vmlinuz
Anotación
Nota: Es posible crear una jerarquía con diversas arquitecturas y versiones de CentOS/Fedora por ejemplo con esta estructura:
/tftpboot/images/centos/i386/5.4
Del DVD de la CentOS debemos copiar los ficheros initrd.img y vmlinuz de images/pxeboot/
Hay que crear el directorio /tftpboot/pxelinux.cfg/ y crear los siguientes archivos usando touch:
C C0 C0A C0A8 C0A80 C0A800 C0A800F C0A800FE 00-0A-5E-54-19-A5
Nota: Siguiendo este manual para CentOS 5.4 no es necesario crear los ficheros anteriores.
Nótese que el último archivo corresponde a la MAC de la máquina a instalar. La verdadera configuración de PXE la escribimos en el archivo /tftpboot/pxelinux.cfg/default:
default linux label linux kernel vmlinuz append initrd=initrd.img ks=http://192.168.1.1/linux/ks.cfg
Esto indica al kernel PXE que se use el archivo de configuración ks.cfg para arrancar el kickstart.
Servidor HTTP
Los contenidos del DVD que hemos montado tienen que ser publicados por http, así como nuestro archivo de kickstart. Primero hacemos el directorio linux.
mkdir /var/www/html/linux cp /root/anaconda-ks.cfg /var/www/html/linux/ks.cfg
Y hacemos accesible el contenido del DVD:
ln -s /mnt/ /var/www/html/dvd
Si Apache está configurado para que siga los enlaces debería publicar bien los contenidos.
Reiniciar los servicios
Para que la configuración se cargue debemos reiniciar los servicios
/etc/init.d/dhcpd restart /etc/init.d/httpd restart /etc/init.d/xinetd restart
Kickstart
La configuración del archivo ks.cfg debe editarse para reflejar el tipo de instalación que deseamos hacer, en particular:
# Use text mode install text # Install OS instead of upgrade install # Use network installation url --url=http://192.168.1.1/dvd/ # Reboot after installation reboot
Además pueden añadirse muchas otras opciones. Existe una excelente página sobre kickstart en https://fedoraproject.org/wiki/Anaconda/Kickstart y una utilidad llamada system-config-kickstart que pueden usarse para estas modificaciones.
Instalando
Para instalar sólo tenemos que asegurarnos que la máquina esté conectada en red local con el servidor y escoger en la BIOS el arranque por PXE. si todo va bien la instalación se ejecutará automágicamente. Si hay problemas podemos revisar los ficheros /var/log/messages y /var/log/httpd para tratar de identificar y corregir los problemas.
Para instalar la siguiente máquina sólo hay que editar el archivo /etc/dhcpd.conf, reiniciar el servidor de dhcp y crear con touch un archivo en /tftpboot/ que se corresponda a la MAC nueva.