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
- 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
- Sélectionnez le noyau que les clients sans disque devront utiliser (
vmlinuz-kernel-version
) et copiez-le sur le répertoire roottftp
:# cp /boot/vmlinuz-kernel-version /var/lib/tftpboot/
- Créez le fichier
initrd
(c'est-à-direinitramfs-kernel-version.img
) avec le support réseau :# dracut initramfs-kernel-version.img kernel-version
- 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
- Copiez également le fichier
initramfs-kernel-version.img
résultant dans le répertoire de démarragetftp
. - 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
Remplacezserver-ip
avec l'adresse IP de la machine hôte sur laquelle les servicestftp
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.