Linux:Рецепты/Особые режимы разрешений

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Проверка/Оформление/Редактирование: Мякишев Е.А.


Особые режимы разрешений

Проблема

Разрешить непривилегированным пользователям запускать команду, требующую повышенных привилегий, защитить файлы в каталоге, который является совместным для нескольких пользователей, или принудительно применить определенные разрешения к файлам в каталоге.

Решение

Режим sticky bit применяется к каталогам с файлами, принадлежащими разным пользователям, чтобы не позволить пользователям перемещать, переименовывать или удалять файлы, которыми они не владеют:

chmod -v 1770 foo

Режим setuid применяется к выполняемым файлам, чтобы повысить привилегии пользователя, запускающего этот файл, до уровня привилегий владельца файла:

chmod -v 4770 foo


Примечание

Для каталогов всегда должен быть установлен бит выполнения, который позволяет входить(или лучше сказать получить список содержимого каталога) в каталог с помощью команды cd или в диспетчере файлов.

Следующая команда применит одни и те же разрешения к существующему содержимому каталога благодаря параметру -R (recursive — «рекурсивно»):

chmod -R 0755 foo
Восьмеричные значения полей
Режим Владелец Группа Остальные
Чтение 4 4 4
Запись 2 2 2
Выполнение 1 1 1
Отсутствие разрешений 0 0 0
Разрешения для файлов
Разрешение Описание
7 Чтение, запись, выполнение. Каталоги отличаются от файлов и для всех каталогов требуется установить бит выполнения. Без установленного бита выполнения никто не сможет войти в каталог. Сценарии и двоичные команды должны иметь установленный бит выполнения, или они будут интерпретироваться как обычные файлы
6 Чтение и запись
5 Чтение и выполнение.
4 Чтение
3 Запись и выполнение
2 Запись
1 Выполнение
0 Полное отсутствие разрешений

См.также

Внешние ссылки