Назад | Перейти на главную страницу

Перехватить все атрибуты ACL через CLI для Mac OS X?

Приятно и все что можно "сойти с ума" добавление и вычитание 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