30.2. Configuration de démarrage PXE

L'étape suivante consiste à copier sur le serveur tftp les fichiers nécessaires au démarrage de l'installation de sorte que le client puisse les trouver lorsqu'il en a besoin. Le serveur tftp est généralement le même serveur que le serveur réseau exportant l'arborescence d'installation.
Les configurations BIOS et EFI diffèrent pour cette procédure.

30.2.1. Configuration pour BIOS

  1. Si tftp-server n'est pas encore installé, exécutez yum install tftp-server.
  2. Dans le fichier de configuration tftp-server à /etc/xinet.d/tftp, modifiez le paramètre disabled (désactivé) de yes (oui) à no (non).
  3. Configurez votre serveur DHCP pour utiliser les images de démarrage empaquetées avec SYSLINUX. (Si vous ne possédez pas de serveur DHCP installé, reportez-vous au chapitre Serveurs DHCP dans le Guide de déploiement Red Hat Enterprise Linux.)
    Un exemple de configuration dans /etc/dhcp/dhcpd.conf pourrait ressembler à ceci :
      option space pxelinux;
      option pxelinux.magic code 208 = string;
      option pxelinux.configfile code 209 = text;
      option pxelinux.pathprefix code 210 = text;
      option pxelinux.reboottime code 211 = unsigned integer 32;
    
      subnet 10.0.0.0 netmask 255.255.255.0 {
              option routers 10.0.0.254;
              range 10.0.0.2 10.0.0.253;
    
              class "pxeclients" {
                      match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
                      next-server 10.0.0.1;
                     
                      if option arch = 00:06 {
                              filename "pxelinux/bootia32.efi";
                      } else if option arch = 00:07 {
                              filename "pxelinux/bootx64.efi";
                      } else {
                              filename "pxelinux/pxelinux.0";
                      }
              }
    
              host example-ia32 {
                      hardware ethernet XX:YY:ZZ:11:22:33;
                      fixed-address 10.0.0.2;
              }
      }
    
  4. Vous aurez maintenant besoin du fichier pxelinux.0 du paquetage SYSLINUX dans le fichier image ISO. Pour y accéder, exécutez les commandes suivantes en tant qu'utilisateur root :
    mount -t iso9660 /path_to_image/name_of_image.iso /mount_point -o loop,ro
    cp -pr /mount_point/Packages/syslinux-version-architecture.rpm /publicly_available_directory
    umount /mount_point
    Extraire le paquetage :
    rpm2cpio syslinux-version-architecture.rpm | cpio -dimv
  5. Créez un répertoire pxelinux dans tftpboot et copiez pxelinux.0 dedans :
    mkdir /var/lib/tftpboot/pxelinux
    cp publicly_available_directory/usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/pxelinux
  6. Créez un répertoire pxelinux.cfg dans pxelinux :
    mkdir /var/lib/tftpboot/pxelinux/pxelinux.cfg
  7. Ajoutez un fichier de configuration à ce répertoire. Ce fichier doit être nommé default (défaut) ou selon l'adresse IP. Par exemple, si l'adresse IP de votre machine est 10.0.0.1, alors le nom du fichier serait 0A000001.
    Un exemple de fichier de configuration sur /var/lib/tftpboot/pxelinux/pxelinux.cfg/default ressemblerait à ceci :
    default vesamenu.c32
    prompt 1
    timeout 600
    
    display boot.msg
    
    label linux
      menu label ^Install or upgrade an existing system
      menu default
      kernel vmlinuz
      append initrd=initrd.img
    label vesa
      menu label Install system with ^basic video driver
      kernel vmlinuz
      append initrd=initrd.img xdriver=vesa nomodeset
    label rescue
      menu label ^Rescue installed system
      kernel vmlinuz
      append initrd=initrd.img rescue
    label local
      menu label Boot from ^local drive
      localboot 0xffff
    label memtest86
      menu label ^Memory test
      kernel memtest
      append -
    
    Pour voir des instructions sur la manière de spécifier la source d'installation, reportez-vous à la Section 7.1.3, « Options de démarrage supplémentaires »
  8. Copiez l'image splash dans votre répertoire racine tftp :
    cp /boot/grub/splash.xpm.gz /var/lib/tftpboot/pxelinux/splash.xpm.gz
  9. Copiez les images de démarrage dans votre répertoire racine tftp :
     cp /path/to/x86_64/os/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/pxelinux/rawhide-x86_64/
  10. Redémarrez le système, puis sélectionnez le périphérique réseau comme périphérique de démarrage lorsqu'il vous le sera demandé.