Per NFS kein Schreibzugriff

bananenBrot

Well-Known Member
Hi,

ich habe einen OpenBSD 4.3 auf dem ich ein Verzeichnis /mnt/usbstick (gemounteter USB Stick) freigebe.

Code:
/mnt/usbstick -alldirs -network 192.168.0 -mask 255.255.255.0

Wenn ich nun auf meinem Client (MacOS) das NFS Share mounte
Code:
sudo mount_nfs -P meinserver:/mnt/usbstick /private/mnt
kann ich lesend drauf Zugreifen.
Bei Schreibversuchen bekomme ich ein "mkdir: test: Permission denied"

Aber warum? Die exports Datei ist soweit ja korrekt.

In /var/Log/messages wird nichts dazu geloggt. ;'(
 
Hast Du vielleicht ein Windows Dateisystem auf dem Stick? Da das Dateisystem keine Berechtigungen unterstuetzt, uebernehmen alle Dateien die Berechtigungen des Verzeichnisses, indem das Device gemountet wurde.

Du musst das entweder also die Berechtigungen aendern oder mit -s und -g den User und die Gruppe angeben, dem die Dateien des Sticks gehoeren.

BTW: man mount_msdos ;)
 
Hm ich glaube das hat damit primär erstmal nichts zu tun.
Ich habe parallel ein Verzeichnis /nfs freigegeben
Code:
/nfs -alldirs -network 192.168.178 -mask 255.255.255.0
Und hier bekomme ich ebenfalls ein "Permission denied"
Code:
sudo mount_nfs -P meinserver:/nfs /private/mnt2
mkdir test
mkdir: test: Permission denied
 
Arbeitest Du auf dem Client als root? Unschoen oder?

Ansonsten stehen die Details in der man Page 'exports'. Dort steht naemlich, dass maproot den User festlegt, der verwendet werden soll, wenn man via NFS als root zugreift.

Wenn Dein User auf dem Client die ID 4711 hat, kannst Du doch einfach das Verzeichnis, unter dem der USB Stick haengt, der User ID 4711 zuordnen.
 
Ich habe testweise mal auf dem Client per root (uid 0) zugegriffen - auch "Permission denied" (mit -maproot=root)

Code:
/nfs -mapall=root -network 192.168.178 -mask 255.255.255.0

Moment - wenn ich also -mapall=root (dh wer auch immer sich verbindet, der soll mit Rootrechten auf das Share können) in die exports zu der Freigabe schreibe, dann muss der Zugriff doch funktionieren. Ich bekomme aber selbst dann ein "Permission denied"

NFS ist wirklich manchmal echt unschön
 
Zuletzt bearbeitet:
Nein! In der Man Page steht, dass maproot angibt, welcher User verwendet werden soll, wenn root zugreift.

Code:
-maproot=testuser
Wenn Du nun als root ueber NFS zugreifst, wird auf dem Server fuer den Zugriff der User testuser verwendet.

Fuer alle anderen User muessen die IDs gleich sein. Wenn Dein User auf dem Client die User ID 4711 hat, dann muessen exportierte Verzeichnisse und Dateien auch der User ID 4711 zugeordnet sein.
 
Lies die Man Pages. Ich habe keine Lust, den Inhalt der Man Pages fuer Dich zusammenzufassen.

In der OpenBSD FAQ steht auch was zu NFS.

Auf dem Server:
Code:
$ mkdir /nfs
$ chown 4711 /nfs

Dann Deine /etc/exports, ohne maproot.

Und auf dem Client, wenn Dein User die ID 4711 hat.
Code:
$ sudo mount -t nfs server:/nfs /mnt
$ mkdir /mnt/test

Das funktioniert.
 
Zurück
Oben