Права доступа Unix, SUID, SGID, Sticky биты Сравнение версий

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
wiki:стандартные_права_unix [2014/12/13 20:25]
[Биты SUID, SGID и Sticky]
wiki:стандартные_права_unix [2020/10/07 17:56] (текущий)
[Расширенные права]
Строка 84: Строка 84:
 Восьмеричное обозначение в этом примере:​ **0755**. Восьмеричное обозначение в этом примере:​ **0755**.
  
-<note important>​Для полноценного просмотра каталога,​ необходимы права на чтение каталога и доступ к файлам,​ а главное к их атрибутам,​ т.е. минимальные разумные права на каталог - 5 (r-x). Прав 4 (r--) хватит только на просмотр имен файлов,​ без атрибутов,​ т.е. не будет известен ни размер файла, ​ни его тип (что даже не позволит отличить ​директории от файлов).+<note important>​Для полноценного просмотра каталога,​ необходимы права на чтение каталога и доступ к файлам,​ а главное к их атрибутам,​ т.е. минимальные разумные права на каталог - 5 (r-x). Прав 4 (r--) хватит только на просмотр имен файлов,​ без атрибутов,​ т.е. не будут известны размер файла, ​права доступавладелец.
  
 На практике для каталогов используется только три режима:​ 7 (rwx), 5 (r-x) и 0 (---).</​note>​ На практике для каталогов используется только три режима:​ 7 (rwx), 5 (r-x) и 0 (---).</​note>​
Строка 151: Строка 151:
  
 Символьное назначение окажет неоценимую услугу,​ если требуется добавить права на объект к уже существующим правам. Символьное назначение окажет неоценимую услугу,​ если требуется добавить права на объект к уже существующим правам.
 +
 +=== Массовое назначение прав ===
 +
 +Иногда,​ бывает,​ нужно массово установить права на определенный тип объектов,​ например,​ только на каталоги или только на файлы. Простое использование опции **-R** (рекурсия) здесь не поможет т.к. chmod будет проходить по всем объектам удовлетворяющим маске, что иногда вовсе не то, что нужно. ​
 +
 +Итак, чтобы массово установить права на определенный тип объектов можно использовать один из вариантов (вообще,​ их очень много):​
 +
 +  * **chmod -R 770 $(find . -type d)** 
 +
 +где **-type d** - каталоги,​ **-type f** - файлы. В данном примере chmod установит,​ начиная от текущего каталога((О чем сообщает точка после **find**.)), ​ права на все каталоги (включая подкаталоги) разрешения 770 (rwx rwx- - -) при этом не трогая права на другие объекты. ​
 +
 +Более длинный вариант аналогичной операции:​
 +
 +  * **find ./ -type f -exec sudo chmod 775 {} \;**
 +
 +где **-type d** - каталоги,​ **-type f** - файлы. В данном варианте chmod установит разрешения 775 на все файлы включая файлы в подкаталогах начиная от текущего.
 +
 +
 ===== Биты SUID, SGID и Sticky ===== ===== Биты SUID, SGID и Sticky =====
  
Строка 309: Строка 327:
  
 В больших сетях, ​ с многоуровневыми схемами доступа применяется более гибкая реализация назначения прав, именуемая как **ACL** - [[access_control_list|Списки контроля доступа]]. ​   В больших сетях, ​ с многоуровневыми схемами доступа применяется более гибкая реализация назначения прав, именуемая как **ACL** - [[access_control_list|Списки контроля доступа]]. ​  
 +
 +<style right> --- //​[[allexmail@yandex.ru|Соловьев Алексей aka allexnew]] upd 07.10.2020 17:56// </​style>​
  
 {{tag>​Администрирование система Права_доступа }} {{tag>​Администрирование система Права_доступа }}