netzwerke:nfs

NFS

Wenn im *nix-Netz auf Dateien im Netzwerk zugreifen möchte kann man NFS benutzen. Es wurde als verteiltes Dateisystem (engl. Distributed File System) konzipiert. NFS benutzt rpcbind.

Bei NFS Version 3 wird der Client-Rechner authentifiziert, NFS Version 4 ermöglicht auch Benutzerauthentifikation. NFS-Dienste sind auch auf Microsoft-Windows-Servern verfügbar, wodurch UNIX-Workstations Zugang zu deren Dateien erhalten können, allerdings wird in gemischten Umgebungen meist SMB mit Samba auf Unixseite verwendet.

Limits

Achtung: Je nach Implementierung gibt es Limits wie Dateigrößenbeschränkungen, bei Debian wheezy beim nfs-kernel-server z.B. 2TB für die Dateigröße. In diesem Fall netcat benutzen, siehe Backup über Netzwerk.

Zuerst muss der NFS-Dienst installiert werden:

sudo apt-get install nfs-kernel-server

:!: Die Freigaben definiert man in der Datei /etc/exports .

Bei NFS V3 werden nur Rechner authentifiziert, also reicht eine Zeile der Art:

/media/freigaben   192.168.0.2(rw,async)

Damit wird das Verzeichnis /media/freigaben dem Client-Rechner 192.168.0.2 zum Lese- und Schreibzugriff zur Verfügung gestellt.

Nach Änderungen bei Datei muss der NFS-Server neu gestartet werden:

sudo /etc/init.d/nfs-kernel-server restart

NFS-Ganesha ist eine userland-Implementierung von NFS (v3, 4.0, 4.1, 4.1 pNFS, 4.2) und unterstützt auch ceph/CephFS als backend.

Fallweise: Auf dem Client-Rechner können wir entfernte NFS-Freigaben normal mit dem mount-Befehl einhängen:

sudo mount -t nfs 192.168.0.1:/media/stoked /media/NFS-Share

Die Option -t gibt das Dateisystem an (NFS), Der Ort auf dem NFS-Server (192.168.0.1) wird danach angegeben und schließlich der lokale Pfad (im Beispiel hier /media/NFS-Share/).

Dauerhaft in der Datei /etc/fstab:

192.168.0.1:/media/stoked       /media/NFS-Share          nfs    defaults,noatime,tcp        0       0

Windows selbst bringt nur Treiber für NFSv3 mit:

  • unter XP im Paket „Microsoft Windows Services for UNIX“
  • Vista (Ultimate/Enterprise) im „Subsystem for UNIX-based Applications“
  • Win7 ?

NFSv4 kann man Windows entweder

Ein Java-Programm namens JFTP hilft dabei.

Falls nicht schon installiert, wird das aktuelle Java Runtime Environment (JRE) von Sun benötigt.

Im Programm dann bei „File“ und „Connect to NFS Server“ folgendes eingeben:

URL: nfs://192.168.0.1