nfsd(7) | Miscellaneous Information Manual | nfsd(7) |
nfsd - Spezialdateisystem zum Steuern eines Linux-NFS-Servers
mount -t nfsd nfsd /proc/fs/nfsd
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.
Die drei Dateien im nfsd-Dateisystem sind:
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.
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:
Jedes Zwischenspeicherverzeichnis kann eine bis drei Dateien enthalten. Dies sind:
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.
nfsd(8), rpc.nfsd(8), exports(5), nfsstat(8), mountd(8) exportfs(8).
NeilBrown
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 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.
3. Juli 2003 |