В системах Linux / Unix прежде всего рекомендуется обеспечить безопасность ваших файлов в ваших системах.

Многие из новичков устанавливают права доступа к файлам в значение 777 на производственных серверах, чтобы избежать каких-либо проблем с разрешениями.

Но они делают большие ошибки, устанавливая разрешения на запись в открытых серверах.

Всегда рекомендуется поддерживать минимальные права доступа к файлам и каталогам.

Фреймворк веб-приложений может предложить сохранить права для всех каталогов в значение 755 и всех файлов в 644.

Давайте рассмотрим это на примерах.

Рекурсивное изменение прав

Измените каталог с помощью команды cd в желаемое место, где вам нужно назначить права для всех каталогов в значение 755 и всех файлов в 644.

1
cd /home/user/public_html 

Затем используйте первую команду chmod 755 для всех каталогов и подкаталогов.

Вторая команда изменит права доступа для всех файлов на 0644 (chmod 644) в дереве каталогов.

1
2
find . -type d -exec chmod 0755 {} \;
find . -type f -exec chmod 0644 {} \; 

Вы также можете изменить разрешение с помощью команды xargs, чтобы сделать это быстрее:

1
2
find . -type d -print0 | xargs -0 chmod 755
find . -type f -print0 | xargs -0 chmod 644 

Права на каталог 0755 похоже на «rwxr-xr-x», а права на файл 644 равно «rw-r – r–».

Как изменить права для определенных файлов

Вместо изменения прав для всех файлов вы также можете настроить таргетинг на определенные файлы с аналогичными расширениями.

Например, на вашем сервере установлено приложение PHP.

И вы не хотите позволять другим запускать файлы php.

Используйте следующую команду для chmod 0640 для всех файлов с расширением php:

1
find . -type f -name "*.php" -exec chmod 0640 {} \; 

Заключение

В этом руководстве вы научились изменять права с помощью chmod на файлы или каталоги, доступные в дереве каталогов.