
Ich versuche, setfacl
die Berechtigungen für verschiedene ZFS-Datasets festzulegen und möchte, dass diese ACL-Berechtigungen denen im UNIX-Stil entsprechen chmod 770
.
Mit welchem setfacl
Befehl könnte ich dies erreichen und welche ACLs sollten getfacl
angezeigt werden, wenn ich dies richtig machen würde?
Ich verwende FreeNAS 11.0 mit Samba 4.6.4.
Antwort1
Hinweis: Das Folgende stammt von einem Solaris-System, die Ergebnisse sollten aber auch unter BSD funktionieren (wo Sie getfacl
/ setfacl
statt ls
/ verwenden müssen chmod
).
Die Standardberechtigungen eines neu erstellten (Text)DateiSind:
owner@:rw-p--aARWcCos:-------:allow
group@:r-----a-R-c--s:-------:allow
everyone@:r-----a-R-c--s:-------:allow
Wenn Sie verwenden chmod 0770 /path/to/file
, erhalten Sie:
owner@:rwxp--aARWcCos:-------:allow
group@:rwxp--a-R-c--s:-------:allow
everyone@:------a-R-c--s:-------:allow
Im Wesentlichen wird Ausführen (x) für Besitzer und Gruppe hinzugefügt, Lesen (r) wird von allen entfernt und Schreiben (w) und Anhängen (p) werden der Gruppe hinzugefügt.
Für einVerzeichnissieht es wie folgt aus:
owner@:rwxp-DaARWcCos:-------:allow
group@:r-x---a-R-c--s:-------:allow
everyone@:r-x---a-R-c--s:-------:allow
Und nach der Änderung:
owner@:rwxp-DaARWcCos:-------:allow
group@:rwxp-Da-R-c--s:-------:allow
everyone@:------a-R-c--s:-------:allow
Hier werden Lesen (r) und Ausführen (x) für alle entfernt, während Eigentümer und Gruppe über dieselben Berechtigungen wie im Dateifall verfügen, allerdings mit der zusätzlichen Berechtigung „delete_child“ (D) (dies ergibt sich aus der Tatsache, dass es sich um ein Verzeichnis handelt).