exportfs(8)

BEZEICHNUNG
exportfs - die Tabelle der exportierten NFS-Dateisysteme verwalten

ÜBERSICHT
/usr/sbin/exportfs [-avi] [-o Optionen, … ] [Client:/Pfad … ]
/usr/sbin/exportfs -r [-v]
/usr/sbin/exportfs [-av] -u [Client:/Pfad … ]
/usr/sbin/exportfs [-v]
/usr/sbin/exportfs -f
/usr/sbin/exportfs -s

BESCHREIBUNG
Ein NFS-Server verwaltet eine Tabelle lokaler physischer Dateisysteme, auf die NFS-Clients zugreifen können. Jedes Dateisystem in dieser Tabelle ist ein exportiertes Dateisystem oder kurz ein Export.

Der Befehl exportfs verwaltet die aktuelle Tabelle der Exporte für den NFS-Server. Die Hauptexporttabelle befindet sich in einer Datei namens /var/lib/nfs/etab. Diese Datei wird von rpc.mountd gelesen, wenn ein Client eine NFS-MOUNT-Anfrage sendet.

Normalerweise wird die Hauptexporttabelle mit dem Inhalt von /etc/exports und den Dateien unter /etc/exports.d durch Aufruf von exportfs -a initialisiert. Jedoch kann ein Systemadministrator mit dem Befehl exportfs Exporte hinzufügen oder entfernen, ohne /etc/exports oder die Dateien unter /etc/exports.d zu bearbeiten.

exportfs und dessen Partnerprogramm rpc.mountd arbeiten in einem von zwei Modi: einem klassischen Modus für Kernelversionen bis 2.4 und einem neuen Modus für 2.6 und neuere Versionen, vorausgesetzt, das virtuelle nfsd-Dateisystem wurde unter /proc/fs/nfsd oder /proc/fs/nfs eingehängt. Wenn in Kerneln der Version 2.6 das Dateisystem nicht eingehängt ist, wird der klassische Modus verwendet.

Im neuen Modus sendet exportfs keine Informationen an den Kernel, sondern stellt diese in der Datei /var/lib/nfs/etab für rpc.mountd bereit. rpc.mountd verwaltet dann die Kernelanfragen nach Informationen zu Exporten, falls nötig.

Im klassischen Modus werden Exporte, die einen bestimmten Rechner und kein Subnetz oder eine Netzgruppe identifizieren, sowohl direkt in die Kernel-Exporttabelle eingegeben als auch in die Datei /var/lib/nfs/etab geschrieben. Weiterhin erhalten die in /var/lib/nfs/rmtab aufgeführten Exporte, die einem nicht-rechnerspezifischen Export entsprechen, einen entsprechenden Exporteintrag für den in rmtab angegebenen Rechner in der Kernel-Exporttabelle.

OPTIONEN

-d Art  oder  --debug Art
    aktiviert Debugging. Gültige Arten sind: all, auth, call, general und parse. Debugging kann auch mit der Einstellung debug= im Abschnitt [exportfs] der Datei /etc/nfs.conf aktiviert werden.

-a  exportiert alle Verzeichnisse oder macht deren Export rückgängig (deexportiert sie).

-o Optionen, …
    gibt eine Liste der Exportoptionen auf die gleiche Weise wie in exports(5) an.

-i  ignoriert die Datei /etc/exports und die Dateien im Verzeichnis /etc/exports.d. Es werden nur Standardoptionen und die in der Befehlszeile übergebenen Optionen verwendet.

-r  reexportiert alle Verzeichnisse, wobei /var/lib/nfs/etab mit /etc/exports und den Dateien unter /etc/exports.d synchronisiert wird. Diese Option entfernt Einträge in /var/lib/nfs/etab, die in /etc/exports oder den Dateien unter /etc/exports.d gelöscht wurden und entfernt Einträge aus der Kernel-Exporttabelle, die nicht mehr gültig sind.

-u  macht den Export eines oder mehrerer Verzeichnisse rückgängig (deexportiert sie).

-f  bewirkt, dass alles aus der Kernel-Exporttabelle gelöscht wird, falls /proc/fs/nfsd oder /proc/fs/nfs eingehängt ist. Neue Einträge für aktive Clients werden durch rpc.mountd zur Kernel-Exporttabelle hinzugefügt, wenn sie ihre nächste NFS-Einhängeanfrage stellen.

-v  aktiviert den ausführlichen Modus. Beim Exportieren oder Deexportieren wird angezeigt, was passiert. In der aktuellen Exportliste werden auch die Exportoptionen angezeigt.

-s  zeigt die aktuelle für /etc/exports geeignete Exportliste an.

KONFIGURATIONSDATEI
Der Abschnitt [exportfs] der Konfigurationsdatei /etc/nfs.conf kann einen oder mehrere debug-Werte enthalten, der general, call, auth, parse, all sein kann. Wenn eine Liste mehrere dieser Werte angegeben ist, sollten die einzelnen Werte durch Kommata getrennt werden.

exportfs berücksichtigt auch den Wert state-directory-path aus den Abschnitten [mountd] und [exportd].

BESPRECHUNG

  Verzeichnisse exportieren
Die oben stehende erste Übersicht zeigt, wie exportfs aufgerufen wird, um neue Einträge zur Exporttabelle hinzuzufügen. Wenn Sie exportfs -a aufrufen, werden alle in /etc/exports und den Dateien unter /etc/exports.d zu den in /var/lib/nfs/etab aufgeführten Exporten hinzugefügt. Die Kernel-Exporttabelle wird ebenfalls aktualisiert, falls nötig.

Das Argument Rechner:/Pfad gibt ein lokales zu exportierendes Verzeichnis an; zusammen mit dem Client oder den Clients, denen der Zugriff darauf gestattet ist. In exports(5) finden Sie eine Beschreibung der unterstützten Optionen und Formaten der Zugriffslisten.

Die Darstellung von IPv6-Adressen enthält Doppelpunkte, die bereits zum Trennen der Befehlszeilenargumente »Rechner« und »Pfad« verwendet werden. Wenn Sie einen Client in Form einer rohen IPv6-Adresse angeben, schließen Sie die Adresse in eckige Klammern ein. Bei IPv6-Netzwerkadressen setzen Sie das Präfix direkt hinter die schließende Klammer.

Um ein Verzeichnis in die Welt hinaus zu exportieren, geben Sie einfach :/Pfad an.

Die Exportoptionen für ein bestimmtes Rechner/Verzeichnis-Paar werden aus verschiedenen Quellen abgeleitet. Die vorgegebenen Exportoptionen sind sync,ro,root_squash,wdelay. Diese können durch die Einträge in /etc/exports oder den Dateien unter /etc/exports.d außer Kraft gesetzt werden.

Ein Systemadministrator kann die Optionen aus diesen Quellen außer Kraft setzen, indem er exportfs mit der Befehlszeilenoption -o verwendet. Diese Option akzeptiert eine durch Kommata getrennte Liste von Optionen in der gleichen Form, wie sie in /etc/exports angegeben wird. Auf diese Weise kann exportfs zum Ändern der Exportoptionen eines bereits exportierten Verzeichnisses verwendet werden.

  Deexportieren von Verzeichnissen
Die dritte Übersicht zeigt, wie ein aktuell exportiertes Verzeichnis deexportiert werden kann. Wenn Sie exportfs -ua aufrufen, werden alle in /var/lib/nfs/etab aufgeführten Einträge aus der Kernel-Exporttabelle entfernt und die Datei aufgeräumt. Dadurch werden effektiv alle NFS-Aktivitäten heruntergefahren.

Um einen Export zu entfernen, geben Sie ein Rechner:/Pfad-Paar an. Dadurch wird der angegebene Eintrag in /var/lib/nfs/etab gelöscht und der zugehörige Kerneleintrag entfernt (falls vorhanden).

  Die Exporttabelle ausgeben
Der Aufruf von exportfs ohne Optionen zeigt die aktuelle Liste der exportierten Dateisysteme an. Mit der Option -v zeigt exportfs die Exportlisten für jeden Export an.

BEISPIELE
Im folgenden Beispiel werden alle in /etc/exports und den Dateien unter /etc/exports.d aufgeführten Verzeichnisse zu /var/lib/nfs/etab hinzugefügt und die sich ergebenden Exporteinträge an den Kernel gemeldet:

# exportfs -a

Exportieren des Verzeichnisses /usr/tmp zum Rechner django und unsichere Dateisperranfragen von Clients zulassen:

# exportfs -o insecure_locks django:/usr/tmp

Deexportieren des Verzeichnisses /usr/tmp:

# exportfs -u django:/usr/tmp

Deexportieren aller in /etc/exports und den Dateien unter /etc/exports.d aufgeführten Exporte:

# exportfs -au

Exportieren des Verzeichnisses /usr/tmp an link-lokale IPv6-Clients:

# exportfs [fe80::]/64:/usr/tmp

HINWEISE ZUR BENUTZUNG
Das Exportieren zu IP-Netzwerken oder DNS- und NIS-Domains erlaubt den Clients nicht, von diesen Gruppen auf NFS unmittelbar zuzugreifen. Stattdessen sind diese Arten von Exporten Hinweise an rpc.mountd(8) zum Erlauben jeglicher Einhängeanfragen dieser Clients. Dies ist normalerweise kein Problem, da alle existierenden Einhängungen in rmtab auch nach einem Neustart noch vorhanden sind.

Beim Deexportieren eines Netzwerk- oder Domain-Eintrags werden alle aktuellen Exporte an Mitglieder dieser Gruppe gegen die verbleibenden gültigen Exporte geprüft. Falls diese Exporte nicht mehr gültig sind, werden sie entfernt.

DATEIEN

/etc/exports
    Eingabedatei, welche die Exporte, die Exportoptionen und die Zugriffssteuerlisten aufführt

/etc/exports.d
    Verzeichnis, in dem zusätzliche Eingabedateien gespeichert werden. Hinweis: Es werden nur Dateien mit der Endung .exports verwendet.

/var/lib/nfs/etab
    Haupttabelle der Exporte

/var/lib/nfs/rmtab
    Tabelle der Clients, die auf die Exporte des Servers zugreifen

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

AUTOREN
Olaf Kirch <okir@monad.swb.de>
Neil Brown <neilb@cse.unsw.edu.au>

ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Mario Blättermann <mario.blaettermann@gmail.com> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 (https://www.gnu.org/licenses/gpl-3.0.html) oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer (debian-l10n-german@lists.debian.org).