Как изменить все файлы на 644 и все папки на 755, используя chmod
из linux
командной строки? (Терминал)
terminal
command-prompt
chmod
Hugo der Hungrige
источник
источник
http://superuser.com
:: P, но этот вопрос помог мне здесь, спасибо.chmod -R u+rwX,go+rX,go-w /foo
Ответы:
Одним из подходов может быть использование find:
для каталогов
для файлов
источник
sudo find /your/location -type f -exec chmod 644 {} \;
для файлов иsudo find /your/location -type d -exec chmod 755 {} \;
каталоговchmod -R a=r,u+w,a+X /foo
?unable to execute /bin/chmod: Argument list too long
Самый простой способ это сделать:
что в основном означает:
в
ch
Ange файлmod
эс-R
ecursively давая:u
ser:r
ead,w
rite иX
ecute разрешения,g
Роап иo
Ther пользователей:r
Свинец и электронныеX
ecute разрешения, но не-w
Обряд разрешения.Обратите внимание, что
X
каталог станет исполняемым, но не файлом, если он не доступен для поиска / выполнения.Пожалуйста, проверьте
man chmod
для более подробной информации.См. Также: Как выполнить chmod для всех каталогов, кроме файлов (рекурсивно)? в SU
источник
Самый короткий, который я мог придумать:
который работает в GNU / Linux, и я верю в Posix в целом (из моего прочтения: http://pubs.opengroup.org/onlinepubs/9699919799/utilities/chmod.html ).
Что это делает:
Важно отметить, что разрешение шага 1 очищает все биты выполнения, поэтому шаг 3 добавляет обратно только биты выполнения для каталогов (но не файлов). Кроме того, все три шага выполняются до того, как каталог рекурсивен (так что это не эквивалентно
поскольку a = r удаляет x из каталогов, то chmod не может вернуться в них.)
источник
Мне проще запомнить две операции:
+ X влияет только на каталоги.
источник
На https://help.directadmin.com/item.php?id=589 пишут:
Если вам нужен быстрый способ восстановить данные public_html на 755 для каталогов и 644 для файлов, то вы можете использовать что-то вроде этого:
Я проверил и ... это работает!
источник
Это сработало для меня:
источник
find /A -type X -exec chmod Y '{}' \;
Сделайте оба за один проход с:
Например, найдите тип f ИЛИ тип d и выполните первое ... для файлов, а второе ... для каталогов. В частности:
Оставьте,
--changes
если хотите, чтобы он работал тихо.источник
Если вам нужен быстрый способ восстановить данные public_html на 755 для каталогов и 644 для файлов, то вы можете использовать что-то вроде этого:
Кроме того, если вы знаете, что PHP работает как пользователь, а не как «apache», то вы можете установить PHP-файлы равными 600 для дополнительного уровня безопасности, например:
Вы можете найти этот ресурс здесь: https://help.directadmin.com/item.php?id=589.
источник
Это тоже может работать:
источник