Problem bei NFS und den UID's[gelöst]

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
Benutzeravatar
Tintom
Moderator
Beiträge: 3069
Registriert: 14.04.2006 20:55:15
Wohnort: Göttingen

Problem bei NFS und den UID's[gelöst]

Beitrag von Tintom » 22.04.2006 18:06:06

Hallo,

nach tagelanger Google-Suche und Manpage-lesen weiss ich nicht mehr weiter...

Mein Problem:

Ich will per NFS auf den Server zugreifen. Das mounten klappt wunderbar, jedoch kann ich nur als root (mit der Option no_root_squash) in das gemountete Verzeichnis wechseln, als normaler User gibts eine Fehlermeldung, dass mir die Berechtigung fehlt. Die UID's sowie die GID's sind auf beiden Rechnern gleich.

Was kann ich noch tun ?
Zuletzt geändert von Tintom am 23.04.2006 16:45:12, insgesamt 1-mal geändert.

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von rendegast » 22.04.2006 18:55:00

Hallo,

wie sieht denn Deine /etc/exports aus ?
wird auch fuer den mountenden Benutzer freigegeben?

wie sieht Dein mount-Befehl aus? Gibt es die Option 'user'?

EDIT:
Wie sind denn die Dateirechte im gemounteten Verzeichnis ('ls -l') ?
Muss der Benutzer durch ein Verzeichnis ohne Rechte fuer ihn?

Benutzeravatar
Tintom
Moderator
Beiträge: 3069
Registriert: 14.04.2006 20:55:15
Wohnort: Göttingen

Beitrag von Tintom » 22.04.2006 19:48:04

rendegast hat geschrieben:Hallo,

wie sieht denn Deine /etc/exports aus ?

Code: Alles auswählen

p3-dual:~# cat /etc/exports
# /etc/exports auf media_server
# Befehl zum vollst. Zugriff von Tinos Rechner
# auf Verzeichnis /home/derlynxx/test
/home/derlynxx/test gaming-tino(rw,async,anonuid=1002)
wird auch fuer den mountenden Benutzer freigegeben?
wie meinst du das genau ?

wie sieht Dein mount-Befehl aus? Gibt es die Option 'user'?
Das Verzeichnis hab ich in der fstab, hier:

Code: Alles auswählen

# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
/dev/hda5       /               ext3    defaults,errors=remount-ro 0       1
/dev/hdd        /media/cdrom0   iso9660 ro,user,noauto  0       0
/dev/hdc        /media/cdrom1   iso9660 ro,user,noauto  0       0
/dev/fd0        /media/floppy0  auto    rw,user,noauto  0       0
/dev/hda6	/media/hda6	ntfs	ro,uid=derlynxx,umask=4 0 0
18.5.19.90:/home/derlynxx/test /home/derlynxx/testmount nfs rw,user,auto,bg,rsize=8192,wsize=8192,intr 0 0
EDIT:
Wie sind denn die Dateirechte im gemounteten Verzeichnis ('ls -l') ?

Code: Alles auswählen

p3-dual:/home/derlynxx# ls -l
insgesamt 120
drwx------  4 derlynxx derlynxx     4096 2006-04-16 11:06 Desktop
-rw-r--r--  1 derlynxx derlynxx      121 2006-04-15 12:53 samba
drw-rw-r--  2 derlynxx nfs_server   4096 2006-04-19 17:13 test       <----
-rwxr-xr-x  1 root     root       102288 2006-04-15 11:22 wireless-tools_27-2_i386.deb
drwxr-xr-x  2 root     root         4096 2006-04-19 17:00 wlan_driver
Ich hab schon mehrfach die Gruppenzugehörigkeit und Owner geändert, half auch nichts
Muss der Benutzer durch ein Verzeichnis ohne Rechte fuer ihn?
Nein

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von rendegast » 22.04.2006 21:18:22

p3-dual:/home/derlynxx# ls -l
...
ich meinte eher, dass es in 'p3-dual:/home/derlynxx/test' ausgefuehrt wird.
  • wird auch fuer den mountenden Benutzer freigegeben?
wie meinst du das genau ?
Dass so etwas wie 'anongid' verwendet wird.
Vielleicht hilft dieser Hinweis aus der man-exports:
...
/home/joe pc001(rw,all_squash,anonuid=150,anongid=100)
...
"all_sqash"

Benutzeravatar
Tintom
Moderator
Beiträge: 3069
Registriert: 14.04.2006 20:55:15
Wohnort: Göttingen

Beitrag von Tintom » 22.04.2006 23:09:54

p3-dual:/home/derlynxx# ls -l
...
ich meinte eher, dass es in 'p3-dual:/home/derlynxx/test' ausgefuehrt wird.

Okay, der Befehl ging wieder nur mit dem no_root_squash-Flag

Code: Alles auswählen

p3-dual:/home/derlynxx/test# ls -l
insgesamt 80180
-r-xr-x--x  1 root root  5646704 2006-04-21 14:29 Ghetto.mp3
-rwxr-xr-x  1 root root 16769166 2006-04-19 17:09 jre-1_5_0_06-linux-i586.bin
-r-xr-x--x  1 root root 59580451 2006-04-19 16:35 Videobearbeitung.exe
Dass so etwas wie 'anongid' verwendet wird.
Vielleicht hilft dieser Hinweis aus der man-exports:
...
/home/joe pc001(rw,all_squash,anonuid=150,anongid=100)
...
"all_sqash"[/quote]

Hat leider auch nichts bewirkt :cry:

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von rendegast » 22.04.2006 23:26:41

Wie ist es denn, wenn der Benutzer den Mount-Vorgang ausfuehrt und nicht das System beim Starten? (reine Verzweiflung)

Benutzeravatar
Tintom
Moderator
Beiträge: 3069
Registriert: 14.04.2006 20:55:15
Wohnort: Göttingen

Beitrag von Tintom » 23.04.2006 00:09:31

rendegast hat geschrieben:Wie ist es denn, wenn der Benutzer den Mount-Vorgang ausfuehrt und nicht das System beim Starten? (reine Verzweiflung)
Das Mounten klappt problemlos, aber als User hab ich dann wieder keine Berechtigung...

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von rendegast » 23.04.2006 01:40:25

Hallo, ich denke ich habe es:

Die Lage ist diese:
.../test -nfs-> .../testmount

Ich habe bei meiner Nachfrage nach 'ls -l' eigentlich das gemountete .../testmount gemeint (verwirrt), aber Du hast das exportierte .../test gelistet, was denn aber besser ist:
Du hast dort keine Rechte (in .../testmount) weil der user an test nur das Recht rw hat, nicht rwx. Du brauchst x um das Verzeichnis ausfuehrbar, also begehbar zu machen.

In .../testmount wird der Benutzer nichts machen koennen, weil die Dateien dort (also in .../test) root:root gehoeren, das musst Du aendern.

Weiterhin: anonuid=.....
Diese Option gilt nach manpage fuer Mounts von Rechnern/Netzen, die nicht explizit in der /etc/exports erwaehnt werden.

nfs-server kann und darf nicht die Datei-Rechte der exportierten Verzeichnisse uebergehen.

Benutzeravatar
Tintom
Moderator
Beiträge: 3069
Registriert: 14.04.2006 20:55:15
Wohnort: Göttingen

Beitrag von Tintom » 23.04.2006 12:08:27

rendegast hat geschrieben:Hallo, ich denke ich habe es:

Die Lage ist diese:
.../test -nfs-> .../testmount

Ich habe bei meiner Nachfrage nach 'ls -l' eigentlich das gemountete .../testmount gemeint (verwirrt), aber Du hast das exportierte .../test gelistet, was denn aber besser ist:
Du hast dort keine Rechte (in .../testmount) weil der user an test nur das Recht rw hat, nicht rwx. Du brauchst x um das Verzeichnis ausfuehrbar, also begehbar zu machen.

In .../testmount wird der Benutzer nichts machen koennen, weil die Dateien dort (also in .../test) root:root gehoeren, das musst Du aendern.

Weiterhin: anonuid=.....
Diese Option gilt nach manpage fuer Mounts von Rechnern/Netzen, die nicht explizit in der /etc/exports erwaehnt werden.

nfs-server kann und darf nicht die Datei-Rechte der exportierten Verzeichnisse uebergehen.
Okay, danke für Deinen Tipp. Das Positive zuerst: Ich kann jetzt als User auf das Verzeichnis zugreifen :D
Das Negative an der Sache ist, dass das Verzeichnis als leer angezeigt wird.

Folgendes hab ich gemacht:

Auf dem Server

/etc/exports geändert:

Code: Alles auswählen

p3-dual:/home/derlynxx/test# cat /etc/exports
# /etc/exports auf media_server
# Befehl zum vollst. Zugriff von Tinos Rechner
# auf Verzeichnis /home/derlynxx/test
/home/derlynxx/test gaming-tino(rw,async,no_root_squash)
Zugriff von ../test für jeden:

Code: Alles auswählen

p3-dual:/home/derlynxx# ls -l
insgesamt 120
...
drwxrwxrwx  2 derlynxx nfs_server   4096 2006-04-19 17:13 test
...
Im Verzeichnis ../test die Zugehörigkeit der Daten geändert sowie auch Zugriff für jeden:

von

Code: Alles auswählen

p3-dual:/home/derlynxx/test# ls -l
insgesamt 80180
-r-xr-x--x  1 root root  5646704 2006-04-21 14:29 Ghetto.mp3
-rwxr-xr-x  1 root root 16769166 2006-04-19 17:09 jre-1_5_0_06-linux-i586.bin
-r-xr-x--x  1 root root 59580451 2006-04-19 16:35 Videobearbeitung.exe
auf

Code: Alles auswählen

p3-dual:/home/derlynxx/test# ls -l
insgesamt 80180
-rwxrwxrwx  1 derlynxx nfs_server  5646704 2006-04-21 14:29 Ghetto.mp3
-rwxrwxrwx  1 derlynxx nfs_server 16769166 2006-04-19 17:09 jre-1_5_0_06-linux-i586.bin
-rwxrwxrwx  1 derlynxx nfs_server 59580451 2006-04-19 16:35 Videobearbeitung.exe
Auf dem Clienten

Verzeichnis vom Server gemountet:

Code: Alles auswählen

derlynxx@debian-athlon:~$ mount 18.5.19.90:/home/derlynxx/test
derlynxx@debian-athlon:~$ df -h
Dateisystem          Größe Benut  Verf Ben% Eingehängt auf
/dev/hda5             4,9G  1,1G  3,6G  23%  /
tmpfs                 253M     0  253M   0%  /dev/shm
/dev/hda6              48G   16G   32G  33%  /media/hda6
18.5.19.90:/home/derlynxx/test
                      2,7G  2,0G  536M  79%  /home/derlynxx/testmount
Und zu guter Letzt:

Code: Alles auswählen

derlynxx@debian-athlon:~$ cd testmount
derlynxx@debian-athlon:~/testmount$ ls -l
insgesamt 0
Warum zeigt er jetzt immer noch nichts an ? Ich bin am verzweifeln ...

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von rendegast » 23.04.2006 15:50:31

Auch bei mit jetzt aus Verzweiflung ;-)
War bei 'Und zu guter Letzt' das nfs wieder 'umounted'?
Kann root@debian-athlon in .../testmount die Dateien sehen?


EDIT: Mir ist doch noch was eingefallen falls oberes nicht weiterbringt:
in /etc/exports
/home/derlynxx/test gaming-tino(rw,async,no_root_squash)
noch ergaenzen zu

Code: Alles auswählen

/home/derlynxx/test gaming-tino(rw,async,no_root_squash) debian-athlon(rw,async)
(was aber wahrscheinlich unnuetz ist, da Du das Verzeichnis ja schon mounten kannst.)

Benutzeravatar
Tintom
Moderator
Beiträge: 3069
Registriert: 14.04.2006 20:55:15
Wohnort: Göttingen

Beitrag von Tintom » 23.04.2006 16:44:38

rendegast hat geschrieben:Auch bei mit jetzt aus Verzweiflung ;-)
War bei 'Und zu guter Letzt' das nfs wieder 'umounted'?
Kann root@debian-athlon in .../testmount die Dateien sehen?


EDIT: Mir ist doch noch was eingefallen falls oberes nicht weiterbringt:
in /etc/exports
/home/derlynxx/test gaming-tino(rw,async,no_root_squash)
noch ergaenzen zu

Code: Alles auswählen

/home/derlynxx/test gaming-tino(rw,async,no_root_squash) debian-athlon(rw,async)
(was aber wahrscheinlich unnuetz ist, da Du das Verzeichnis ja schon mounten kannst.)
Frag' mich nicht wieso, aber jetzt klappt alles bestens :roll:

ich hab in /etc/hosts als alias noch debian-athlon eingetragen, also siehts bei mir so aus:

Code: Alles auswählen

p3-dual:~# cat /etc/hosts
127.0.0.1	localhost.localdomain	localhost	p3-dual
18.5.19.89	gaming-tino	debian-athlon
18.5.19.90	p3-dual
Und so ähnlich sind die Einträge auch auf dem Clienten.

Klappt wunderbar jetzt..

Jetzt muss ich nur noch Samba für den Windows-PC einrichten :roll:

Okay, dann Danke für die Hilfe :)

Antworten