Я корректировал полномочия при установке некоторых тем WordPress и работал chmod 664 -R theme-dir/*
Это хорошо работало на файлах в корне каталога, но всех файлах в подкаталогах теперь чтение как это когда я ls -l
:
?--------- ? ? ? ? ? core_functions.php
?--------- ? ? ? ? ? css
?--------- ? ? ? ? ? custom_functions.php
?--------- ? ? ? ? ? images
?--------- ? ? ? ? ? import_settings.php
?--------- ? ? ? ? ? js
?--------- ? ? ? ? ? options_trim.php
?--------- ? ? ? ? ? page_templates
?--------- ? ? ? ? ? post_thumbnails_trim.php
?---------+ ? ? ? ? ? shortcodes
Я не могу CD ни к одному из подкаталогов, и я также не могу удалить их. Я никогда не видел ничего как это, кто-либо когда-нибудь сталкивается с чем-то подобным?
Для доступа к содержимому (или, более конкретно, к метаданным файла, кроме имени файла) каталога требуется, чтобы в каталоге был бит выполнения set.
Ваш рекурсивный chmod удалил это разрешение, поэтому вы потеряли этот доступ. Если вы используете параметр -R
в chmod
, лучше избегать использования числовой версии разрешений и вместо этого запускать (используя желаемое состояние в качестве примера) chmod -R ug = rwX, o = rX
. Заглавная буква X означает, что бит X устанавливается только в каталогах или файлах, в которых установлен хотя бы один x
. Также вы можете использовать 644 ( u = rwX, go = rX
), если вам действительно не нужна группа пользователей для записи.
Если у вас есть доступ к серверу через оболочку, вы можете рекурсивно изменять права доступа к файлам, используя следующие команды :
Для каталогов:
find /path/to/your/wordpress/install/ -type d -exec chmod 755 {} \;
Для файлов:
find /path/to/your/wordpress/install/ -type f -exec chmod 644 {} \;