
Auf meinem Dateisystem befindet sich eine Datei namens „/etc/file.conf“.
$ getfacl /etc/file.conf
getfacl: Removing leading '/' from absolute path names
# file: etc/file.conf
# owner: root
# group: root
user::rw-
group::r--
other::r--
Ich möchte, dass mein Konto „userr“ Schreibberechtigung hat, damit mein Python-Skript darauf schreiben kann. Es gehört root, also war meine Idee, eine neue Gruppe zu erstellen und ihr das setfacl zuzuweisen.
$ sudo groupadd rsnap
$ sudo usermod -a -G rsnap userr
$ id userr
uid=1000(userr) gid=1000(userr) groups=1000(user),27(sudo),1001(rsnap)
$ sudo setfacl -m g:rsnap:rw /etc/file.conf
$ getfacl /etc/file.conf
getfacl: Removing leading '/' from absolute path names
# file: etc/file.conf
# owner: root
# group: root
user::rw-
group::r--
group:rsnap:rw-
mask::rw-
other::r--
Jedoch..
$ echo "Test" >> /etc/file.conf
-bash: /etc/file.conf: Permission denied
Was habe ich verpasst?
Antwort1
Sie haben geändert /etc/rsnapshot.conf
, aber Sie haben mit getestet /etc/file.conf
.
Sie müssen die Maske noch aktivieren über:
setfacl -m m:rw- filename
oder
setfacl -m m::rw- filename
abhängig vom Betriebssystem - beachten Sie, dass diese Art von ACLs nie standardisiert wurde. Ein entsprechender Standardvorschlag aus dem Jahr 1993 wurde 1997 zurückgezogen.
Übrigens: Mir ist gerade aufgefallen, dass Ihre Maske möglicherweise bereits festgelegt war. Sie haben also trotzdem den falschen Dateinamen verwendet.
Probleme mit diesem veralteten ACL-Vorschlag werden häufig auftreten, da der Standardvorschlag nie fertiggestellt wurde und Einigkeit darüber bestand, dass er nicht den Wünschen der Kunden entspricht.