====== NFS ======
Wenn im *nix-Netz auf Dateien im Netzwerk zugreifen möchte kann man [[wpde>Network_File_System|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.
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 [[linux:backup#Backup über Netzwerk]].
===== Links =====
* [[http://www.freesoftwaremagazine.com/blogs/securing_nfs|Securing NFS]]
* [[http://www.dmoz.org/Computers/Software/Operating_Systems/File_Systems/NFS/|Links zum Thema „NFS“]] im [[http://www.dmoz.org/|Open Directory Project]] (englisch).
* [[http://www.cc.gatech.edu/classes/AY2007/cs4210_fall/papers/nfsOLS.pdf|Why NFS sucks]] (Paper zu NFS-Problemen)
* [[http://www.heise.de/netze/artikel/NFSv4-unter-Linux-221582.html|NFSv4 unter Linux]]
* [[http://www.heise.de/netze/artikel/Das-Netzwerk-Dateisystem-NFSv4-221577.html|Das Netzwerk-Dateisystem NFSv4]]
===== Installation unter Debian/Ubuntu =====
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 =====
[[https://github.com/nfs-ganesha/nfs-ganesha/wiki|NFS-Ganesha]] ist eine userland-Implementierung von NFS (v3, 4.0, 4.1, 4.1 pNFS, 4.2) und unterstützt auch [[software:ceph-storage-cluster|ceph/CephFS]] als backend.
===== NFS-Laufwerke mounten =====
**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
===== NFS unter Windows =====
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
* mit dem kommerziellen Treiber von [[http://connectivity.opentext.com/products/network-file-system.aspx|Hummingbird]]
* oder durch den im Quellcode vorliegenden http://www.citi.umich.edu/projects/nfsv4/windows/|NFSv4.1 Treiber vom "Center for Information Technology Integration" (CITI) der [[http://www.umich.edu/|University of Michigan]]
* oder JFTP (s. u.)
==== JFTP ====
Ein Java-Programm namens [[http://j-ftp.sourceforge.net/|JFTP]] hilft dabei.
Falls nicht schon installiert, wird das aktuelle [[http://java.sun.com/|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