Страницы

Поиск по вопросам

пятница, 2 ноября 2018 г.

Четвёртая цифра в правах доступа

$ chmod 0777 файл-или-каталог
Что означает 0 перед остальными цифрами?


Ответ

согласно документации (этот топик можно просмотреть при наличии установленного пакета gnu/info командой info 'file permissions' 'numeric modes') числовые значения обозначают:
Value in Corresponding Mode Mode Bit
Other users not in the file's group: 1 Execute/search 2 Write 4 Read
Other users in the file's group: 10 Execute/search 20 Write 40 Read
The file's owner: 100 Execute/search 200 Write 400 Read
Special mode bits: 1000 Restricted deletion flag or sticky bit 2000 Set group ID on execution 4000 Set user ID on execution
т.е., 0 в числе 0777 обозначает: убрать все три «специальных» бита — sticky-bit, setguid-bit и setuid-bit.

чтобы меньше «ломать себе голову» над всем этими циферками, удобнее, вероятно, использовать символические эквиваленты (info 'file permissions' 'symbolic modes').
например, вышеприведённую команду chmod 0777 файл-или-каталог можно заменить такой командой:
$ chmod a=rwx,a-st файл-или-каталог
a — для «всех» (комбинация из u — пользователь, g — группа, и o — остальные). = — установить именно такой набор битов. a=rwx — установить биты r — чтения, w — записи, и x — исполнения, для «всех». - — убрать перечисленные биты. a-st — убрать «специальные биты». эквивалентно u-s,g-s,-t

Комментариев нет:

Отправить комментарий