Home / LinuxUser / 2006 / 12 / Netzwerkdateisystem NFS

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

War doch klar...
(229 Punkte bei 11 Stimmen)
Pardus Linux am Ende?
(201 Punkte bei 6 Stimmen)
Meinst Du: Patch CD Updates?
(179 Punkte bei 5 Stimmen)
One goes, one comes
(161 Punkte bei 4 Stimmen)
Speichern in der Cloud
(161 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Shopping
Topsuche
 
Yatego Deutschlands größte Shoppingmall. 10000 Shops,
3.5 Mio Artikel. Alle Bestseller, Servertechnik und Technik Themenwelten.

Notebooks und Netzwerkhardware bei Mercateo günstig kaufen.
Internet Telefonie mit VoIP Telefonen von Gigaset
Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.
Günstige Digitalkameras finden Sie im Preisvergleich.

Einfacher Versand

Netzwerkdateisystem NFS

01.12.2006 Wenn mehrere Linux- oder Unix-Rechner via Netzwerk Daten tauschen sollen, gelingt das am einfachsten mit NFS.

Nach dem Neukauf eines PCs bleibt meist ein älteres Modell mehr oder weniger verwaist zurück. Das eignet sich in der Regel hervorragend, dem Heimnetz als Dateiserver zu dienen. Das von Sun bereits 1985 in der Version 2 veröffentlichte, mittlerweile von der IETF weiterentwickelte Netzwerkdateisystem NFS (Network File System) arbeitet nach dem Client/Server-Prinzip: Ein Server stellt Speicherplatz für die Clients bereit, die diesen ins lokale Dateisystem einhängen.

NFS v3 und v4

Im Linux-Umfeld ist Version 3 des NFS-Protokolls mittlerweile Standard. Die Folgeversion 4 unterstützt erstmals von Haus aus sowohl Benutzerauthentifizierung als auch Verschlüsselung. Der NFSv4-Support in Kernel, Userspace-Programmen und Distributionen ist jedoch mitunter noch experimentell, die Konfiguration komplizierter. Daher und aus Platzgründen befasst sich der Artikel mit der erprobten Version 3. Hinweise zu NFSv4 gibt der Grundlagen-Artikel von Thorsten Scherf in einem Sonderheft unserer Schwesterzeitschrift Linux-Magazin [1]. Ausführliche Grundlagen liefert auch die Linux-Fibel ([2],[3]).

Die Entwickler bei Sun implementierten NFS mit Hilfe entfernter Funktionsaufrufe (RPC)[4]. Server und Client kommunizieren mit Hilfe von IP-Adresse und Port miteinander. NFS setzt sich aus mehreren RPC-basierten Diensten zusammen, die als einzelne Daemons laufen. Ein Dienst namens Portmapper verwaltet die Portnummern der laufenden RPC-Dienste, um zusätzlichen Konfigurationsaufwand durch die statische Vergabe von Portnummern zu vermeiden. Dieser Dienst lauscht auf dem Port 111.

Die Aufgabe eines NFS-Servers teilen sich der NFS-Daemon (rpc.nfsd), der auf Port 2049 lauscht und IO-Anfragen bearbeitet, sowie der Mount-Daemon (rpc.mountd), der beim Einhängen eines Dateisystems hilfreich zur Seite steht. Die weiteren Dienste Network Lock Manager (rpc.lockd) und Network Status Monitor (rpc.statd) handhaben Dateisperren. Zudem gibt es einen Quota-Dienst (rpc.rquotad im Paket quota).

Den eigentlichen NFS-Dienst gibt es in zwei Ausführungen: Als Kernel-Treiber oder als reines Userspace-Programm. Durchgesetzt hat sich der schnellere NFS-Kernel-Server. Der Userspace-Server unterstützt weder Dateien größer 2 GByte noch die genannten Dienste für Dateisperren.

Ping-Pong

Möchte ein Client ein entferntes Verzeichnis mounten, fragt er den Portmapper auf dem Server nach dem Port des Mount-Daemons. Der Portmapper liefert den Port und der Client schickt dem Mount-Daemon eine Mount-Anfrage. Dieser prüft, ob es den Export gibt und der Client die notwendigen Rechte besitzt, diesen zu mounten. Dabei prüft NFS v3 von Haus aus nur, ob die Liste der erlaubten IP-Adressen und Netzwerkbereiche auch die IP-Adresse des Clients enthält.

Ist der Client berechtigt, fragt der Mount-Daemon den NFS-Daemon nach dem Dateihandle für das entsprechende Verzeichnis. Der Mount-Daemon liefert das Handle, das der Client dann für weitere Anfragen verwendet, wie etwas das Auflisten von Verzeichnissen. Für jedes weitere Verzeichnis und jede weitere Datei, die er öffnet, enthält er vom Server ein zusätzliches Dateihandle.

NFS einrichten

Die Konfiguration eines NFS-v3-Servers fällt bei den gängigen Distributionen erfreulich leicht. Sie installieren die Pakete portmap und nfs-utils sowie – falls Sie Suse verwenden – yast-nfs-server und yast-nfs-client. Als Debian- oder Ubuntu-Anwender richten Sie die Pakete nfs-common und nfs-kernel-server ein.

Die Distributionskernel kommen in der Regel mit vollständigen NFS-v3-Support daher. Kompilieren Sie Ihren eigenen Kernel, so aktivieren Sie unter Filesystems | Network File Systems die entsprechenden Optionen (Abbildung 1).

Abbildung 1: Beim Übersetzen eigener Kernle aktivieren Sie für NFS die Optionen NFS server support für den Server und NFS file system support für den Client.

Gängige Distributionen starten die für NFS benötigten Dienste und Kernel-Module über Init-Skripte. Bei Debian heißen diese nfs-kernel-server und portmap, bei Suse nfs-utils und portmap. Unter Suse aktivieren Sie den Dienst am besten mit YaST unter Netzwerkdienste | NFS-Server und schalten ihn dabei auch gleich in der Personal Firewall frei (Abbildung 2). Debian und Ubuntu aktivieren die Dienste nach der Installation automatisch. Von Hand starten Sie sie durch Aufruf des Init-Skriptes: /etc/init.d/nfs-kernel-server start. Mit rpcinfo -p von portmap erhalten Sie eine Liste, welche Dienste auf welchen Ports laufen.

Abbildung 2: YaST bietet beim Starten des NFS-Servers praktischerweise gleich mit an, in der Firewall den passenden Port für den Dienst zu öffnen.

Für den Client brauchen Sie einen Kernel mit NFS filesystem support (siehe Abbildung 1). Der Befehl cat /proc/filesystems | grep nfs zeigt die Verfügbarkeit des Dateisystems, modprobe nfs lädt es gegebenenfalls nach. Installieren Sie zudem für Ubuntu oder Debian das Paket nfs-common und für Suse nfs-utils.

Einem Freund empfehlen    Druckansicht Bookmark and Share
Kommentare

973 Hits
Wertung: 0 Punkte (1 Stimme)

Schlecht Gut

Infos zum Autor

Martin Steigerwald

Martin Steigerwald

Martin Steigerwald arbeitet als Trainer, Consultant und Systemadministrator bei der team(ix) GmbH in Nürnberg. Schwerpunkte seiner Tätigkeit sind Linux-Schulungen, die Konzeption, Installation und Wartung solider IT-Infrastruktur auf Basis von Debian Linux sowie Second Level Support für Linux als Business-Desktop bei Kunden von teamix(ix).


Infos zur Publikation

Infos zur Publikation

title_2012_02

Aktuelle Ausgabe kaufen:

Heft bestellen Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,50 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 56,10) können Sie im LNM-Shop bestellen.

Tipp der Woche

Duden Korrektor unter 64-Bit
Duden Korrektor unter 64-Bit
Tim Schürmann, 06.02.2012 10:36, 0 Kommentare

Der Duden Korrektor bietet eine äußerst nützliche Rechtschreib- und Grammatikkorrektur für LibreOffice und bringt in der aktuellen Version 8 e...

Aktuelle Fragen

rndc reload zone - failed bad zone
Ludwig jun. B., 06.02.2012 16:08, 2 Antworten
Schönen guten Tag, ich habe folgendes Problem. Immer wenn ich folgendes Kommando ausführen bek...
Skype für 64-Bit-Prozessor u. Suse 12.1
Klaus Sigerist, 05.02.2012 11:39, 3 Antworten
Hallo Gemeinde! Ich bin nur ein einfacher Nutzer und habe Probleme mit der Installation von Skyp...
8! Anfängerfrage :) Wie finde ich in Ubuntu die Datenträger (Bild, Text)
samuel leusam, 04.02.2012 15:53, 1 Antworten
Ich habe neu Ubuntu. Wenn ich die SD Karte im Laptop einstecke, erkennt er sie und gibt ihr den N...
OpenSuse 12.1-Service Kit 01/12
Christoph-J. Walter, 28.01.2012 08:52, 2 Antworten
Hallo Gemeinde, ich habe 12.1 neu installiert. Alles in Ordnung! Nun möchte ich das Service Kit (...
Ubuntu 11.10 konfigurieren
Michael Hinz, 27.01.2012 17:52, 1 Antworten
Ubuntu läuft bei mir. Allerdings nur, wenn die Daten-CD eingelegt ist. Unabhängig von Bios-Einste...