9.3. NFS-Server-Konfiguration

Es gibt drei Wege, einen NFS-Server unter Red Hat Enterprise Linux zu konfigurieren: die Verwendung von NFS Server Configuration Tool (redhat-config-nfs), die manuelle Veränderung der Konfigurationsdatei (/etc/exports), oder die Verwendung des /usr/sbin/exportfs Befehls.

Für Anweisungen bezüglich des NFS Server Configuration Tool, siehe Kapitel Network File System (NFS) im Red Hat Enterprise Linux Handbuch zur System-Administration. Der Rest dieses Abschnittes behandelt die manuelle Bearbeitung von /etc/exports und die Verwendung des /usr/sbin/exportfs Befehls für den Export von NFS-Dateisystemen.

9.3.1. NFS-Server-Konfigurationsdatei

Die Datei /etc/exports kontrolliert, welche Dateisysteme an Remote-Hosts exportiert werden und legt die Optionen fest. Leere Zeilen werden ignoriert, Kommentare können mithilfe des Rautezeichens # am Zeilenanfang eingegeben werden. Lange Zeilen können durch einen inversen Schrägstrich (\ ) umgebrochen werden. Jedes exportierte Dateisystem sollte eine eigene Zeile haben. Listen von autorisierten Hosts, die nach einem exportierten Dateisystem platziert sind, müssen durch Leerzeichen getrennt werden. Die Optionen für alle Hosts müssen in Klammern direkt nach der Hostbezeichnung stehen. Zwischen dem Host und der ersten Klammen darf kein Leerzeichen sein..

Eine Zeile für ein exportiertes Dateisystem hat die folgende Struktur:

<export> <host1>(<options>) <hostN>(<options>)...

Ersetzen Sie in dieser Struktur <export> mit dem Verzeichnis, das exportiert wird. Ersetzen Sie <host1> mit dem Host oder Netzwerk, mit dem der Export gemeinsam verwendet wird, und ersetzen Sie (<options> mit den Optionen für diesen Host oder dieses Netzwerk. Zusätzliche Hosts können in einer Liste durch Leerzeichen getrennt festgelegt werden.

Die folgende Methode kann dazu verwendet werden, Hostnamen festzulegen:

/etc/exports benötigt in seiner einfachsten Form nur die Festlegung des Verzeichnisses, das exportiert wird, und den Host, der es verwenden kann. Z.B:

/exported/directory bob.example.com

In diesem Beispiel kann bob.example.com /exported/directory/ mounten. Weil in diesem Beispiel keine Optionen festgelegt wurden, treten die folgenden NFS-Optionen in Kraft:

WichtigWichtig
 

Standardmäßig werden access control lists (ACLs) von NFS unter Red Hat Enterprise Linux unterstützt. Um diese Funktion zu deaktivieren, legen Sie die no_acl Option fest, wenn Sie das Dateisystem exportieren. Mehr Informationen zu dieser Funktion finden Sie im KapitelNetwork File System (NFS) im Red Hat Enterprise Linux Handbuch zur System-Administration.

Jede standardmäßige Einstellung für jedes exportierte Dateisystem muss ausdrücklich überschrieben werden. Wenn z.B. die rw Option nicht festgelegt ist, dann wird das exportierte Dateisystem schreibgeschützt gemeinsam verwendet. Im Folgenden eine Beispielszeile von/etc/exports, die zwei Standardoptionen überschreibt:

/another/exported/directory 192.168.0.3(rw,sync)

In diesem Beispiel kann 192.168.0.3 /another/exported/directory/ beschreibbar mounten und alle Übertragungen auf die Platte werden auf der Platte gesichert, bevor die Schreibanfrage des Client abgeschlossen wird.

Wo keine Standardwerte angegeben sind, stehen zusätzliche Optionen zur Verfügung. Diese bieten die Möglichkeit, das Überprüfen der Sub-Trees zu deaktivieren, erlauben den Zugriff von unsicheren Ports sowie das Sperren unsicherer Dateien (für bestimmte frühere NFS-Client-Implementierungen notwendig). Auf der exports-man-Seite finden Sie weitere Details über diese weniger verwendeten Optionen.

WarnungWarnung
 

Das Format der Datei /etc/exports ist sehr präzisegestaltet, besonders im Bezug auf Leerzeichen. Denken Sie daran, exportierte Dateisystem immer getrennt von Hosts aufzuführen und Hosts durch Leerzeichen voneinander trennen. Es sollten jedoch keine weiteren Leerzeichen in der Datei sein, es sei denn, sie werden in Kommentarzeilen verwendet.

So bedeuten zum Beispiel die folgenden beiden Zeilen nicht das gleiche:

/home bob.example.com(rw)
/home bob.example.com (rw)

Die erste Zeile erlaubt nur Benutzern von bob.example.com den Zugriff im beschreibbaren Modus auf das Verzeichnis /home. Die zweite Zeile erlaubt Benutzern von bob.example.com, das Verzeichnis im schreibgeschützten Modus zu mounten (der Standard), alle anderen können es im beschreibbaren Modus mounten.

Für genaue Anweisungen zur Konfiguration eines NFS-Servers durch Bearbeitung von /etc/exports, siehe Kapitel Server Security in der Red Hat Enterprise Linux Handbuch zur System-Administration.

9.3.2. Der exportfs Befehl

Jedes Dateisystem, das via NFS an Remote-Benutzer exportiert wird, sowie die Zugriffsrechte für diese Dateisysteme werden in der Datei /etc/exports abgelegt. Wenn der nfs Dienst startet, wird diese Datei mit dem /usr/sbin/exportfsBefehl geöffnet und gelesen. Dann werden die für Remote-Benutzer verfügbaren Dateien an rpc.mountd und rpc.nfsd weitergegeben.

Mit der manuellen Ausführung des Befehls /usr/sbin/exportfs wird dem Root-Benutzer gestattet, Verzeichnisse selektiv zu exportieren oder nicht zu exportieren, ohne den NFS-Dienst neu starten zu müssen. Wenn usr/sbin/exportfs die korrekten Optionen erhält, wird dasexportierte Dateisystem in /var/lib/nfs/xtab gespeichert. Da rpc.mountd sich für das Festlegen der Privilegien für den Zugriff auf ein Dateisystem auf die Datei xtab bezieht, werden Änderungen an der Liste der exportierten Dateisysteme sofort wirksam.

Bei der Verwendung des Befehls /usr/sbin/exportfs stehen folgende übliche Optionen zur Verfügung:

Wenn für den Befehl /usr/sbin/exportfs keine Optionen eingegeben werden, wird eine Liste der aktuell exportierten Dateisysteme angezeigt.

Für weitere Informationen über den /usr/sbin/exportfs Befehlsiehe exportfs man-Seite.