Scroll to navigation

nfsd(7) Miscellaneous Information Manual nfsd(7)

BEZEICHNUNG

nfsd - Spezialdateisystem zum Steuern eines Linux-NFS-Servers

ZUSAMMENFASSUNG

mount -t nfsd nfsd /proc/fs/nfsd

BESCHREIBUNG

Das nfsd-Dateisystem ist ein spezielles Dateisystem, das den Zugriff auf einen Linux-NFS-Server ermöglicht. Das Dateisystem besteht aus einem einzelnen Verzeichnis, welches eine Reihe von Dateien enthält. Diese Dateien sind tatsächlich Gateways zum NFS-Server. In Dateien in diesem Dateisystem zu schreiben kann sich auf den Server auswirken. Lesen aus diesen Dateien kann Informationen über den Server bereitstellen.

Dieses Dateisystem ist ist nur für Linux-Kernel der Version 2.6 und neuer verfügbar. Außerdem steht es in den späteren Teilen der Entwicklungsreihe 2.5 zur Verfügung, die zur Version 2.6 führte. Diese Handbuchseite bezieht sich nicht auf 2.4 und frühere Versionen.

Neben diesem Dateisystem gibt es eine Sammlung von Dateien im procfs-Dateisystem (das normalerweise in /proc eingehängt ist), die zum Steuern des NFS-Servers verwendet werden. Diese Handbuchseite beschreibt alle dieser Dateien.

Die Programme exportfs und mountd, die Teil des Pakets nfs-utils sind, erwarten, dass dieses Dateisystem in /proc/fs/nfsd oder /proc/fs/nfs eingehängt ist. Sollte das nicht der Fall sein, wird auf die Funktionalität im 2.4er-Stil ausgewichen. Dies beinhaltet den Zugriff auf den NFS-Server über einen Systemaufruf. Es ist geplant, diesen Systemaufruf nach der Kernel-Reihe 2.6 zu entfernen.

DETAILS

Die drei Dateien im nfsd-Dateisystem sind:
exports
Diese Datei enthält eine Liste der Dateisysteme, die aktuell exportiert sind und der Clients, an die jedes der Dateisysteme exportiert ist, sowie eine Liste der Exportoptionen für jedes Client/Dateisystem-Paar. Dies ähnelt der Datei /proc/fs/nfs/exports in 2.4. Ein Unterschied ist, dass ein Client nicht unbedingt genau einem Rechner entsprechen muss. Er kann auf eine große Auswahl an Rechnern reagieren, die identisch behandelt werden.

Jede Zeile der Datei enthält einen Pfadnamen, einen Clientnamen und eine Reihe von Optionen in Klammern. Jedes Leerzeichen, jeder Tabulator, Zeilenvorschub oder Rückschrägstrich im Pfad- oder Clientnamen wird durch einen Rückschrägstrich ersetzt, dem der oktale ASCII-Code für das jeweilige Zeichen folgt.

threads
Diese Datei stellt die Anzahl der Threads dar, in denen nfsd aktuell läuft. Durch Lesen der Datei wird die Anzahl der Threads dargestellt. Durch Schreiben einer ASCII-Dezimalzahl wird die Anzahl der Threads geändert (erhöht oder verringert, wie erforderlich), um diese Anzahl zu erreichen.

filehandle
Diese Datei ist etwas unüblich, im Hinblick darauf, dass was daraus gelesen wird, davon abhängt, was hineingeschrieben worden ist. Sie bietet eine Transaktionsschnittstelle, über die ein Programm die Datei öffnen, eine Anforderung schreiben und eine Antwort lesen kann. Falls zwei separate Programme gleichzeitig öffnen, schreiben und lesen, werden deren Anfragen nicht miteinander vermischt.

Die an filehandle gestellte Anfrage sollte ein Clientname, ein Pfadname und eine Anzahl Bytes sein. Darauf sollte ein Zeilenvorschub folgen, die Felder sollten durch Leerraum getrennt sein und spezielle Zeichen sollten oktal maskiert werden.

Nachdem dies geschrieben wurde, ist das Programm in der Lage, einen Datei-Handle für diesen Pfad zu lesen, wie er an den angegebenen Client exportiert wurde. Die Länge des Datei-Handles wird höchstens die Anzahl der angegebenen Bytes sein.

Der Datei-Handle wird mit einem vorangestellten »\x« hexadezimal dargestellt.

Das Verzeichnis /proc/net/rpc im procfs-Dateisystem enthält eine Reihe von Dateien und Verzeichnissen. Die Dateien enthalten Statistiken, die mit dem Programm nfsstat angezeigt werden können. Die Verzeichnisse enthalten Informationen über verschiedene Zwischenspeicher, die der NFS-Server verwaltet, um die Zugriffsrechte verfolgen zu können, die verschiedene Clients auf verschiedenen Dateisystemen haben. Die Zwischenspeicher sind:

auth.domain
Dieser Zwischenspeicher weist den Namen eines Clients (oder Domain) einer internen Datenstruktur zu. Der einzig mögliche Zugriff ist das Leeren des Zwischenspeichers.

auth.unix.ip
Dieser Zwischenspeicher enthält die Zuweisung der IP-Adresse zum Namen der Authentifizierungsdomain, der die IP-Adresse als Teil zugeordnet werden soll.

nfsd.export
Dieser Zwischenspeicher enthält die Zuweisung von Verzeichnis und Domain zu Exportoptionen.

nfsd.fh
Dieser Zwischenspeicher enthält eine Zuweisung einer Domain und eines Dateisystembezeichners zu einem Verzeichnis. Der Dateisystembezeichner wird in den Datei-Handles gespeichert und besteht aus einer Zahl, die den Typ des Bezeichners angibt sowie einer Hexadezimalzahl, die den Inhalt des Bezeichners angibt.

Jedes Zwischenspeicherverzeichnis kann eine bis drei Dateien enthalten. Dies sind:

flush
Wenn eine Anzahl der Sekunden seit dem Beginn der Unix-Zeitrechnung (Epoche, 1. Januar 1970) in diese Datei geschrieben wird, werden alle Einträge im Zwischenspeicher, die zuletzt vor dieser Datei aktualisiert wurden, ungültig und werden entfernt. Durch Schreiben von 1 wird alles entfernt. Dies ist die einzige Datei, die immer vorhanden sein wird.

content
Diese Datei enthält, falls vorhanden, eine textuelle Darstellung jedes Eintrags im Zwischenspeicher, einen pro Zeile. Falls ein Eintrag abgelaufen oder aus anderen Gründen ungültig ist, sich aber noch im Zwischenspeicher befindet (beispielsweise weil er aktiv genutzt wird), wird er als Kommentar dargestellt (mit einem vorangestellten Rautezeichen).

channel
Diese Datei agiert, falls vorhanden, als Kanal für die Übergabe von Anfragen vom Kernel-basierten NFS-Server zu einem Programm auf Anwendungsebene zur weiteren Verarbeitung.

Wenn der Kernel Informationen benötigt, die im Zwischenspeicher nicht vorhanden sind, erscheint eine Zeile in der channel-Datei, die den Schlüssel für die Information darstellt. Ein Programm auf Anwendungsebene sollte dies lesen, die Antwort finden und eine Zeile schreiben, die den Schlüssel, die Ablaufzeit und den Inhalt enthält. Zum Beispiel könnte der Kernel nfsd 127.0.0.1
in der Datei auth.unix.ip/content erscheinen lassen. Das Programm auf Anwendungsebene könnte dann nfsd 127.0.0.1 1057206953 localhost
schreiben, um anzuzeigen, dass 127.0.0.1 an localhost zugewiesen werden soll, zumindest für den jetzigen Zeitpunkt.

Falls das Programm select(2) oder poll(2) verwendet, um herauszufinden, ob es aus dem channel lesen kann, dann wird es niemals ein Dateiende sehen, aber wenn alle Anfragen beantwortet wurden, wird es blockieren, bis eine neue Anfrage erscheint.

Im /proc-Dateisystem gibt es vier Dateien, die zum Aktivieren zusätzlicher Verfolgung von Nfsd und darauf bezogenem Code verwendet werden können. Diese sind:
/proc/sys/sunrpc/nfs_debug
/proc/sys/sunrpc/nfsd_debug
/proc/sys/sunrpc/nlm_debug
/proc/sys/sunrpc/rpc_debug

Sie steuern die Verfolgung des NFS-Clients, des NFS-Servers, der Verwaltung der Netzwerksperren (lockd) beziehungsweise der zugrunde liegenden RPC-Ebene. Aus dieser Datei können Dezimalzahlen gelesen oder in diese geschrieben werden. Jede Zahl stellt ein Bitmuster dar, wobei gesetzte Bits bestimmte Verfolgungsklassen aktivieren. In den Header-Dateien des Kernels finden Sie Informationen dazu, welche Zahl welcher Verfolgungsklasse entspricht.

SIEHE AUCH

nfsd(8), rpc.nfsd(8), exports(5), nfsstat(8), mountd(8) exportfs(8).

AUTOR

NeilBrown

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von This file is distributed under the same license as the manpages-de package. und Mario Blättermann <mario.blaettermann@gmail.com> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 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 <debian-l10n-german@lists.debian.org>.

3. Juli 2003