Nein, genau das muß der Server nicht wissen.Trollkirsche hat geschrieben:13.04.2019 20:34:34Der Server muss doch wissen, wer welchen Zugriff auf die Dateien hat?
Gruppen-ID, Benutzer-ID und Dateirechte sind nur Dateiattribute, die auf dem Dateisystem gespeichert werden, wobei Gruppen-ID und Benutzer-ID nur in Form einer Zahl gespeichert werden.Spielen die Gruppen und Dateirechte auf dem Server also gar keine Rolle?
Natürlich, aber das macht im Falle von NFS der ClientDie müssen doch irgendwie abgeglichen werden?
Der Server weiß es nicht und muß es auch nicht wissen.Nehmen wir an ich hab auf dem Client einen Benutzer. Woher weiss der Server nun, was der Benutzer darf und was nicht, wenn nicht vorher auf dem Server festgelegt?
Dein Benutzer fragt schließlich den Linuxkernel auf dem Client, auf eine Bestimmte Datei zugreifen zu wollen. Der Clientkernel fragt nun den Server, ob die Datei existiert, welche Benutzernummer und Gruppennummer der Datei zugeordnet ist und wie die Dateirechte aussehen. Dann entscheidet der Clientkernel, ob Zugriff gestattet wird.
Nein. Das handhabt alles der Linuxkernel des Clients.Selbst wenn der Benutzer auf dem Server nicht angelegt wird, so muss doch auf dem Serversystem zb. durch Gruppen festgelegt werden, wer auf welche Dateien zugreifen darf?
Wenn die z.B als Hugo eine Datei anlegen willst, dann schaut der Clientkernel erstmal, wie die Benutzernummer und Gruppennummer lautet, die Hugo zugeordnet ist, Dieses findet über die Dateien /etc/passwd und /etc/group auf dem Client statt. Dies ergibt beispielsweise Benutzer=1001, Gruppe=2000. Der Client entscheidet dann, ob der Benutzer 1001/2000 auf das Zielverzeichnis schreiben darf, also Schreibrechte für 1001/2000 aufweist. Erst, wenn das geklärt ist, sagt der Clientkernel dem NFS-Server, daß eine Datei auf den Zielverzeichnis für den Nutzer 1001/2000 angelegt werden soll, z.B. mit den Rechten 600.
Wenn jetzt Otto, der z.B. Benutzer 1002, Gruppe 3000 ist, die Datei lesen wil, die Hugo (1001/2000) angelegt hat, wird vom Clientkernel geprüft, ob der Nutzer 1002/3000 auf die Datei zugreifen darf, die 1001/2000 gehört und nur Lesen für 1001/2000 gewährt. Wenn, wie in diesem Fall keine Berechtigung besteht, dann sagt der Clientkernel "nein".
Daß der Benutzer 1001/2000 Hugo auf dem Client heißt, muß der Server nicht wissen, in /etc/passwd des Servers muß Hugo also auch nicht eingetragen sein. Selbes gilt für Otto.