NFS (Network File System) ist ein stabiles File Sharing Protokoll (vergleichbar mit SMB für Windows), dass von Sun Microsystems entwickelt wurde.
Installation
Zunächst muss man wie folgt das Paket für den Server installieren:
sudo apt-get install nfs-kernel-server
Einrichtung
Nach der Installation kann man nun die Einstellungen zur Freigabe einstellen.
Sämtliche Einstellungen werden in der Datei /etc/exports getroffen.
Dabei muss folgender Syntax beachtet werden:
<Pfad zum Verzeichnis> <IP-Adresse oder Name des Clients>(<Optionen>)
Nehmen wir an wir möchten das Verzeichnis /home/user für den Computer mit der IP-Adresse 192.168.1.2 exportieren.
Die /etc/exports sähe dann folgendermaßen aus:
/home/user 192.168.1.2(rw,async)
Hier wurde dem Client Lese- und Schreibzugriff (rw) gegeben. Zusätzlich wurde die Datenkommunikation auf asynchron gestellt (async), was zu einer
schnelleren Datenübertragung führt.
Wenn man nun mehrere PCs dem Verzeichnis zuweisen will, so muss man nicht nocheinmal alles abschreiben. Es besteht die Möglichkeit weitere PCs einfach anzuhängen:
/home/user 192.168.1.2(rw,async) 192.168.1.3(ro,async) 192.168.1.4(rw,async)
Natürlich kann man ein Verzeichnis auch für einen Adressbereich freigeben:
/home/user 192.168.1.*(ro,async)
Nach jeder Änderung an der Konfigurationsdatei müssen die Freigaben neu eingelesen werden.
sudo exportfs -ra
Im Anschluss den Server neustarten.
sudo /etc/init.d/nfs-kernel-server restart
Fehlermeldung - Not starting: portmapper is not running
Erscheint beim Start des NFS Servers die oben genannte Fehlermeldung ist der Portmapper nicht korrekt eingebunden.
Dieses Problem tritt vor allem auf dem Raspberry Pi auf. Mit den nachfolgenden Befehlen lässt sich der Portmapper aktivieren und der NFS Server neustarten.
update-rc.d rpcbind defaults
update-rc.d rpcbind enable
service rpcbind restart
service nfs-kernel-server restart
Berechtigungen
Wenn der Nutzer am PC mit der IP-Adresse 192.168.1.4 eine Datei hochlädt, kann es sein, dass der PC mit 192.168.1.2 diese nicht löschen oder bearbeiten kann. Sollte man dies aber zulassen, kann man festlegen, wem die Dateien gehören:
/home/user 192.168.1.4(rw,async,no_subtree_check,all_squash,anonuid=1000,anongid=1003)
Dabei wendet man einen kleinen Trick an. Die Option all_squash besagt, dass Dateien auf den Anonymous User gelegt werden. Mit den Optionen
anonuid und anongid legt man dessen Nutzer-ID und Gruppen-ID fest. Folglich setzt man diese dann auf den Nutzer/Gruppe, der vollen Zugriff auf /home/user hat.
Siehe auch
Similar articles

Leave a comment