1. NOM

exportfs - Gestion de la liste des systèmes de fichiers partagés par NFS

2. SYNOPSIS

/usr/sbin/exportfs [-avi] [-o options,...] [client:/chemin ...]
/usr/sbin/exportfs -r [-v]
/usr/sbin/exportfs [-av] -u [client:/chemin ...]
/usr/sbin/exportfs [-v]
/usr/sbin/exportfs -f

3. DESCRIPTION

Un serveur NFS tient à jour une liste des systèmes de fichiers physiques locaux accessibles aux clients NFS. Chaque système de fichiers de cette liste est appelé système de fichiers partagé, ou alors partage en plus court.

La commande exportfs est utilisée pour la gestion de la liste actuelle de systèmes de fichiers partagés par NFS. Cette liste est enregistrée dans un fichier spécifique nommé /var/lib/nfs/etab. Ce fichier sera lu par rpc.mountd dès qu'un client distant enverra une requête NFS MOUNT.

Dans le cas général, la liste principale des partages est initialisée à partir du contenu du fichier /etc/exports et des fichiers présents dans /etc/exports.d/ à l'aide de la commande exportfs -a. Cependant, un administrateur système peut ajouter ou supprimer des partages sans modifier /etc/exports ou les fichiers sous /etc/exports.d/ à l'aide de la commande exportfs.

exportfs et son programme associé rpc.mountd fonctionnent sous l'un des deux modes suivants : le mode traditionnel, qui s'applique aux versions 2.4 et précédentes du noyau Linux, et un mode plus récent sous les noyaux 2.6 et suivants, accessible à la condition que le système de fichiers virtuel de nfsd soit bien monté sous /proc/fs/nfsd ou /proc/fs/nfs. Si ce système de fichiers n'est pas monté en 2.6, c'est le mode traditionnel qui sera utilisé.

Dans le mode plus récent, exportfs ne donne aucune information au noyau, il n'en fournit qu'à rpc.mountd par l'intermédiaire du fichier /var/lib/nfs/etab. rpc.mountd écoutera les requêtes du noyau pour obtenir les renseignements nécessaires à propos des partages.

Dans le mode traditionnel, les partages qui indiquent un hôte spécifique, plutôt qu'un sous-réseau ou un groupe de machines sont directement inscrits dans la table des partages du noyau ainsi que dans le fichier /var/lib/nfs/etab. De plus, tous les partages définis dans /var/lib/nfs/rmtab correspondant à une demande de partage non spécifique à un hôte entraînera l'ajout, dans la table des partages du noyau, d'une entrée correspondante à l'hôte effectif dans rmtab.

4. OPTIONS

  • -a
        Partager ou interrompre le partage de tous les répertoires.
  • -o options,...
        Indiquer une liste d'options de partage, à la manière de exports(5).
  • -i
        Ne pas tenir compte du fichier /etc/exports ni du répertoire /etc/exports.d/. Seules les options par défaut ou celles données sur la ligne de commande sont utilisées.
  • -r
        Relancer le partage de tous les répertoires. /var/lib/nfs/etab est synchronisé avec /etc/exports et le répertoire /etc/exports.d/. Avec cette option, les entrées qui ont disparu de /etc/exports ou /etc/exports.d/ seront supprimées de /var/lib/nfs/etab. Dans la table des partages du noyau, les entrées qui ne sont plus valables seront également enlevées.
  • -u
        Interrompre le partage d'un ou plusieurs répertoires.
  • -f
        Si /proc/fs/nfsd ou /proc/fs/nfs sont montés, vider toute la liste des partages du noyau. Les entrées correspondant aux clients actifs sont ajoutées à la liste des partages du noyau par rpc.mountd lors de leur requête de montage NFS.
  • -v
        Mode volubile. Lors d'un partage ou de l'arrêt d'un partage, afficher ce qui se passe. Lors de l'affichage de la liste actuelle des partages, afficher aussi la liste des options de partage.

5. DISCUSSION

5.1. Partage de répertoires

Le premier synopsis montre comment utiliser la commande exportfs pour ajouter de nouvelles entrées à la liste des partages. Quand on lance exportfs -a, tous les partages listés dans /etc/exports et /etc/exports.d/ sont ajoutés à /var/lib/nfs/etab. La liste des partages du noyau est également mise à jour au besoin.

L'argument client:/chemin définit un répertoire local à partager ainsi que le ou les clients qui ont le droit d'y accéder. Consultez exports(5) pour obtenir une description des options prises en charge ainsi que les formats de liste d'accès. Pour partager un répertoire avec tout le monde, indiquez tout simplement :/chemin.

Les options de partage pour une paire hôte/répertoire donnée proviennent de plusieurs sources. Les options de partage par défaut sont sync,ro,root_squash,wdelay. Elles peuvent être surchargées par les entrées du fichier /etc/exports ou du répertoire /etc/exports.d/.

Un administrateur système peut surcharger les options de ces sources à l'aide de l'option -o d'exportfs. Cette option utilise une liste d'options séparées par des virgules de manière similaire à ce qui serait fait si ces options étaient écrites dans le fichier /etc/exports. Ainsi, exportfs peut être utilisé pour modifier les options de partage d'un répertoire déjà partagé.

5.2. Arrêt du partage de répertoires

Ce troisième synopsis montre comment arrêter le partage d'un répertoire actuellement offert. Quand on lance exportfs -ua, toutes les entrées présentes dans /var/lib/nfs/etab sont retirées de la table des partages du noyau, puis le fichier est vidé. Cela stoppe effectivement toute activité NFS.

Pour supprimer une entrée de partage, vous pouvez indiquer un couple client:/chemin. L'entrée indiquée sera supprimée de /var/lib/nfs/etab, ainsi que celle correspondante dans le noyau (si elle existe).

5.3. Affichage du contenu de la table des partages

L'utilisation de exportfs sans option affiche la liste actuelle des systèmes de fichiers partagés. Avec l'option -v, exportfs affiche les options spécifiques à chaque partage.

6. EXEMPLES

L'exemple suivant ajoute tous les répertoires indiqués dans /etc/exports et /etc/exports.d/ à /var/lib/nfs/etab, puis les entrées de partages résultantes sont inscrites dans le noyau :

 
Sélectionnez
# exportfs -a

Pour offrir le répertoire /usr/tmp à l'hôte django, en permettant les requêtes non sécurisées de verrouillage de fichier :

 
Sélectionnez
# exportfs -o insecure_locks django:/usr/tmp

Pour cesser de partager le répertoire /usr/tmp :

 
Sélectionnez
# exportfs -u django:/usr/tmp

Pour cesser de partager tous les partages indiqués dans /etc/exports et le répertoire /etc/exports.d/ :

 
Sélectionnez
# exportfs -au

7. NOTES D'UTILISATION

Le partage à destination de réseaux IP ou de domaines DNS et NIS ne permet pas l'accès NFS immédiat aux clients NFS de ces groupes. En fait, ce type de partage est une indication pour rpc.mountd(8) d'honorer toute requête de montage provenant de ces clients. Ce n'est normalement pas un gros problème, puisque tout montage existant est préservé dans rmtab de redémarrage en redémarrage.

Lors de l'arrêt d'un partage à destination de domaines ou de réseaux, tout partage en cours pour les membres de ce groupe sera vérifié par rapport à la liste des partages valides restants. Dans le cas où ce partage n'est alors plus autorisé, il est supprimé.

8. FICHIERS

  • /etc/exports
      Fichier d'entrée contenant la liste des partages, leurs options et la liste des contrôles d'accès.
  • /etc/exports.d
      répertoire où les fichiers d'entrée supplémentaires sont stockés. Note : uniquement les fichiers se terminant par .exports sont utilisés.
  • /var/lib/nfs/etab
      Liste principale des partages.
  • /var/lib/nfs/rmtab
      Liste des clients se connectant aux partages du serveur.

9. VOIR AUSSI

exports(5), rpc.mountd(8), netgroup(5)

10. AUTEURS

Olaf Kirch <>
Neil Brown <>

11. TRADUCTION

Cette page de manuel a été traduite et est maintenue par Sylvain Cherrier <sylvain DOT cherrier AT free DOT fr> et les membres de la liste <debian-l10n-french AT lists DOT debian DOT org> depuis 2006. Veuillez signaler toute erreur de traduction par un rapport de bogue sur le paquet manpages-fr-extra.