Расстановка прав на файлы и папки в Linux
Допустим есть папка public_html и нужно рекурсивно расставить права доступа на все вложенные папки и файлы внутри неё. Сделать это можно следующим образом:
find public_html/ -type d -exec chmod 0755 {} \;
find public_html/ -type f -exec chmod 0644 {} \;
Эти команды расставят следующие права для папок:
| Владелец | Просмотр и изменения содержимого |
| Группа | Просмотр содержимого |
| Остальные | Просмотр содержимого |
для файлов:
| Владелец | Чтение и запись |
| Группа | Чтение |
| Остальные | Чтение |
Также есть более открытый вариант(я лично его не использую, но на всякий случай приложу):
find public_html/ -type d -exec chmod 0775 {} \;
find public_html/ -type f -exec chmod 0664 {} \;
Эти команды расставят следующие права для папок:
| Владелец | Просмотр и изменения содержимого |
| Группа | Просмотр и изменения содержимого |
| Остальные | Просмотр содержимого |
для файлов:
| Владелец | Чтение и запись |
| Группа | Чтение и запись |
| Остальные | Чтение |
chmod -R a-w public_html/
а этой командой можно для всех убрать разрешение для записи в папки и изменения файлов.