Ir al contenidoIr a la navegación de la página: página anterior [tecla de acceso p]/página siguiente [tecla de acceso n]
documentation.suse.com / Documentación de SUSE Linux Enterprise Server / Guía de distribución / Configuración de un servidor de instalación / Preparación del arranque del sistema de destino
Se aplica a SUSE Linux Enterprise Server 12 SP5

9 Preparación del arranque del sistema de destino

SUSE® Linux Enterprise Server se puede instalar de varias formas. Además de la instalación habitual a partir de un medio, descrita en el Capítulo 6, Instalación mediante YaST, es posible seleccionar diversos métodos basados en red, o incluso utilizar un método sin intervención física alguna para instalar SUSE Linux Enterprise Server.

En los ejemplos se usa NFS para proporcionar los datos de instalación. Si desea utilizar FTP, SMB o HTTP, consulte el Capítulo 8, Configuración del servidor que almacena los orígenes de la instalación.

Nota
Nota: terminología

En las próximas secciones, el sistema que almacenará la nueva instalación de SUSE Linux Enterprise Server se denomina sistema de destino o destino de la instalación. El término repositorio (anteriormente denominado origen de instalación se utiliza para todos los orígenes de datos de instalación. Esto incluye medios físicos, tales como CD y DVD, y los servidores de red que distribuyan los datos de instalación en la red.

En esta sección se describen las tareas de configuración necesarias en entornos de arranque complejos. Contiene ejemplos de configuración listos para usar para DHCP, arranque en PXE, TFTP y Wake on LAN.

Los ejemplos presuponen que los servidores DHCP, TFTP y NFS se encuentran en el mismo equipo con la dirección IP 192.168.1.1. Todos los servicios pueden residir en distintos equipos. Asegúrese de cambiar las direcciones IP según sea necesario.

9.1 Configuración de un servidor DHCP

Además de ofrecer asignación de direcciones automática a los clientes de la red, el servidor DHCP anuncia la dirección IP del servidor TFTP y el archivo que las rutinas de instalación del equipo de destino deben obtener. El archivo que se debe cargar depende de la arquitectura del equipo de destino y de si se utiliza un arranque BIOS tradicional o UEFI.

  1. Inicie sesión como usuario root en la máquina que aloje el servidor DHCP.

  2. Para habilitar el servidor DHCP, ejecute el comando systemctl enable dhcpd.

  3. Añada las siguientes líneas a una configuración de subred del archivo de configuración del servidor DHCP que se encuentra en /etc/dhcp.conf:

    # The following lines are optional
    option domain-name "my.lab";
    option domain-name-servers 192.168.1.1;
    option routers 192.168.1.1;
    option ntp-servers 192.168.1.1;
    ddns-update-style none;
    default-lease-time 3600;
    
    # The following lines are required
    option arch code 93 = unsigned integer 16; # RFC4578
    subnet 192.168.1.0 netmask 255.255.255.0 {
     next-server 192.168.1.1;
     range 192.168.1.100 192.168.1.199;
     default-lease-time 3600;
     max-lease-time 3600;
     if option arch = 00:07 or option arch = 00:09 {
       filename "/EFI/x86/grub.efi";
     }
     else if option arch = 00:0b {
       filename "/EFI/aarch64/bootaa64.efi";
     }
     else  {
       filename "/BIOS/x86/pxelinux.0";
     }
    }

    En este ejemplo de configuración se utiliza la subred 192.168.1.0/24 con los servicios DHCP, DNS y gateway en el servidor con la dirección IP 192.168.1.1. Recuerde modificar todas las direcciones IP utilizadas según la estructura de la red. Para obtener más información acerca las opciones disponibles en dhcpd.conf, consulte la página de Man de dhcpd.conf.

  4. Para reiniciar el servidor DHCP, ejecute el comando systemctl restart dhcpd.

Si tiene previsto utilizar SSH para controlar remotamente una instalación PXE y Wake on LAN, especifique la dirección IP que DHCP debe suministrar al destino de la instalación. Para ello, modifique la configuración DHCP antes mencionada de acuerdo con el siguiente ejemplo:

group {
 host test {
   hardware ethernet MAC_ADDRESS;
   fixed-address IP_ADDRESS;
   }
}

La declaración del host incluye el nombre del host del destino de la instalación. Para vincular el nombre de host y la dirección IP con un host determinado, es necesario conocer y especificar la dirección de hardware del sistema (MAC). Sustituya todas las variables utilizadas en este ejemplo por los valores reales correspondientes a su entorno.

Una vez reiniciado el servidor DHCP, ofrecerá una dirección IP estática al host especificado, lo que permitirá conectarse al sistema mediante SSH.

9.2 Configuración de un servidor TFTP

Si usa una instalación basada en SUSE, puede usar YaST para configurar un servidor TFTP. También puede configurarlo manualmente. El servidor TFTP proporciona la imagen de arranque al sistema de destino después de que este arranque y envía una solicitud para ello.

9.2.1 Configuración de un servidor TFTP mediante YaST

  1. Entre a la sesión como usuario root.

  2. Inicie YaST › Servicios de red › Servidor TFTP e instale el paquete necesario.

  3. Haga clic en Habilitar para asegurarse de que el servidor se inicie y se incluya en las rutinas de arranque. No es necesaria ninguna otra acción por su parte. xinetd inicia tftpd durante el arranque.

  4. Haga clic en Puerto abierto en el cortafuegos para abrir el puerto correspondiente en el cortafuegos que se esté ejecutando en la máquina. Si no hay ningún cortafuegos en ejecución en el servidor, está opción no estará disponible.

  5. Haga clic en Examinar para explorar el directorio de la imagen de arranque. Se creará y se seleccionará automáticamente el directorio por defecto /srv/tftpboot.

  6. Haga clic en Finalizar para aplicar la configuración e iniciar el servidor.

9.2.2 Configuración manual de un servidor TFTP

  1. Inicie sesión como usuario root e instale los paquetes tftp y xinetd.

  2. Modifique la configuración de xinetd, que se encuentra en /etc/xinetd.d/, para asegurarse de que el servidor TFTP se inicie durante el arranque:

    1. Si no existe, cree un archivo de nombre tftp en este directorio mediante touch tftp. A continuación, ejecute chmod 755 tftp.

    2. Abra el archivo tftp y añada las siguientes líneas:

      service tftp
      {
              socket_type            = dgram
              protocol               = udp
              wait                   = yes
              user                   = root
              server                 = /usr/sbin/in.tftpd
              server_args            = -s /srv/tftpboot
              disable                = no
      }
    3. Guarde el archivo y reinicie xinetd con systemctl restart xinetd.

9.3 Instalación de archivos en el servidor TFTP

Los procedimientos siguientes describen cómo preparar el servidor para equipos de destino con UEFI y BIOS en arquitecturas x86 de 32 y 64 bits. La estructura preparada también proporciona una ubicación para los sistemas AArch64.

9.3.1 Preparación de la estructura

En este procedimiento, sustituya OS_VERSION y SP_VERSION con el sistema operativo y la versión del paquete de servicios que utilice. Por ejemplo, use sles12 y sp5.

  1. Cree una estructura en /srv/tftpboot para admitir las distintas opciones.

    root # mkdir -p /srv/tftpboot/BIOS/x86
    root # mkdir -p /srv/tftpboot/EFI/x86/boot
    root # mkdir -p /srv/tftpboot/EFI/aarch64/boot
    root # mkdir -p /srv/install/x86/OS_VERSION/SP_VERSION/cd1
    root # mkdir -p /srv/install/aarch64/OS_VERSION/SP_VERSION/cd1
  2. Descargue las imágenes ISO de DVD de SUSE Linux Enterprise Server 12 SP5 del sitio Web de SUSE para todas las arquitecturas que necesite.

  3. Monte los archivos ISO como se describe en la Sección 8.6, “Uso de imágenes ISO de los medios de instalación en el servidor”. Para que los archivos estén disponibles después del reinicio, cree una entrada en /etc/fstab. Para una instalación estándar, solo se necesita el DVD 1.

    root # mount -o loop PATH_TO_ISO /srv/install/ARCH/OS_VERSION/SP_VERSION/cd1/

    Repita este paso para todas las arquitecturas necesarias y sustituya ARCH con x86 o aarch64 y PATH_TO_ISO con la vía del archivo ISO correspondiente.

  4. Copie los archivos de núcleo, initrd y mensajes necesarios para el arranque BIOS y UEFI x86 en la ubicación adecuada.

    root # cd /srv/install/x86/OS_version/SP_version/cd1/boot/x86_64/loader/
    root # cp -a linux initrd message /srv/tftpboot/BIOS/x86/
  5. Asegúrese de que la vía /srv/install está disponible a través de NFS. Para obtener información, consulte la Sección 8.2, “Configuración manual de un repositorio NFS”.

9.3.2 Archivos de BIOS para x86

  1. Copie pxelinux.0 en la carpeta TFTP y prepare una subcarpeta para el archivo de configuración.

    root # cp /usr/share/syslinux/pxelinux.0 /srv/tftpboot/BIOS/x86/
    root # mkdir /srv/tftpboot/BIOS/x86/pxelinux.cfg
  2. Cree /srv/tftpboot/BIOS/x86/pxelinux.cfg/default y añada las líneas siguientes:

    default install
    
    # hard disk
    label harddisk
     localboot -2
    # install
    label install
     kernel linux
     append initrd=initrd install=nfs://192.168.1.1:/srv/install/x86/OS_version/SP_version/cd1
    
    display message
    implicit 0
    prompt 1
    timeout 5
  3. Edite el archivo /srv/tftpboot/BIOS/x86/message para reflejar el archivo default que acaba de modificar.

    Welcome to the Installer Environment!
    
    To start the installation enter 'install' and press <return>.
    
    Available boot options:
     harddisk   - Boot from Hard Disk (this is default)
     install    - Installation

9.3.3 Archivos de UEFI para x86

En este procedimiento, sustituya OS_version y SP_version con el sistema operativo y la versión del paquete de servicios que utilice. Por ejemplo, use sles12 y sp5.

  1. Copie todos los archivos grub2 necesarios para el arranque UEFI.

    root # cd /srv/install/x86/OS_version/SP_version/cd1/EFI/BOOT
    root # cp -a bootx64.efi grub.efi MokManager.efi /srv/tftpboot/EFI/x86/
  2. Copie el núcleo y los archivos initrd en la estructura de directorios.

    root # cd /srv/install/x86/OS_version/SP_version/cd1/boot/x86_64/loader/
    root # cp -a linux initrd /srv/tftpboot/EFI/x86/boot
  3. Cree el archivo /srv/tftpboot/EFI/x86/grub.cfg con al menos el contenido siguiente:

    set timeout=5
    menuentry 'Install OS_version SP_version for x86_64' {
      linuxefi /EFI/x86/boot/linux \
       install=nfs://192.168.1.1/srv/install/x86/OS_version/SP_version/cd1
      initrdefi /EFI/x86/boot/initrd
    }

9.3.4 Archivos de UEFI para AArch64

En este procedimiento, sustituya OS_version y SP_version con el sistema operativo y la versión del paquete de servicios que utilice. Por ejemplo, use sles12 y sp5.

  1. Esto se hace de forma muy similar a la del entorno EFI x86_64. Para empezar, copie los archivos necesarios para el arranque UEFI de un entorno grub2-efi.

    root # cd /srv/install/aarch64/OS_version/SP_version/cd1/EFI/BOOT
    root # cp -a bootaa64.efi /srv/tftpboot/EFI/aarch64/
  2. Copie el núcleo y los archivos initrd en la estructura de directorios.

    root # cd /srv/install/aarch64/OS_version/SP_version/cd1/boot/aarch64
    root # cp -a linux initrd /srv/tftpboot/EFI/aarch64/boot
  3. Cree ahora el archivo /srv/tftpboot/EFI/grub.cfg y añada el contenido siguiente:

    menuentry 'Install OS_version SP_version' {
      linux /EFI/aarch64/boot/linux network=1 usessh=1 sshpassword="suse" \
       install=nfs://192.168.1.1:/srv/install/aarch64/OS_version/SP_version/cd1 \
       console=ttyAMA0,115200n8
      initrd /EFI/aarch64/boot/initrd
    }

    Esta adición al archivo de configuración tiene algunas opciones para habilitar la consola serie y permitir la instalación a través de SSH, lo que resulta útil para sistemas que no tienen una interfaz de consola KVM estándar. Observará que se trata de una configuración para una plataforma de ARM concreta.

9.4 Opciones de configuración de PXELINUX

A continuación aparecen algunas de las opciones disponibles para el archivo de configuración de PXELINUX.

APPEND OPCIONES

Añada una o más opciones a la línea de comandos del núcleo. Éstas se añaden para arranques automáticos y manuales. Las opciones se añaden al principio de la línea de comandos del núcleo, y normalmente admiten que las opciones del núcleo introducidas explícitamente las sobrescriban.

APPEND -

Sin nada añadido. Se puede utilizar APPEND con un solo guion como argumento en una sección LABEL para anular un valor de APPEND global.

DEFAULT OPCIONES_NÚCLEO...

Establece la línea de comandos del núcleo por defecto. Si PXELINUX arranca de manera automática, actúa como si las entradas posteriores a DEFAULT se hubieran escrito en el indicador de inicio, excepto la opción auto que se añade de manera automática, lo que indica un arranque automático.

Si no hay ningún archivo de configuración o ninguna entrada DEFAULT definida en el archivo de configuración, el valor por defecto es el nombre del núcleo linux, sin opciones.

IFAPPEND FLAG

Añade una opción específica a la línea de comando del núcleo dependiendo del valor de FLAG. La opción IFAPPEND solo está disponible en PXELINUX. FLAG espera un valor, descrito en Tabla 9.1, “Opciones de líneas de comandos del núcleo generadas y añadidas desde IFAPPEND:

Tabla 9.1: Opciones de líneas de comandos del núcleo generadas y añadidas desde IFAPPEND

Argumento

Línea de comando del núcleo generada/Descripción

1

ip=CLIENT_IP:BOOT_SERVER_IP:GW_IP:NETMASK

Los espacios reservados se reemplazan según la entrada del servidor de arranque DHCP/BOOTP o PXE.

Tenga en cuenta que esta opción no sustituye a la ejecución de un cliente DHCP en el sistema arrancado. Sin renovaciones regulares, la asignación adquirida por el BIOS PXE caducará, con lo que la dirección IP vuelve a estar disponible para que la reutilice el servidor DHCP.

2

BOOTIF=MAC_ADDRESS_OF_BOOT_INTERFACE

Esta opción resulta útil si quiere evitar interrupciones cuando el servidor de instalación sondea una interfaz LAN tras otra hasta que recibe respuesta de un servidor DHCP. Esta opción permite que un programa initrd determine desde qué interfaz se ha arrancado el sistema. linuxrc lee esta opción y utiliza la interfaz de red.

4

SYSUUID=SYSTEM_UUID

Añade UUID en formato hexadecimal en minúscula, ver /usr/share/doc/packages/syslinux/pxelinux.txt

LABEL ETIQUETA KERNEL IMAGEN APPEND OPCIONES...

Indica que si se introduce LABEL como el núcleo que se debe arrancar, PXELINUX debe arrancar IMAGE en su lugar y utilizar las opciones APPEND especificadas en lugar de las indicadas en el apartado global del archivo (antes del primer comando LABEL). El valor por defecto de IMAGEN es el mismo que LABEL y, si no se introduce ningún APPEND, el valor por defecto consiste en utilizar la entrada global (si hubiera alguna). Se permiten hasta 128 entradas LABEL.

PXELINUX utiliza la siguiente sintaxis:

label MYLABEL
  kernel MYKERNEL
  append MYOPTIONS

Las etiquetas se truncan como si fueran nombres de archivo, y deben ser únicas después del truncamiento. Por ejemplo, dos etiquetas como v2.6.30 y v2.6.31 no podrán distinguirse en PXELINUX, ya que ambas se truncan con el mismo nombre de archivo de DOS.

No es necesario que el núcleo sea de Linux. También puede tratarse de un sector de arranque o de un archivo COMBOOT.

LOCALBOOT TIPO

En PXELINUX, especificar LOCALBOOT 0 en lugar de una opción de KERNEL significa la invocación de esa etiqueta en particular y provoca un arranque del disco local en lugar de un arranque del núcleo.

Argumento

Descripción

0

Realiza un arranque normal

4

Realiza un arranque local con el controlador Universal Network Driver Interface (UNDI) aún residente en memoria

5

Realiza un arranque local con el stack de PXE completo, incluido el controlador UNDI, aún residente en memoria

Los demás valores no están definidos. Si desconoce los stacks UNDI o PXE, especifique 0.

TIMEOUT TIEMPO LÍMITE

Indica cuánto tiempo deberá esperar en el indicador de inicio antes de arrancar automáticamente, en décimas de segundo. El tiempo límite queda cancelado cuando el usuario pulsa alguna tecla, en cuyo caso se asume que será este quien complete el comando iniciado. Un tiempo límite de cero inhabilita la opción de tiempo límite (es el ajuste por defecto). El máximo valor posible para el valor del tiempo límite es de 35996 (algo menos de una hora).

PROMPT valor_de_indicador

Si flag_val es 0, muestra el indicador de inicio solo si se pulsan las teclas Mayús o Alt, o si están activados, Bloq Mayús o Bloq Despl (es la opción por defecto). Si valor_de_indicador es 1, siempre se muestra el indicador de inicio.

F2  FILENAME
F1  FILENAME
..etc...
F9  FILENAME
F10 FILENAME

Muestra en la pantalla el archivo indicado cuando se pulsa una tecla de función en el indicador de inicio. También se puede utilizar para implementar una ayuda en línea para antes del arranque (normalmente para las opciones de la línea de comandos del núcleo). Por compatibilidad con versiones anteriores, F10 también puede introducirse como F0. Tenga en cuenta que no es posible asociar nombres de archivos a F11 ni F12.

9.5 Preparación del sistema de destino para arranque en PXE

Prepare el BIOS del sistema para arranque en PXE incluyendo la opción de PXE en el orden de arranque del BIOS.

Aviso
Aviso: orden de arranque del BIOS

No coloque la opción de PXE por encima de la opción de arranque desde disco duro en el BIOS. De lo contrario, el sistema intentará reinstalarse cada vez que lo arranque.

9.6 Preparación del sistema de destino para Wake on LAN

Wake on LAN (WOL) necesita que se habilite la opción correspondiente del BIOS antes de la instalación. Además, es necesario tomar nota de la dirección MAC del sistema de destino. Este dato es necesario para iniciar Wake on LAN.

9.7 Wake on LAN

Wake on LAN permite encender una máquina mediante el envío de un paquete de red especial que contiene la dirección MAC de la máquina. Dado que los identificadores MAC deben ser únicos para cada máquina, no hay que preocuparse si se conecta accidentalmente una máquina equivocada.

Importante
Importante: Wake on LAN en distintos segmentos de red

Si la máquina de control no se encuentra en el mismo segmento de red que el destino de la instalación que debe encenderse, configure las peticiones WOL para que se envíen como multidifusión o bien controle remotamente una máquina de dicho segmento de red para que actúe como remitente de las peticiones.

Los usuarios de SUSE Linux Enterprise Server pueden usar un módulo YaST llamado WOL para configurar Wake on LAN fácilmente. Los usuarios de otras versiones de sistemas operativos basados en SUSE Linux pueden usar una herramienta de línea de comandos.

9.8 Wake on LAN con YaST

  1. Entre a la sesión como usuario root.

  2. Inicie YaST › Servicios de red › WOL.

  3. Haga clic en Añadir y escriba el nombre de host y la dirección MAC del sistema de destino.

  4. Para encender este equipo, seleccione la entrada adecuada y haga clic en Wake up.

9.9 Arranque desde una unidad de CD o USB en lugar de PXE

También es posible utilizar una unidad de CD, DVD o USB con una imagen pequeña del sistema en lugar de arrancar mediante PXE. Tan pronto como se carguen el núcleo e initrd, los archivos necesarios se recuperarán a través de NFS. Se puede crear una imagen que se puede arrancar con mksusecd. Esto puede resultar útil si el equipo de destino no admite el arranque PXE.

Para instalarlo, use sudo zypper in mksusecd. Utilice el comando siguiente para crear una imagen ISO que se pueda arrancar:

tux > mksusecd --create image.iso \
--net=nfs://192.168.1.1:/srv/install/ARCH/OS_VERSION/SP_VERSION/cd1  \
/srv/tftpboot/EFI/ARCH/boot

Sustituya ARCH con la carpeta correspondiente a la arquitectura del sistema de destino. Sustituya también OS_version y SP_version con las vías de la Sección 9.3, “Instalación de archivos en el servidor TFTP”.

En lugar de utilizar un servidor NFS para la opción --net, también es posible usar un repositorio HTTP; por ejemplo, el repositorio de openSUSE:

tux > mksusecd --create image.iso \
--net=http://download.opensuse.org/tumbleweed/repo/oss/suse \
/srv/tftpboot/EFI/ARCH/boot

La imagen image.iso se puede escribir en un CD o DVD o, mediante dd, en un dispositivo de memoria USB:

root # dd if=image.iso of=/dev/USB_DEVICE

Sustituya USB_DEVICE por el nombre del dispositivo de memoria USB. Compruebe atentamente el nombre del dispositivo para asegurarse de que no se destruye accidentalmente datos en otra unidad.