Red Hat 8, Alma Linux 8 : Installer et configurer un serveur NFS
Table des matières
Le système de fichiers en réseau (NFS pour Network File System) est un protocole de partage de fichiers qui permet à plusieurs ordinateurs de partager des fichiers et des répertoires sur un réseau. C'est principalement utilisé avec des systèmes UNIX et Linux, mais on peut le rencontrer parfois dans le monde Windows.
En utilisant NFS, les utilisateurs peuvent accéder aux fichiers et aux répertoires stockés sur un serveur distant comme s'ils étaient stockés localement sur leur propre ordinateur.
On parlera d'un serveur NFS pour le serveur qui héberge les fichiers et de client NFS pour l'ordinateur qui accède aux fichiers stockés sur le serveur.
NFS n'a pas les mêmes objectifs que SMB (Samba) pour le partage de fichiers, il n'a donc pas de gestion de droits similaires.
Ici, on va détailler l'installation d'un serveur NFS sous Enterprise Linux 8 et 9 et montrer comment connecter un client à ce partage.
L'installation se fait simplement avec le paquet nfs-utils :
On va configurer également le fichier idmapd.conf :
Et spécifier le domaine utilisé :
On active au passage les services rpcbind et nfs-server au démarrage du système et on les démarre :
On n'oublie pas d'ouvrir le parefeu s'il est actif :
Si on veut utiliser des clients en NFS v3, on ouvrira en plus :
Puis on rend permanent les modifs du parefeu :
La configuration des partages sur le serveur se fait dans le fichier /etc/exports.
Plus d'informations dans cet article dédié : https://www.linuxtricks.fr/wiki/nfs-parametrer-les-partages-avec-le-fichier-exports
Pour la partie cliente, on installe aussi les paquets adéquats :
On va configurer également le fichier idmapd.conf :
Et spécifier le domaine utilisé :
Et pour monter le partage, rien de plus simple :
Avec la commande df, on peut voir que tout est monté :
On peut aussi monter ça dans le fstab, mais attention, si le serveur NFS n'est pas dispo, le boot peut venir en échec (option nofail utile dans ce cas, mais montage à réaliser manuellement) :
Au travail, j'utilise un partage NFS pour étendre du stockage pour un coût peu élevé.
Mais le système se comporte bizarrement lorsque le partage NFS est indisponible (reboot du NAS, perte temporaire de réseau).
Pour cela, on peut monter le partage NFS avec les options soft, retrans et timeo. Je choisis 2 retransmissions en cas d'échec et 5 dixièmes de secondes (500 ms) de timeout (le NAS et le serveur sont dans le même sous-réseau, sur le même switch)
Ou dans /etc/fstab :
Introduction
Le système de fichiers en réseau (NFS pour Network File System) est un protocole de partage de fichiers qui permet à plusieurs ordinateurs de partager des fichiers et des répertoires sur un réseau. C'est principalement utilisé avec des systèmes UNIX et Linux, mais on peut le rencontrer parfois dans le monde Windows.
En utilisant NFS, les utilisateurs peuvent accéder aux fichiers et aux répertoires stockés sur un serveur distant comme s'ils étaient stockés localement sur leur propre ordinateur.
On parlera d'un serveur NFS pour le serveur qui héberge les fichiers et de client NFS pour l'ordinateur qui accède aux fichiers stockés sur le serveur.
NFS n'a pas les mêmes objectifs que SMB (Samba) pour le partage de fichiers, il n'a donc pas de gestion de droits similaires.
Ici, on va détailler l'installation d'un serveur NFS sous Enterprise Linux 8 et 9 et montrer comment connecter un client à ce partage.
Installation
L'installation se fait simplement avec le paquet nfs-utils :
Code BASH :
dnf install nfs-utils
On va configurer également le fichier idmapd.conf :
Code BASH :
vi /etc/idmapd.conf
Et spécifier le domaine utilisé :
Code TEXT :
Domain = linuxtricks.lan
On active au passage les services rpcbind et nfs-server au démarrage du système et on les démarre :
Code BASH :
systemctl enable --now rpcbind systemctl enable --now nfs-server
On n'oublie pas d'ouvrir le parefeu s'il est actif :
Code BASH :
firewall-cmd --add-service=nfs --permanent
Si on veut utiliser des clients en NFS v3, on ouvrira en plus :
Code BASH :
firewall-cmd --add-service=mountd --permanent firewall-cmd --add-service=rpc-bind --permanent
Puis on rend permanent les modifs du parefeu :
Code BASH :
firewall-cmd --reload
Configuration
La configuration des partages sur le serveur se fait dans le fichier /etc/exports.
Plus d'informations dans cet article dédié : https://www.linuxtricks.fr/wiki/nfs-parametrer-les-partages-avec-le-fichier-exports
Partie client
Pour la partie cliente, on installe aussi les paquets adéquats :
Code BASH :
dnf install nfs-utils
On va configurer également le fichier idmapd.conf :
Code BASH :
vi /etc/idmapd.conf
Et spécifier le domaine utilisé :
Code TEXT :
Domain = linuxtricks.lan
Et pour monter le partage, rien de plus simple :
Code BASH :
mkdir -p /media/nfs mount -t nfs4 192.168.21.200:/media/partage /media/nfs
Avec la commande df, on peut voir que tout est monté :
Code BASH :
df -h Filesystem Size Used Avail Use% Mounted on 192.168.21.200:/media/partage 20G 985M 18G 5% /media/nfs
On peut aussi monter ça dans le fstab, mais attention, si le serveur NFS n'est pas dispo, le boot peut venir en échec (option nofail utile dans ce cas, mais montage à réaliser manuellement) :
Code BASH :
192.168.21.200:/media/partage /media/nfs nfs auto,_netdev,nofail 0 0
Quelques options de montage utiles
Au travail, j'utilise un partage NFS pour étendre du stockage pour un coût peu élevé.
Mais le système se comporte bizarrement lorsque le partage NFS est indisponible (reboot du NAS, perte temporaire de réseau).
Pour cela, on peut monter le partage NFS avec les options soft, retrans et timeo. Je choisis 2 retransmissions en cas d'échec et 5 dixièmes de secondes (500 ms) de timeout (le NAS et le serveur sont dans le même sous-réseau, sur le même switch)
Code BASH :
mount -t nfs4 192.168.21.200:/media/partage /media/nfs -o soft,retrans=2,timeo=5
Ou dans /etc/fstab :
Code BASH :
192.168.21.200:/media/partage /media/nfs nfs auto,_netdev,nofail,soft,retrans=2,timeo=5 0 0