Die aclmode-Eigenschaft, die bestimmt, wie ACL-Berechtigungen für eine Datei während eines chmod-Vorgangs geändert werden, wird in diesem Release wieder eingeführt. Die aclmode-Werte sind: discard, mask und passthrough. Der Standardwert discard ist der restriktivste Wert, während passthrough am wenigsten einschränkend ist.
Beispiel 9-3 Interaktion der Zugriffskontrollliste mit chmod-Vorgängen in ZFS-DateienIn den folgenden Beispielen wird dargestellt, wie sich bestimmte aclmode- und aclinherit-Eigenschaftswerte auf die Interaktion der vorhandenen Zugriffskontrolllisten mit einem chmod-Vorgang auswirken, der die vorhandenen ACL-Berechtigungen verringert oder erweitert, damit sie konsistent mit der Eigentümergruppe sind.
In diesem Beispiel ist die aclmode-Eigenschaft auf mask und die aclinherit-Eigenschaft auf restricted gesetzt. Die Zugriffsrechte der Zugriffskontrollliste in diesem Beispiel werden in Kompaktform angezeigt, in der die Änderung der Zugriffsrechte einfacher dargestellt werden kann.
Die ursprüngliche Datei- und Gruppeneigentümerschaft und die Zugriffsrechte der Zugriffskontrollliste sind:
# zfs set aclmode=mask pond/whoville # zfs set aclinherit=restricted pond/whoville # ls -lV file.1 -rwxrwx---+ 1 root root 206695 Aug 30 16:03 file.1 user:amy:r-----a-R-c---:-------:allow user:rory:r-----a-R-c---:-------:allow group:sysadmin:rw-p--aARWc---:-------:allow group:staff:rw-p--aARWc---:-------:allow owner@:rwxp--aARWcCos:-------:allow group@:rwxp--aARWc--s:-------:allow everyone@:------a-R-c--s:-------:allow
Ein chown-Vorgang ändert die Dateieigentümerschaft für file.1, und die Ausgabe wird für den Eigentümer angezeigt, amy. Beispiel:
# chown amy:staff file.1 # su - amy $ ls -lV file.1 -rwxrwx---+ 1 amy staff 206695 Aug 30 16:03 file.1 user:amy:r-----a-R-c---:-------:allow user:rory:r-----a-R-c---:-------:allow group:sysadmin:rw-p--aARWc---:-------:allow group:staff:rw-p--aARWc---:-------:allow owner@:rwxp--aARWcCos:-------:allow group@:rwxp--aARWc--s:-------:allow everyone@:------a-R-c--s:-------:allow
Der folgende chmod-Vorgang ändert die Zugriffsrechte in einen restriktiveren Modus. In diesem Beispiel überschreiten die geänderten Zugriffsrechte der sysadmin- und staff-Gruppe die Zugriffsrechte der Eigentümergruppe nicht.
$ chmod 640 file.1 $ ls -lV file.1 -rw-r-----+ 1 amy staff 206695 Aug 30 16:03 file.1 user:amy:r-----a-R-c---:-------:allow user:rory:r-----a-R-c---:-------:allow group:sysadmin:r-----a-R-c---:-------:allow group:staff:r-----a-R-c---:-------:allow owner@:rw-p--aARWcCos:-------:allow group@:r-----a-R-c--s:-------:allow everyone@:------a-R-c--s:-------:allow
Der folgende chmod-Vorgang ändert die Zugriffsrechte in einen weniger restriktiven Modus. In diesem Beispiel werden die geänderten Zugriffsrechte der sysadmin- und staff-Gruppe auf die Zugriffsrechte der Eigentümergruppe zurückgesetzt.
$ chmod 770 file.1 $ ls -lV file.1 -rwxrwx---+ 1 amy staff 206695 Aug 30 16:03 file.1 user:amy:r-----a-R-c---:-------:allow user:rory:r-----a-R-c---:-------:allow group:sysadmin:rw-p--aARWc---:-------:allow group:staff:rw-p--aARWc---:-------:allow owner@:rwxp--aARWcCos:-------:allow group@:rwxp--aARWc--s:-------:allow everyone@:------a-R-c--s:-------:allow