На самом деле есть 4 набора атрибутов, с которыми вы можете работать через chmod
.
Special
, User/Owner
, Group
, И Others
в таком порядке, при работе с четыре номера chmods, с тем первым числом специальных бит , которые могут быть установлены.
chmod 4555
приравнивается к следующему:
Set UID
bit - запускать файл от имени владельца независимо от того, какой пользователь его запускает
- Пользователь / Владелец:
Read, Execute
- Группа:
Read, Execute
- Другие:
Read, Execute
В s
вашей «читаемой человеком» строке для разрешений указывается, что SetUID
бит (объясненный ниже) установлен.
По сути, мы можем разбить chmod
аргумент разрешений с четырьмя числами на конкретные дескрипторы следующим образом и выполнить математические расчеты, чтобы определить, что будет 4
в первом разделе, 5
в следующем разделе и так далее.
Имейте ввиду, что ####
есть Special
User/Owner
Group
и Others
в таком порядке.
Для Special
атрибутов (первое число в chmod
аргументе из четырех чисел ):
Set UID
- Запускать файл от имени владельца независимо от того, какой пользователь запускает его (отображается как s
в строке прав доступа для пользователя для User
раздела) = +4 ( --s
ниже User/Owner
)
Set GID
- Запустить файл как группу независимо от пользователя / группы, в которой он запущен (показано как s
в строке прав доступа для пользователя для Group
раздела) = +2 ( --s
ниже Group
)
Sticky Bit
- ЭФФЕКТИВНО ТОЛЬКО ДЛЯ ДИРЕКТОРИЙ - Если установлено, только владелец каталога root
может и пользователь может удалить каталог, и только владелец файла или root
может удалить файлы внутри него. (показано как t
в доступной для восприятия строке разрешений для Others
раздела) = +1 ( --t
под Others
)
Для User/Owner
, Group
и Others
атрибуты (последние три цифры в четыре чисел в chmod
аргументе):
Read
= +4 ( r--
)
Write
= +2 ( -w-
)
Execute
(для файлов) или «Enter Into / List Items» (для каталогов) = +1 ( --x
)