2018-05-23 10:13:27 +0000 2018-05-23 10:13:27 +0000
62
62

Linux - Как рекурсивно схмодировать папку?

Как я могу рекурсивно перепрограммировать все, что находится в папке?

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

Как я могу рекурсивно применить chmod 755 к этой папке и всему ее содержимому?

Ответы (1)

102
102
102
2018-05-23 10:19:11 +0000

Пожалуйста, обратитесь к руководству (man chmod):

-R, --recursive
change files and directories recursively

chmod -R 755 /path/to/directory будет выполнять то, что вы хотите.

Как бы то ни было…

  1. Обычно вы не хотите 755 всех files; это должно быть 644, так как часто они не должны быть исполняемыми. Следовательно, вы можете сделать find /path/to/directory -type d -exec chmod 755 {} \; только для того, чтобы изменить права доступа к каталогу. Используйте -type f и chmod 644 для применения разрешений к файлам.

  2. Это перезапишет все существующие разрешения. Не стоит делать это за /var - в этой папке уже есть правильные разрешения, установленные системой. Например, некоторые каталоги в /var требуют 775 разрешений (например, /var/log).

Итак, прежде чем делать sudo chmod - особенно в системных папках - сделайте паузу и подумайте о том, действительно ли это необходимо.

Похожие вопросы

8
8
3
3
6