Утилита setfacl#
Утилита setfacl устанавливает или изменяет списки контроля доступа (ACL) к файлам и каталогам.
Если утилита используется в файловой системе, не поддерживающей ACL, она работает с битами разрешения. setfacl изменяет биты при их несоответствии с ACL, записывает сообщение об ошибке в standard error и возвращает статус выхода больше 0.
Синтаксис утилиты:
setfacl <options> <file_or_directory>
Где:
<options>- опции;<file_or_directory>– файл или каталог, к которому необходимо применить ACL.
Часто используемые опции утилиты представлены в таблице ниже.
Опция |
Описание |
|---|---|
|
Удаление всех дополнительных элементов ACL. Базовые элементы сохраняются |
|
Применение ACL по умолчанию |
|
Изменение текущих ACL для каталога |
|
Изменение текущих ACL для файла |
|
Замена действующих прав ACL на новые |
|
Удаление записи из ACL файла |
|
Включение тестового режима. ACL не изменяются |
Примеры использования#
Для изменения ACL в каталоге пользователя, имеющего доступ на чтение и запись, воспользуйтесь командой:
setfacl --modify u:<username>:rw <directory>В результате выполнения команды для пользователя
<username>изменятся ACL в каталоге<directory>.Для изменения ACL по умолчанию для каталога, доступного всем пользователям, введите команду:
setfacl -m -d u::rw <directory>В результате выполнения команды в каталоге
<directory>изменятся ACL по умолчанию.Для удаления ACL в каталоге пользователя воспользуйтесь командой:
setfacl --remove u:<username> <directory>В результате выполнения команды для пользователя
<username>в каталоге<directory>удалятся ACL.Для удаления всех записей ACL файла
<file>используйте команду:setfacl --remove-all <file>