Как использовать setfacl в наборе данных ZFS для установки эквивалента chmod 770 в стиле UNIX?

Я пытаюсь использовать setfacl , чтобы установить разрешения для различных наборов данных ZFS, и мне нужны эти разрешения ACL, эквивалентные UNIX-style ] chmod 770 .

Какая команда setfacl могла это сделать, и какие ACL должны отображаться getfacl , если бы я сделал это правильно?

Я бегу. FreeNAS 11.0 с Samba 4.6.4.

2
задан 14 December 2017 в 18:13
1 ответ

Примечание: следующее из системы Solaris, но результаты также должны работать в BSD (где вам нужно вместо этого использовать getfacl / setfacl ] of ls / chmod ).


Разрешения по умолчанию для вновь созданного (текстового) файла :

   owner@:rw-p--aARWcCos:-------:allow
   group@:r-----a-R-c--s:-------:allow
everyone@:r-----a-R-c--s:-------:allow

Если вы используете chmod 0770 / path / to / file , вы получите:

   owner@:rwxp--aARWcCos:-------:allow
   group@:rwxp--a-R-c--s:-------:allow
everyone@:------a-R-c--s:-------:allow

По сути, execute (x) добавляется для владельца и группы, чтение (r) удаляется у всех, а запись (w) и добавление (p) добавляются в группу.


Для каталога это выглядит следующим образом:

   owner@:rwxp-DaARWcCos:-------:allow
   group@:r-x---a-R-c--s:-------:allow
everyone@:r-x---a-R-c--s:-------:allow

И после модификации:

   owner@:rwxp-DaARWcCos:-------:allow
   group@:rwxp-Da-R-c--s:-------:allow
everyone@:------a-R-c--s:-------:allow

Здесь read (r) и execute (x) удаляются у всех, а владелец и группа имеют те же разрешения, что и в случае с файлом, но с добавленным разрешением delete_child (D) (это происходит от каталога).

0
ответ дан 3 December 2019 в 14:04

Теги

Похожие вопросы