Einführung und Grundlagen
In dieser grundlegenden Lerneinheit erfährst du, was das Network File System (NFS) ist und wie es sich in die Welt der verteilten Dateisysteme einordnet. Du lernst die fundamentalen Konzepte und Funktionsweisen von NFS kennen, die dir später bei der praktischen Einrichtung von Dateifreigaben in Netzwerken helfen. Diese Einführung schafft das notwendige Basiswissen für die spätere Konfiguration und Verwaltung von NFS-Systemen im Unternehmensumfeld.
Einführung
Stell dir vor: Du arbeitest in einem Unternehmen mit mehreren Abteilungen und Standorten. Die Mitarbeiter sollen auf dieselben Dateien zugreifen können, egal ob sie im Büro nebenan sitzen oder am anderen Ende des Landes. Doch wie teilst du Dateien effizient, sicher und verlässlich über das Netzwerk? Genau hier kommt NFS ins Spiel.

Denn NFS, das Network File System, löst genau dieses Problem: Es erlaubt den gemeinsamen Zugriff auf Dateien über Netzwerkgrenzen hinweg, als wären sie lokal gespeichert. Diese Technik bildet das Rückgrat vieler Server-Infrastrukturen in Unternehmen und Rechenzentren.
Lernziele
Nach dieser Lerneinheit kannst du:
- den grundlegenden Kommunikationsablauf und die Funktionsweise von NFS erklären.
- die zentralen Unterschiede zwischen den NFS-Versionen v2, v3 und v4 benennen und bewerten.
- das Close-to-Open-Konsistenzmodell verstehen und dessen Bedeutung für die Datenkonsistenz beschreiben.
- die Stärken und Schwächen von NFS im Hinblick auf Sicherheit, Skalierung und Einsatzszenarien beurteilen.
Überleitung
Um zu verstehen, warum NFS so leistungsfähig und dennoch wartungsintensiv sein kann, schauen wir uns zuerst an, was NFS eigentlich ist, wie es funktioniert und welche Konzepte dahinterstecken.
Einordnung von NFS in verteilte Dateisysteme
Network File System (NFS) ist ein Protokoll, das den transparenten Zugriff auf Dateien über ein Netzwerk hinweg ermöglicht. Dabei können Clients auf entfernte Dateien zugreifen, als wären sie lokal gespeichert.
NFS ist ein typisches Beispiel für ein verteiltes Dateisystem, da es Dateizugriffe über mehrere Systeme hinweg koordiniert.

- OSI-Schichtenmodell: NFS arbeitet hauptsächlich auf der Anwendungsschicht (Schicht 7), nutzt für die Datenübertragung aber auch die Transportschicht (Schicht 4) durch Remote Procedure Calls (RPC) über TCP oder UDP.
Bedeutung verteilter Dateisysteme
Verteilte Dateisysteme sind für moderne IT-Umgebungen unverzichtbar, weil sie:
- den gleichzeitigen Zugriff von mehreren Clients auf Dateien ermöglichen,
- die zentrale Verwaltung von Speicherressourcen vereinfachen,
- eine skalierbare Infrastruktur durch Verteilung auf mehrere Server schaffen,
- durch Replikation und Redundanz eine höhere Ausfallsicherheit bieten.
Vergleich: NFS und andere Dateisysteme
Um NFS besser einordnen zu können, lohnt sich ein Blick auf verwandte Technologien. Die folgende Tabelle gibt dir einen Überblick:
| System | Einsatzbereich | Stärken |
|---|---|---|
| NFS | Unix/Linux-Umgebungen | Einfach, effizient, breit unterstützt |
| SMB | Windows-Umgebungen | Integrierte Authentifizierung |
| HDFS | Big Data / Hadoop | Hohe Fehlertoleranz, Datendurchsatz |
| Ceph | Cluster / Cloud Storage | Hohe Verfügbarkeit, selbstheilend |
| GlusterFS | Scale-out-NAS | Skalierbar, verteilt |
Hinweis: NFS ist gut geeignet für kleine bis mittlere Netzwerke. Für Hochverfügbarkeit und verteilte Cloud-Infrastrukturen sind Ceph oder GlusterFS empfehlenswerter.
Architektur und Komponenten von NFS
Client-Server-Modell
NFS basiert auf einem klassischen Client-Server-Modell:
- Der NFS-Server exportiert (freigibt) bestimmte Verzeichnisse für das Netzwerk.
- Der NFS-Client bindet diese Verzeichnisse ein und verwendet sie lokal.
NFS-Server: Export von Verzeichnissen
Auf dem Server werden exportierte Pfade in der Datei /etc/exports definiert:
- Welche Verzeichnisse sollen freigegeben werden?
- Welche Clients dürfen darauf zugreifen?
- Welche Rechte gelten (nur Lesezugriff oder Lese-/Schreibzugriff)?
NFS-Client: Einbindung der Ressourcen
Ein Client kann mit folgendem Befehl ein entferntes Verzeichnis einbinden:
mount -t nfs server:/export/pfad /mnt/zielDas eingebundene Verzeichnis ist danach wie ein lokaler Ordner nutzbar.
Remote Procedure Call (RPC) und Portmapper
NFS nutzt Remote Procedure Calls (RPC), um Funktionen wie Dateiöffnung oder -lesen auf dem Server auszuführen. Die Zuordnung der Dienste zu den Ports erfolgt über den Portmapper (auch rpcbind).
Datei-Identifikation: Filehandles
Jede Datei wird über ein eindeutiges Filehandle identifiziert. Dieses Handle erlaubt dem Client den direkten Zugriff auf die Datei, auch wenn sich der Pfad geändert hat.
Wie funktioniert NFS auf technischer Ebene?
Wenn ein Client auf ein entferntes Dateisystem zugreifen will, beginnt der Ablauf mit einer Anfrage an den Portmapper des Servers. Dieser gibt den zuständigen Port für den NFS-Dienst zurück.

Anschließend erfolgt die Kommunikation über das Remote Procedure Call (RPC)-Protokoll. Der Client kann nun das entfernte Dateisystem mounten und Dateizugriffe wie Lesen, Schreiben oder Löschen durchführen.
Welche zentralen Funktionen stellt NFS bereit?
NFS unterstützt eine Reihe grundlegender Dateioperationen:
- Mount: Einbinden eines entfernten Dateisystems
- Lookup: Auflösen eines Pfads in einen Dateihandle
- Read / Write: Zugriff auf Dateiinhalt
- Create / Remove: Anlegen oder Löschen von Dateien
- Getattr / Setattr: Lesen und Ändern von Dateimetadaten (z. B. Zugriffsrechte)
Wie löst NFS das Problem der Konsistenz bei Caching?
Um Zugriffe zu beschleunigen, speichert NFS Daten temporär im Cache. Dabei entsteht das Risiko veralteter Inhalte. NFSv4 setzt hier auf das sogenannte Close-to-Open-Konsistenzmodell:
- Änderungen an einer Datei werden beim Schließen zurück an den Server übertragen
- Beim Öffnen prüft der Client, ob sich die Datei seit dem letzten Zugriff verändert hat
Dieses Modell bietet einen guten Kompromiss zwischen Performance und Datenkonsistenz.
Welche Vor- und Nachteile hat NFS?
Bevor du dich für NFS entscheidest, solltest du die Stärken und Schwächen kennen. Die folgende Tabelle fasst die wichtigsten Punkte zusammen:
| Kategorie | Vorteile | Nachteile |
|---|---|---|
| Einfachheit | Leicht einzurichten und zu verwalten | Begrenzte Funktionalität im Vergleich zu SMB |
| Sicherheit | NFSv4 mit Kerberos möglich | Frühere Versionen sind anfällig |
| Performance | Sehr schnell im LAN | Leistungsabfall über WAN-Verbindungen |
| Skalierbarkeit | Gut für kleine/mittlere Umgebungen | Bei großen Clustern sind Ceph/GlusterFS besser |
Wie du siehst, hängt die Eignung von NFS stark vom Einsatzszenario ab. Für lokale Linux-Umgebungen ist es eine ausgezeichnete Wahl, während andere Szenarien alternative Lösungen erfordern können.
Merkhilfe: NFS ist ideal für Linux-lastige Netzwerke mit lokalem Fokus. Für Windows-Umgebungen ist SMB besser, für hochverteilte Systeme Ceph oder GlusterFS.
Was bringen NFSv4.1 und 4.2 an Erweiterungen?
Mit den Erweiterungen von NFSv4 wurden zentrale Schwächen adressiert:
-
NFSv4.1 (2010, RFC 5661):
- Einführung von pNFS (Parallel NFS): Verteilter Zugriff auf mehrere Speicherquellen
- Höhere Performance durch Lastverteilung
-
NFSv4.2 (2016, RFC 7862):
- Server Side Copy: Serverseitiges Kopieren von Dateien ohne Übertragung zum Client
- Erweiterte IO-Hinweise für anwendungsspezifische Optimierungen
Welche Vor- und Nachteile hat NFS?
| Vorteile von NFS | Nachteile von NFS |
|---|---|
| Gute Integration in Unix-/Linux-Systeme | Frühere Versionen unsicher (keine Verschlüsselung, kaum Authentifizierung) |
| Mit NFSv4: Sicherheit, integriertes Locking, nur ein Port | Leistungseinbußen über WAN (hohe Latenz) |
| Weite Verbreitung auf gängigen Betriebssystemen | Komplexität bei Skalierung (aufwendige Konfiguration) |
Zusammenfassung und Ausblick
Zusammenfassung:
In dieser Lerneinheit hast du die Grundlagen sowie das Protokoll und die technischen Details von NFS (Network File System) kennengelernt. Die folgende Grafik zeigt die wichtigsten Konzepte im Überblick:

Einordnung und Funktion von NFS
- NFS ist ein Netzwerkprotokoll, das verteilten Zugriff auf Dateisysteme ermöglicht. Es erlaubt Clients, Dateien auf entfernten Servern so zu nutzen, als wären sie lokal gespeichert.
- NFS arbeitet hauptsächlich auf der Anwendungsschicht (Schicht 7) des OSI-Modells, nutzt aber auch die Transportschicht (Schicht 4) durch RPC über TCP oder UDP.
- Verteilte Dateisysteme wie NFS sind wichtig für die Zentralisierung von Daten, gemeinsame Dateinutzung, Skalierbarkeit und Ausfallsicherheit.
Technische Umsetzung und Versionen
- Der Zugriff erfolgt über den Portmapper und dann über das Remote Procedure Call (RPC)-Protokoll.
- NFS stellt zentrale Operationen wie Mount, Read/Write, Create/Remove und Attributzugriffe bereit.
- Die Konsistenz wird durch das Close-to-Open-Modell sichergestellt, das beim Dateiöffnen und -schließen Prüfungen und Aktualisierungen durchführt.
- Zwischen den Versionen NFSv2, NFSv3 und NFSv4 bestehen erhebliche Unterschiede hinsichtlich Performance, Sicherheit, Protokollwahl und Funktionalität.
- Erweiterungen wie NFSv4.1 (pNFS) und NFSv4.2 (Server Side Copy) verbessern Skalierbarkeit und Effizienz.
Bewertung im Vergleich
- NFS ist leistungsstark im LAN, aber nur bedingt für WAN geeignet.
- Gegenüber SMB, AFP und DFS punktet NFS durch seine Plattformunabhängigkeit und Einfachheit, hat aber in puncto Sicherheit und Skalierung Konkurrenz.
Ausblick:
In der nächsten Einheit betrachten wir die konkrete Architektur eines NFS-Systems. Dabei lernst du, welche Komponenten (Client, Server, Daemons, Mount-Mechanismen) beteiligt sind, wie diese zusammenspielen und wie eine typische Konfiguration in der Praxis aussieht.