NOM

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

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
 
/usr/sbin/exportfs -s
 

DESCRIPTION

Un serveur NFS tient à jour une table des systèmes de fichiers physiques locaux accessibles aux clients NFS. Chaque système de fichiers de cette table est appelé système de fichiers partagé, ou alors partage en plus court.
La commande exportfs est utilisée pour la gestion de la table actuelle de systèmes de fichiers partagés du serveur NFS. Cette table est enregistrée dans un fichier 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 table 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 pour les noyaux 2.6 et suivants, à condition que le système de fichiers virtuel nfsd soit bien monté sous /proc/fs/nfsd ou /proc/fs/nfs. Pour les noyaux 2.6, si ce système de fichiers n'est pas monté, 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 gère alors 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îneront l'ajout dans la table des partages du noyau d'une entrée appropriée pour l'hôte indiqué dans rmtab.

OPTIONS

-d, --debug catégorie
Activer le mode débogage. Les catégories possibles sont : all, auth, call, general et parse. Le débogage peut être aussi activé en réglant debug= dans la section [exportfs] de /etc/nfs.conf.
-a
Activer 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 des fichiers dans le 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 les fichiers dans /etc/exports.d. Avec cette option, les entrées qui ont disparu de /etc/exports ou des fichiers dans /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, éliminer tout de la table des partages du noyau. Les nouvelles entrées pour des clients actifs sont ajoutées à la liste des partages du noyau par rpc.mountd lors de leur prochaine requête de montage NFS.
-v
Mode détaillé. 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.
-s
Afficher la liste actuelle de partages, applicable pour /etc/exports.

FICHIER DE CONFIGURATION

La section [exportfs] du fichier de configuration /etc/nfs.conf peut contenir une valeur debug, qui peut être un élément ou plus de la liste general, call, auth, parse, all. Si une liste est fournie, les éléments doivent être séparés par des virgules.
 
exportfs admet aussi la valeur state-directory-path à la fois de la section [mountd] et de la section [exportd].
 

DISCUSSION

Partage de répertoires

Le premier synopsis montre comment utiliser la commande exportfs pour ajouter de nouvelles entrées à la table des partages. Quand on lance exportfs -a, tous les partages listés dans /etc/exports et les fichiers dans /etc/exports.d sont ajoutés à /var/lib/nfs/etab. La table des partages du noyau est également mise à jour au besoin.
L'argument hôte:/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.
Les adresses de forme IPv6 contiennent des deux-points qui sont déjà utilisés pour séparer les arguments « hôte » et « chemin » de la ligne de commande. Lors de l’indication avec une adresse IPv6 brute, l’adresse doit être mise entre crochets. Pour les adresses réseau IPv6, le préfixe doit être placé après le crochet fermant.
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 dans les fichiers de /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é.

Arrêt du partage de répertoires

Le 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 effacé. Cela stoppe efficacement toute activité NFS.
Pour supprimer une entrée de partage, vous pouvez indiquer un couple hôte:/chemin. L'entrée indiquée sera supprimée de /var/lib/nfs/etab, ainsi que celle correspondante dans le noyau (si elle existe).

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.

EXEMPLES

L'exemple suivant ajoute tous les répertoires indiqués dans /etc/exports et les fichiers dans /etc/exports.d à /var/lib/nfs/etab, puis les entrées de partages résultantes sont inscrites dans le noyau :
# 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 des clients :
# exportfs -o insecure_locks django:/usr/tmp
Pour cesser de partager le répertoire /usr/tmp :
# exportfs -u django:/usr/tmp
Pour cesser de partager tous les partages indiqués dans /etc/exports et les fichiers dans /etc/exports.d :
# exportfs -au
Pour partager le répertoire /usr/tmp avec des clients IPv6 locaux :
# exportfs [fe80::]/64:/usr/tmp

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 autorisés restants. Dans le cas où ce partage n'est alors plus autorisé, il est supprimé.

FICHIERS

/etc/exports
Fichier d'entrées 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.

VOIR AUSSI

exports(5), nfs.conf(5), rpc.mountd(8), exportd(8), netgroup(5)

AUTEURS

Olaf Kirch <[email protected]>
 
Neil Brown <[email protected]>

TRADUCTION

La traduction française de cette page de manuel a été créée par Valéry Perrin <[email protected]>, Sylvain Cherrier <[email protected]>, Thomas Huriaux <[email protected]>, Dominique Simen <[email protected]>, Nicolas Sauzède <[email protected]>, Romain Doumenc <[email protected]>, David Prévot <[email protected]>, Denis Mugnier <[email protected]>, Cédric Boutillier <[email protected]> et Jean-Paul Guillonneau <[email protected]>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à [email protected]

Recommended readings

Pages related to exportfs you should read also: