Ich bin gerade auf den Fall gestoßen, in dem die Eigentümergruppe einer Datei über mehr Berechtigungen verfügt als der Eigentümerbenutzer einer Datei.
user1@pc:/tmp$ ls testfile -l
----rw---- 1 user1 user1 9 Okt 16 13:16 testfile
Da der Benutzer user1
keine Berechtigung hat, die Datei zu lesen, erhalte ich Folgendes
user1@pc:/tmp$ cat testfile
cat: testfile: Permission denied
Dies überraschte mich, da es user1
sich um ein Mitglied der Gruppe handelt user1
, die über die Berechtigung zum Lesen der Datei verfügt.
Interessant ist dabei:
root@pc:/tmp$ addgroup user2 user1
Adding user `test' to group `ress' ...
Adding user test to group ress
Done.
root@pc:/tmp$ su user2
user2@pc:/tmp$ cat testfile
content of testfile
user2@pc:/tmp$
Ich kann testfile
den Inhalt lesen.
Es scheint, dass die auf der Benutzer-/Eigentümerebene erteilten (oder nicht erteilten) Berechtigungen Vorrang vor allen späteren Berechtigungen haben, beispielsweise vor den aufgrund der Gruppenmitgliedschaft bestehenden Berechtigungen.
Meine Frage ist, ob es einen Hinweis auf dieses Verhalten gibt, das ich in meinem Linux-System erlebe (das heißt, dass das Fehlen von Benutzerberechtigungen Gruppenberechtigungen wegnimmt).
Gibt es auch einen Anwendungsfall für dieses Verhalten?
Antwort1
Die Dateiberechtigungen erlauben dem Eigentümer ausdrücklich kein Lesen, Schreiben oder Ausführen dieser Datei ( user1
).
Wenn Sie den Eigentümer in einen anderen Benutzer ändern, können Sie die Datei mit den Gruppenberechtigungen lesen.
Auszug ausWiki-Seite zu Dateisystemberechtigungen
Klassen
...
Die effektiven Berechtigungen werden anhand der Klasse des Benutzers bestimmt. Beispielsweise hat der Benutzer, der Eigentümer der Datei ist, die Berechtigungen der Eigentümerklasse, unabhängig von den Berechtigungen, die der Gruppenklasse oder anderen Klassen zugewiesen sind.