NFS
1. Introduction
NFS est l'abréviation de Network File System, c'est-à-dire système de fichiers réseau.
Ce système de fichiers en réseau permet de partager des données principalement entre
systèmes de type UNIX mais des versions existent également pour Microsoft Windows™ et
Mac.
NFS est compatible avec IPv6 sur la plupart des systèmes.
L'intérêt de NFS est de permettre l'utilisation d'un répertoire ou de tout le système de fichiers
d'un ordinateur de manière totalement transparente, comme s'il s'agissait d'un disque dur
connecté directement à votre ordinateur.
2. Installation du serveur NFS
2.1. Pré-requis
Deux ordinateurs au moins
Un serveur sous /Linux (ici Ubuntu) où se trouvent les fichiers à partager.
Un client qui doit pouvoir accéder aux fichiers du Serveur.
Avoir les droits d'administration sur les deux machines
C'est-à-dire de pouvoir installer des paquets et utiliser la commande sudo (superuser
do)
Connaître les adresses IP locales de Serveur et de Client
Dans le terminal lancer « ifconfig », l'adresse est à la ligne « inet adr: », paragraphe « eth » si
vous êtes connecté en ethernet, « wlan » pour une connexion Wi-Fi.
Pour la suite de cet exemple, on considérera que Serveur et Client ont une adresse locale
fixe :
Serveur : [Link]
Client : [Link]
Administration Linux Page 1 / 6
NFS
2.2. Installation
Installez sur le ou les serveurs les paquets suivants sont nécessaires :
rpm –ivh nfs-util-………….
3. Configuration
Maintenant le serveur est installé, il faut définir les dossiers accessible aux clients NFS.
Pour pouvoir partager, par exemple, le dossier cours dans votre dossier personnel
/home/etudiant/cours
Commencez par éditer le fichier /etc/exports
vi /etc/exports
Dans ce fichier, chaque ligne est définie comme ceci :
<dossier partagé> <hôte>(<options>) <hôte2>(<options>)...
Les informations se trouvant sur une ligne sont les suivantes :
<dossier partagé> : chemin menant au dossier partagé.
<hôte> : indique quel est l'hôte qui peut accéder à ce partage, l'hôte peut être défini
de plusieurs manières :
une IP : on indique simplement l'adresse IP de la machine pouvant accéder à
ce partage.
un nom d'hôte : on indique le nom complet de l'hôte (pour peu qu'il soit connu
du système au travers d'un ou du fichier hosts).
un domaine avec un joker qui indique les machines d'un domaine ou sous-
domaine; par exemple : *.[Link].
un intervalle d'IP avec le masque de sous-réseau; par exemple : [Link]/24
ou 192.168.0.*
<options> : indique les options de partage; nous n'allons pas parcourir toutes les
options ensemble mais uniquement les plus importantes.
rw : permet la lecture et l'écriture sur un partage pour l'hôte défini (par défaut,
les partages sont en mode ro; c'est-à-dire en lecture seule).
async : permet au serveur de violer le protocole et de répondre aux requêtes
avant que les changements effectués par la requête aient été appliqués sur
l'unité de stockage. Cette option améliore les performances mais a un coût au
niveau de l'intégrité des données (données corrompues ou perdues) en cas de
redémarrage non-propre (par exemple en cas de crash système).
sync : est le contraire de async. Le serveur respecte le protocole .
Administration Linux Page 2 / 6
NFS
root_squash : force le mapping de l'utilisateur root vers l'utilisateur anonyme
(option par défaut).
no_root_squash : n'effectue pas de mapping pour l'utilisateur root.
all_squash : force le mapping de tous les utilisateurs vers l'utilisateur anonyme.
Cette ligne permet de dire que le dossier /home/etudiant/cours est accessible en NFS pour
la machine ayant l’adresse IP [Link] qui dans notre cas est le client.
# vi /etc/exports
/home/etudiant/cours [Link](rw,sync)
Pour que ce dossier soit accessible par tout les clients, ne spécifiez aucune adresse.
# vi /etc/exports
/home/etudiant/cours (rw,sync)
4. Rendre la configuration active
Une fois le fichier de configuration édité, il ne reste plus qu’a redémarrer le démon gérant les
montages. Vous pouvez le faire comme ceci :
service nfs restart
5. Coté client
5.1. Dossier devant contenir le montage
Il faut commencer par la création d'un dossiercontenant le montage.
mkdir /mnt/nfs/cours
5.2. Monter manuellement le dossier
Pour commencer, nous allons créer un montage entre les deux machines manuellement. La
commande ci-dessous permet d’effectuer cette action.
mount -t nfs [Link]:/home/etudiant/cours /mnt/nfs/cours
5.3. Démontage d’un dossier
Dans le sens inverse, pour démonter un dossier il suffit de faire la commande suivant en tant
qu’utilisateur root.
umount /media/nfs/cours
Administration Linux Page 3 / 6