Массовое изменение прав на файлы по маске (find,chmod)
Если кому-то уже доводилось переносить сайт с одного сервера на другой, то он поймет, на сколько тут полезен будет SSH доступ к консоли.
Особенно если сайт не мелкой конторы, а какой-то портал с кучей загруженных файлов и картинок.
Для примера условимся, что в папке ./images/uploads лежит куча файлов и папок, у которых сейчас права доступа только на чтение. Для выставления нужных нам прав, воспользуемся коммандами:
find ./images/uploads -type f -exec chmod 0666 {} \;
find ./images/uploads -type d -exec chmod 0777 {} \;
Разбирая что произошло, можно понять, что файлам (-type f) мы выставили права на чтение/запись (0666), а папкам (-type d) мы выставили права на чтение/запись/выполнение (0777).
Эта комманда удобна тем, что она выполняет каждую отдельную комманду chmod, к каждому отдельному файлу, благодаря чему, ее можно применять к сколько угодно большому количеству файлов.
Если файлов не много в папке, то можно воспользоваться следующими коммандами:
find ./images/uploads -type f | xargs chmod 0666
find ./images/uploads -type d | xargs chmod 0777
В этом случае, строится строка для комманды chmod, сама комманда выполняется 1 раз.