Приятно и все что можно "сойти с ума" добавление и вычитание ACL из файлов / папок пока коровы не вернутся домой ... но когда делать это из командной строкискажем например ..
$ chmod +a# 1 "admin deny delete" foo
$ ls -lde foo
drwxr-xr-x + 2 apl apl 68 Jul 19 18:32 foo
0: group:admin allow delete
1: group:admin deny delete
2: user:tony allow delete
Есть ли «более простой» синтаксис, допускающий «ВСЕ» сценарии? Поскольку есть всего 2 ^ 13 * 12 = 98 304 различных прав доступа, которые вы можете определить было бы здорово, если бы вы могли, например, заявить ...
$ chmod +a "staff allow all" foo
Но насколько я могу судить, это невозможно. Любые гуру расширенных атрибутов знают какие-нибудь уловки?
Я не уверен, поможет ли это, но, поскольку у вас может быть более одного разрешения для каждого ACL, вы можете использовать пару переменных среды (например, в вашем .profile), чтобы упростить задачу. Предполагая, что ваша оболочка по умолчанию - bash:
export FILE_ALL="read,write,append,execute,delete,readattr,writeattr,readextattr,writeextattr,readsecurity,writesecurity,chown"
export DIR_ALL="list,search,add_file,add_subdirectory,delete_child,readattr,writeattr,readextattr,writeextattr,readsecurity,writesecurity,chown"
Затем, когда вам нужно предоставить разрешения:
$ chmod +a "group:admin allow $FILE_ALL" foo