23.3. Configuration d'un système de fichiers exporté pour les clients sans disque

Le répertoire root du système de fichiers exporté (utilisé par des clients sans disque sur le réseau) est partagé via NFS. Configurez le service NFS pour exporter le répertoire root en l'ajoutant à /etc/exports. Pour obtenir des instructions sur la manière d'effectuer cela, veuillez consulter Section 8.7.1, « Fichier de configuration /etc/exports ».
Pour répondre à la totalité des besoins des clients sans disque, le répertoire root devrait contenir une installation Red Hat Enterprise Linux complète. Vous pouvez synchroniser ceci avec un système en cours d'exécution via rsync :
# rsync -a -e ssh --exclude='/proc/*' --exclude='/sys/*' hostname.com:/ /exported/root/directory
Remplacez hostname.com par le nom d'hôte du système d'exploitation du système en cours d'exécution avec lequel se synchroniser via rsync. /exported/root/directory est le chemin vers le système de fichiers exporté.
Alternativement, vous pouvez aussi utiliser yum avec l'option --installroot pour installer Red Hat Enterprise Linux sur un emplacement spécifique. Par exemple :
yum groupinstall Base --installroot=/exported/root/directory --releasever=/
Le système de fichiers devant être exporté doit être davantage configuré avant de pouvoir être utilisé par des clients sans disque. Pour ce faire, veuillez effectuer la procédure suivante :

Procédure 23.2. Configurer le système de fichiers

  1. Configurez le fichier /etc/fstab du système de fichiers afin qu'il contienne (au minimum) la configuration suivante :
    none		/tmp		tmpfs	defaults	0 0
    tmpfs		/dev/shm	tmpfs	defaults	0 0
    sysfs		/sys		sysfs	defaults	0 0
    proc		/proc		proc 	defaults	0 0
  2. Sélectionnez le noyau que les clients sans disque devront utiliser (vmlinuz-kernel-version) et copiez-le sur le répertoire root tftp :
    # cp /boot/vmlinuz-kernel-version /var/lib/tftpboot/
  3. Créez le fichier initrd (c'est-à-dire initramfs-kernel-version.img) avec le support réseau :
    # dracut initramfs-kernel-version.img kernel-version
  4. Les permissions de fichiers d'initrd doivent être modifiées à 600 ou bien, le chargeur boot pxelinux.0 échouera avec l'erreur "file not found". Effectuez ceci avec la commande suivante :
    # chmod go-r initramfs-kernel-version.img
  5. Copiez également le fichier initramfs-kernel-version.img résultant dans le répertoire de démarrage tftp.
  6. Modifiez la configuration de démarrage par défaut afin d'utiliser initrd et le noyau situé à l'intérieur de /var/lib/tftpboot. Cette configuration devrait instruire au répertoire root du client sans disque de monter le système de fichiers exporté (/exported/root/directory) en lecture-écriture. Pour ce faire, veuillez configurer /var/lib/tftpboot/pxelinux.cfg/default avec :
    default rhel7
    
    label rhel7
      kernel vmlinuz-kernel-version
      append initrd=initramfs-kernel-version.img root=nfs:server-ip:/exported/root/directory rw
    Remplacez server-ip avec l'adresse IP de la machine hôte sur laquelle les services tftp et DHCP résident.
Le partage NFS est désormais prêt à effectuer l'export vers les clients sans disque. Ces clients peuvent être démarrés sur le réseau via PXE.