Documentation for a newer release is available. View Latest

Configurar un Servidor de Instalación

Este apéndice está dirigido a los usuarios con experiencia previa en Linux. Si es un usuario nuevo debería instalar usando un medio de arranque mínimo o el DVD de la distribución en su lugar.

Visión General de la Instalación PXE

Preboot Execution Environment, o PXE, es una tecnología que permite a los ordenadores arrancar directamente desde recursos proporcionados por una red. Instalar Fedora sobre la red significa que no tiene que crear un medio y puede instalar múltiples equipos o máquinas virtuales (MV) simultáneamente. El proceso involucra a diversos componente y capacidades funcionando a la vez para proporcionar los recursos requeridos.

Equipo capaz en PXE

La mayoría de equipos modernos tienen la capacidad a arrancar en red. Típicamente, una tecla de función pulsada durante el arranque aparecerá un menú de selección de arranque. En los entornos diseñaron para administración no atendida, los sistemas a menudo están configurados para el primer intento que arranque desde la red, entonces arranca desde el almacenamiento local, y el servidor de instalación está configurado para sólo ofrecer la instalación cuándo requiera. Su manual del equipo proporcionará instrucciones concretas acerca de la configuración del arranque.

Servidor DHCP

Cuando un sistema solicita una dirección durante un arranque en red, el servidor DHCP proporciona también la localización de los archivos de arranque. Una red solo un servidor DHCP.

Servidor TFTP

Como el entorno previo al arranque es muy sencillo, los archivos se deben proporcionar de un modo muy sencillo. Trivial File Transfer Protocol, o TFTP, proporciona al sistema el cargador de arranque necesario para continuar el proceso de instalación.

Cargador de arranque

Como la tarea de arranque de un sistema operativo es demasiado compleja para el entorno previo al arranque, se utiliza un cargador de arranque para cargar el kernel y los archivos relacionados. También proporciona información de configuración al instalador y puede ofrecer un menú para la selección de distintas configuraciones.

Kernel e Initramfs

El kernel es el núcleo de cualquier sistema operativo Linux e initramfs proporciona al kernel las herramientas y recursos que necesita. Estos archivos son proporcionados también por tftp.

Repositorios de paquetes

Debe haber disponible un repositorio de Fedora para la instalación. El ejemplo en esta sección usa los espejos públicos de Fedora como repositorio fuente, pero usted puede usar un repositorio en la red local proporcionado por NFS, FTP o HTTP. Los repositorios se pueden configurar usando la opción de arranque [option]#inst.repo=#n; consulte detalles en Specifying the Installation Source.

Configuración del Servidor DHCP

Instalar y configurar dhcpd
  1. Instalar el paquete servidor dhcp.

    # dnf install dhcp
  2. Cree una configuración sencilla para el dhcp servidor en /etc/dhcp/dhcpd.conf

    subnet 192.168.1.0 netmask 255.255.255.0 {
    authoritative;
    default-lease-time 600;
    max-lease-time 7200;
    ddns-update-style none;
    
    option domain-name-servers 192.168.1.1;
    option routers 192.168.1.1;
    
    }
  3. Pruebe su configuración y dirija cualesquier problema que descubra.

    systemctl start dhcpd
    journalctl --unit dhcpd --since -2m --follow
  4. Añade apuntes para señalar clientes a su bootloader y el servidor que lo proporciona a vuestra configuración subred en /etc/dhcp/dhcpd.conf. Porque DHCP los clientes proporcionan el servidor con identificar información junto con su petición de dirección, BIOS clientes y UEFI los clientes pueden cada cual ser dirigido al cargador bootloader correcto.

    # Refiere a RFC4758 para valores de opción de arco posibles
    option arch code 93 = unsigned integer 16;
    
    subnet 192.168.1.0 netmask 255.255.255.0 {
    if option arch = 00:07 {
    filename "uefi/shim.efi";
    } else {
    filename "pxelinux.0";
    }
    
    next-server 192.168.1.2;
    
    …
  5. Reiniciar el servicio dhcp para comprobar la configuración y realizar los cambios necesarios.

    systemctl restart dhcpd
    journalctl --unit dhcpd --since -2m --follow

Instalar el servidor tftp

Instalar el servidor tftp
  1. Instala el paquete servidor tftp.

    # dnf install tftp-server
  2. Iniciar y habilitar el tftp socket. systemd automáticamente iniciará el servicio tftpd cuando sea requerido.

    # systemctl start tftp.socket
    # systemctl enable tftp.socket

Proporciona y configura cargadores de arranque para clientes PXE

Obtenga los archivos del cargador de arranque
  1. Obtenga el cargador de arranque syslinux bootloader para clientes BIOS.

    1. Instale el paquete syslinux.

      # dnf install syslinux
    2. Cree un directorio para el archivo bootloader, y hágalos disponibles allí.

      # mkdir -p /var/lib/tftpboot/pxelinux.cfg
      # cp /usr/share/syslinux/{pxelinux.0,vesamenu.c32,ldlinux.c32,libcom32.c32,libutil.c32} /var/lib/tftpboot/
  2. Obtenga los archivos bootloader para los sistemas UEFI

    1. Instale el shim y los paquetes grub2-efi. Si su servidor es un sistema BIOS, debe instalar los paquetes a una raíz de instalación temporal. Instálelos directamente en una máquina BIOS intentará configurar el sistema para arrancar UEFI y causará problemas.

      # dnf install shim grub2-efi --installroot=/tmp/fedora --releasever 27
    2. Cree un directorio para el archivo bootloader, y hágalos disponibles allí.

      # mkdir -p /var/lib/tftpboot/uefi
      # cp /tmp/fedora/boot/efi/EFI/fedora/{shim.efi,grubx64.efi} /var/lib/tftpboot/uefi/
Configurar cargadores de arranque cliente
  1. Cree un menú de arranque para clientes BIOS en /var/lib/tftpboot/pxelinux.cfg/default.

    default vesamenu.c32
    prompt 1
    timeout 600
    
    label linux
    menu label ^Instalar Fedora 27 64-bit
    menu default
    kernel f27/vmlinuz
    append initrd=f27/initrd.img inst.stage2=http://download.fedoraproject.org/pub/fedora/linux/releases/27/Server/x86_64/os/ ip=dhcp
    
    label server
    menu label ^Instalar Fedora 27 ( Imagen Mínima )
    menu default
    kernel f27/vmlinuz
    append initrd=f27/initrd.img inst.stage2=http://download.fedoraproject.org/pub/fedora/linux/releases/27/Server/x86_64/os/ ip=dhcp ks=https://example.com/fedora/kickstarts/minimal.ks
    
    label rescue
    menu label ^Sistema de rescate instalado
    kernel f27/vmlinuz
    append initrd=f27initrd.img ip=dhcp root=live:http://download.fedoraproject.org/pub/fedora/linux/releases/27/Server/x86_64/os/LiveOS/squashfs.img rescue
    
    label local
    menu label Arrancar desde unidad ^local
    localboot 0xffff
  2. Crea un menú de arranque para clientes UEFI en /var/lib/tftpboot/pxelinux/uefi.

    function load_video {
    	insmod efi_gop
    	insmod efi_uga
    	insmod video_bochs
    	insmod video_cirrus
    	insmod all_video
    }
    
    load_video
    set gfxpayload=keep
    insmod gzio
    
    menuentry 'Install Fedora 64-bit'  --class fedora --class gnu-linux --class gnu --class os {
    	linuxefi f27/vmlinuz ip=dhcp inst.repo=http://download.fedoraproject.org/pub/fedora/linux/releases/27/Server/x86_64/os/
    	initrdefi f27/initrd.img
    }
    
    menuentry 'Instalar Fedora 27 Server'  --class fedora --class gnu-linux --class gnu --class os {
    	kernel f27/vmlinuz
    	append initrd=f27/initrd.img inst.repo=http://download.fedoraproject.org/pub/fedora/linux/releases/27/Server/x86_64/os/ ip=dhcp ks=https://git.fedorahosted.org/cgit/spin-kickstarts.git/plain/fedora-install-server.ks?h=f21
    }
    
    menuentry 'Sistema de Rescate instalado'  --class fedora --class gnu-linux --class gnu --class os {
    	kernel f27/vmlinuz
    	append f27/initrd=initrd.img root=live:http://download.fedoraproject.org/pub/fedora/linux/releases/27/Server/x86_64/os/LiveOS/squashfs.img rescue
    }

Obtener el kernel y el initrd

Descargar el kernel y el initrd
  1. Cree un directorio para los archivos.

    # mkdir -p /var/lib/tftpboot/f27
  2. Descargar el kernel.

    # wget http://download.fedoraproject.org/pub/fedora/linux/releases/27/Server/x86_64/os/images/pxeboot/vmlinuz -O /var/lib/tftpboot/f27/vmlinuz
  3. Descargar el initrd

    # wget http://download.fedoraproject.org/pub/fedora/linux/releases/27/Server/x86_64/os/images/pxeboot/initrd.img -O /var/lib/tftpboot/f27/initrd.img

Proporcionar repositorios

Los ejemplos en esta sección utilizan los espejos de Fedora del público como la fuente del paquete. Para instalaciones más rápidas, instalando a muchos sistemas, o entornos más aislados, puede desear mantener un repositorio local.

Fedora Infraestructure mantiene instrucciones para una configuración para espejo local en https://fedoraproject.org/wiki/Infrastructure/Mirroring. El método preferido para proporcionar repositorios es por medio de HTTP, y puede referir a la Fedora System Administrator’s Guide, disponible en http://docs.fedoraproject.org/, para configurar httpd.

Instalaciones de red avanzadas con Cobbler

Para entornos más complejos, el producto Fedora ofrece el cobbler servidor de instalación. Tareas como gestores de configuración kickstart, coordinando repositorios, manteniendo registros de dns, servidores dhcp, e incluso el títere manifiesta es eficazmente automatizado por cobbler.

Mientras apalanca todas las características proporcionadas por cobbler puede ser relativamente sencillo, la funcionalidad completa de esta herramienta potente es demasiado ancha de ser documentado en esta guía. La comunidad cobbler proporciona documentación en https://cobbler.github.io/ para acompañar los paquetes en el repositorio Fedora.

Alternativamente, también puede ser interesante en Foreman. Puedes encontrar documentación oficial así como descargas en el sitio web de proyecto en https://www.theforeman.org/.