Различия
Здесь показаны различия между двумя версиями данной страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
|
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>Администрирование система Права_доступа }} | ||