Ich stoße auf einem Unix / Linux-Rechner auf ein seltsames Problem:
Ich bin Mitglied einer Gruppe, nennen wir es Gruppe A, und eine bestimmte Datei (die einen anderen Eigentümer hat) gehört ebenfalls zu Gruppe A. Die Berechtigungen dieser Datei sind
-rw-rw----
Ich würde also erwarten, dass ich diese Datei öffnen kann, aber das tue ich nicht: Wenn ich versuche, den Inhalt der Datei zu überprüfen (mit cat), wird die Fehlermeldung "Permission denied" angezeigt.
Da die Berechtigungen korrekt zu sein scheinen, was könnte dies sonst noch verursachen? Gibt es "überschreibende" Berechtigungsbeschränkungen? Wenn ja, wie würde ich das herausfinden?
permissions
files
nfs
group
Lagerbaer
quelle
quelle
Antworten:
Haben Sie sich abgemeldet und wieder angemeldet, seit Sie zu Gruppe A hinzugefügt wurden?
Wenn nicht, haben Ihre aktuellen Anmeldeprozesse nur die Gruppenmitgliedschaften, die sie zum Zeitpunkt der Anmeldung hatten, und keine Änderungen seitdem. Alle untergeordneten Prozesse dieses Logins haben die gleichen Gruppenmitgliedschaften (dh, wenn Sie sich bei X angemeldet haben, werden alle Anwendungen einschließlich Terminalemulator und Shell verwendet).
Sie können dies testen, indem Sie sich erneut an einer anderen Konsole oder über ssh anmelden oder so etwas wie
exec sudo -u $(id -u -n) -i
(um die aktuelle Shell effektiv zu beenden und durch eine neue Shell zu ersetzen - alle Hintergrundprozesse, die zu dieser Shell gehören, werden verwaist).quelle
Bei NFS hängt es davon ab, welchen Sicherheitsmodus Sie verwenden. Bei der herkömmlichen Methode wird die Liste der Gruppen, zu denen der Benutzer gehört, vom Client an den Server gesendet, und die Anzahl der Gruppen, die gesendet werden können, ist begrenzt (bisher) 16 das letzte mal habe ich nachgesehen).
Der Kunde sagt also: Ich bin UID 1234 und übrigens Mitglied der Gruppen 12, 13, 14 ... Wenn Sie in mehr als 16 Gruppen sind, wird diese Liste abgeschnitten und es gibt Gruppen für Dem Server ist nicht bekannt, dass Sie Mitglied sind.
Das ist wahrscheinlich die Erklärung dafür. Nur der Systemadministrator des lokalen und / oder fernen Computers kann etwas dagegen tun, indem er entweder das Sicherheitsmodell oder die Einstellung des NFS-Servers ändert oder die Anzahl der Gruppen verringert, denen Sie angehören.
quelle
Wie Sie in einem Kommentar notieren, haben Sie keine Leseberechtigung für
/home/username
. Zum Lesen/home/username/path1/path2/file
benötigen Sie jedoch Ausführungsberechtigungen für den gesamten Pfad.Führen Sie
namei -l /home/username/path1/path2/file
zum Debuggen dieses Problems den Benutzer aus, der die Datei liest.quelle
Könnten ACLs sein. Sehen
Könnte sein, dass aus irgendeinem Grund die Gruppen, in denen Sie sein sollen, nicht richtig eingestellt sind. Überprüfen Sie mit
Wie wäre es mit
Was ist der Typ des Dateisystems, in dem es sich befindet?
Gibt es AppArmor, SELinux oder eine andere obligatorische Zugriffskontrolle im System?
Du bist sicher, dass die Datei nicht den Text "Permission denied" enthält, oder?
quelle