chmod: Что означает параметр `+ a`?

16

Я следовал учебнику, и он сказал мне, чтобы бежать

sudo chmod +a "SOME_PARAMS" some/dir

Я был удивлен, увидев, что это не говорит мне

chmod: invalid mode: `+a'

Итак, мне интересно: что означает +aрежим? Как бы я перевел это на что-то, что понимает Ubuntu? И я также хотел бы знать, почему это не поддерживается повсеместно.

k0pernikus
источник

Ответы:

24

Я никогда не видел +a, только что-то вроде, chmod a+rчто означает «добавить разрешения на чтение для всех пользователей» (владелец / пользователь, группа, другие).

От man 1 chmod:

Формат символического режима - [ugoa ...] [[+ - =] [perms ...] ...], где perms - это либо ноль или более букв из набора rwxXst, либо одна буква из набора Ugo. Можно указать несколько символьных режимов, разделенных запятыми.

Комбинация букв ugoa определяет, какие права доступа пользователей к файлу будут изменены: пользователь, которому он принадлежит (u), другие пользователи в группе файла (g), другие пользователи, не входящие в группу файла (o), или все пользователи (а). Если ничего из этого не дано, эффект будет таким, как если бы был задан a, но биты, которые установлены в umask, не затрагиваются.

Правильно, как вы сказали в комментарии, это специфично для Mac OS X. От http://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/chmod.1.html :

Опции манипуляции ACL следующие:

+ a
Режим + a анализирует новую запись ACL из следующего аргумента в командной строке и вставляет ее в каноническое расположение в ACL. Если предоставленная запись относится к уже указанному идентификатору, две записи объединяются.

Lekensteyn
источник
5
Это не такая большая ошибка, но более специфичная для MacOS developer.apple.com/library/mac/#documentation/Darwin/Reference/…
k0pernikus
0

ACL необходим для установки разрешений иногда.

Я нашел соответствующую инструкцию. Этот документ в руководстве по веб-содержанию содержит информацию о настройке ACL для назначенного пользователя.

https://docs.moodle.org/37/en/Installing_Moodle#Download_and_copy_files_into_place

intrajp
источник
Кажется, это комментарий к другому ответу.
Ральф Фридл