Red Hat et dérivées version SERVEUR

CentOS 7 : Installer un serveur NFS et Configurer un client NFS

Cet article a été mis à jour, vous consultez ici une archive de cet article!
Table des matières



Introduction



NFS, pour Network File System (système de fichiers en réseau) est à l'origine un protocole qui permet à un ordinateur d'accéder à des fichiers via un réseau. Il permet de partager des données principalement entre systèmes UNIX.

Ici, on va détailler l'installation d'un serveur NFS et montrer comment connecter un client à ce partage.

IP du serveur : 10.21.27.250
IP du client : 10.21.27.100


Installation



L'installation se fait via deux paquets :

Code BASH :
yum install nfs-utils nfs-utils-lib


On active au passage les services rpcbind et nfs au démarrage du système :

Code BASH :
chkconfig rpcbind on 
chkconfig nfs on 


Et on les démarre dans le bon ordre :

Code BASH :
service rpcbind start
service nfs start



Configuration




On indique dans le fichier /etc/exports quels répertoires on souhaite partager et à qui :

Code BASH :
vi /etc/exports


On peut partager un dossier à une seule machine :
Code BASH :
/media/partage           10.21.27.100(rw,sync,no_root_squash)


Ou à plusieurs machines
Code BASH :
/media/partage           10.21.27.0/24(rw,sync,no_root_squash)


  • rw: Cette option permet d'avoir les droits de lecture et d'écriture. Pour lecture seule : utiliser ro
  • sync : vérifie les données écrites avant d'en écrire de nouvelles (lent). Pour écrire plus rapidement au prix d'une corruption des données, utiliser async
  • no_root_squash : ne force pas le mapping de l'utilisateur root vers un utilisateur anonyme


Par défaut, toutes les données écrites dans ce répertoire partagé sont de la propriété de l'utilisateur anonyme (nobody).
On peut indique au serveur NFS un UID et/ou un GID de l'utilisateur avec anonuid et anongid pour éviter d'utiliser nobody. Utiliser au passage l'option all_squash :

Code BASH :
/media/partage  10.21.27.0/24(rw,all_squash,anonuid=1001,anongid=1001,sync)


Pour appliquer les changements :

Code BASH :
exportfs -a




Partie cliente



Pour la partie cliente, on installe aussi les paquets adéquats :

Code BASH :
yum install nfs-utils nfs-utils-lib


Et pour monter le partage, rien de plus simple :

Code BASH :
mkdir -p /media/nfs
mount 10.21.27.250:/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
10.21.27.250:/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 :

Code BASH :
10.21.27.250:/media/partage   /media/nfs   nfs      auto,noatime,nolock,bg,nfsvers=3,intr,tcp,actimeo=1800 0 0


:magic: