Le système de fichiers réseau (NFS), également connu sous le nom de système de fichiers client / serveur, est un protocole de système de fichiers populaire, multiplateforme et distribué utilisé pour exporter des systèmes de fichiers locaux sur le réseau afin que les clients puissent partager des répertoires et des fichiers avec d’autres sur un réseau et interagir avec eux comme s’ils étaient montés localement.
Dans CentOS/RHEL 8, la version NFS prise en charge est NFSv3 et NFSv4 et la version NFS par défaut est 4.2 qui prend en charge les listes de contrôle d’accès (ACL), la copie côté serveur, les fichiers épars, la réservation d’espace, le NFS étiqueté, les améliorations de la mise en page et bien plus encore.
Dans cet article, vous apprendrez comment installer et configurer le serveur NFS et le client NFS sur les distributions Linux CentOS/RHEL 8.
Prérequis:
- Guide d’installation de CentOS 8
- RHEL 8 Installation minimale
- Activer l’abonnement RHEL dans RHEL 8
- Définir une adresse IP statique dans CentOS/RHEL 8
Notre Environnement de Test:
NFS Server IP:10.20.20.8NFS Client IP:10.20.20.9
Configuration du serveur NFS sur CentOS 8
1. Tout d’abord, commencez par installer les packages requis sur le serveur NFS. Les paquets sont nfs-utils qui fournit un démon pour le serveur NFS du noyau et des outils associés tels que le contient le programme showmount.
Exécutez la commande suivante pour installer le package sur le serveur NFS (utilisez sudo si vous administrez le système en tant qu’utilisateur non root).
# dnf install nfs-utils
2. Une fois l’installation terminée, démarrez le service nfs-server, activez-le pour démarrer automatiquement au démarrage du système, puis vérifiez son état à l’aide des commandes systemctl.
# systemctl start nfs-server.service# systemctl enable nfs-server.service# systemctl status nfs-server.service
Notez que les autres services requis pour exécuter un serveur NFS ou monter des partages NFS tels que nfsd, nfs-idmapd, rpcbind, rpc.montage, verrouillage, rpc.statd, rpc.rquotad, et rpc.idmapd sera automatiquement démarré.
Les fichiers de configuration du serveur NFS sont:
- / etc./nfs.conf – fichier de configuration principal pour les démons et outils NFS.
- /etc/nfsmount.conf – un fichier de configuration de montage NFS.
3. Ensuite, créez les systèmes de fichiers à exporter ou à partager sur le serveur NFS. Pour ce guide, nous allons créer quatre systèmes de fichiers, dont trois sont utilisés par le personnel de trois départements: ressources humaines, finances et marketing pour partager des fichiers et un pour les sauvegardes des utilisateurs root.
# mkdir -p /mnt/nfs_shares/{Human_Resource,Finance,Marketing}# mkdir -p /mnt/backups# ls -l /mnt/nfs_shares/
4. Exportez ensuite les systèmes de fichiers ci-dessus dans le fichier de configuration NFS server/etc/exports pour déterminer les systèmes de fichiers physiques locaux accessibles aux clients NFS.
Voici quelques-unes des options d’exportation (lisez man exports pour plus d’informations et options d’exportation):
- rw – permet l’accès en lecture et en écriture sur le système de fichiers.
- sync – indique au serveur NFS d’écrire des opérations (écriture d’informations sur le disque) lorsqu’elles sont demandées (s’applique par défaut).
- all_squash – mappe tous les UID et GID des requêtes client à l’utilisateur anonyme.
- no_all_squash – utilisé pour mapper tous les UID et GID des requêtes client vers des UID et GID identiques sur le serveur NFS.
- root_squash – mappe les requêtes de l’utilisateur root ou de l’UID/GID 0 du client vers l’UID/GID anonyme.
5. Pour exporter le système de fichiers ci-dessus, exécutez la commande exportfs avec l’indicateur -a
signifie exporter ou non tous les répertoires, -r
signifie réexporter tous les répertoires, en synchronisant /var/lib/nfs/etab avec /etc/exports et les fichiers sous /etc/exports.d, et -v permet une sortie détaillée.
# exportfs -arv
6. Pour afficher la liste d’exportation en cours, exécutez la commande suivante. Notez que le tableau exports applique également certaines des options d’exportation par défaut qui ne sont pas explicitement définies comme indiqué dans la capture d’écran suivante.
# exportfs -s
7. Ensuite, si le service firewalld est en cours d’exécution, vous devez autoriser le trafic vers les services NFS nécessaires (mountd, nfs, rpc-bind) via le pare-feu, puis recharger les règles du pare-feu pour appliquer les modifications, comme suit.
Configuration du Client NFS sur les Systèmes clients
8. Maintenant, sur le ou les nœuds clients, installez les packages nécessaires pour accéder aux partages NFS sur les systèmes clients. Exécutez la commande appropriée pour votre distribution:
# dnf install nfs-utils nfs4-acl-tools $ sudo apt install nfs-common nfs4-acl-tools
9. Exécutez ensuite la commande showmount pour afficher les informations de montage pour le serveur NFS. La commande doit afficher le système de fichiers exporté sur le client comme indiqué dans la capture d’écran.
# showmount -e 10.20.20.8
9. Ensuite, créez un système de fichiers / répertoire local pour le montage du système de fichiers NFS distant et montez-le en tant que système de fichiers ntf.
# mkdir -p /mnt/backups# mount -t nfs 10.20.20.8:/mnt/backups /mnt/backups
10. Confirmez ensuite que le système de fichiers distant a été monté en exécutant la commande mount et filtrez les montages nfs.
# mount | grep nfs
11. Pour que le montage soit persistant même après un redémarrage du système, exécutez la commande suivante pour entrer l’entrée appropriée dans le fichier /etc/fstab.
# echo "10.20.20.8:/mnt/backups /mnt/backups nfs defaults 0 0">>/etc/fstab# cat /etc/fstab
12. Enfin, testez si la configuration de NFS fonctionne correctement en créant un fichier sur le serveur et vérifiez si le fichier peut être vu dans le client.
# touch /mnt/backups/file_created_on_server.text # ls -l /mnt/backups/file_created_on_server.text
Puis faites l’inverse.
# touch /mnt/backups/file_created_on_client.text # ls -l /mnt/backups/file_created_on_client.text
13. Pour démonter le système de fichiers distant côté client.
# umount /mnt/backups
Notez que vous ne pouvez pas démonter le système de fichiers distant si vous l’utilisez comme indiqué dans la capture d’écran suivante.