Ошибка обновления: обновление не может быть установлено, так как некоторые файлы не удалось скопировать

Получил эту ошибку при последнем обновлении WP-Discourse:

Обновление не удалось: обновление не может быть установлено, так как некоторые файлы не удалось скопировать. Обычно это связано с несоответствием прав доступа к файлам.

Обновил 3 других плагина без проблем. Только этот плагин выдал ошибку:

Никаких изменений прав доступа не производил, вообще. (другие плагины обновились без проблем) Есть какие-то идеи?

При переходе в /wp-content/plugins/ и /wp-content/plugins/wp-discourse/ права доступа и владелец всех файлов и директорий идентичны всем остальным плагинам.

Редактирование: Просто удалил плагин и переустановил его через wp-admin, и проблема решилась. Надеюсь, ничего не сломал. С этим плагином пока не всё гладко.

Привет, @haydenjames,

Хотя я понимаю, что в других обновлениях вы не сталкивались с этой проблемой, данная ошибка не связана с плагином. Она связана с настройками вашего сервера. Подробнее об этом можно прочитать здесь:

Спасибо. Мне не пришлось вносить какие-либо изменения в настройку сервера. Просто деактивировал, удалил и переустановил через интерфейс wp-admin. Так что, вероятно, это был сбой. Спасибо!

Это часто случается, потому что владелец директорий под WordPress был изменён на root. Если это так, то команда chown -R www-data:www-data /var/www/public_html или аналогичная (в зависимости от дистрибутива и путей) поможет.

Да, я проверил это перед публикацией. Команда chown была выполнена правильно и рекурсивно применена как к владельцам, так и к правам доступа.

спасибо

Да, в большинстве случаев бедный админ видит эту проблему каждый раз, когда наступает новый месяц, и пытается загрузить медиафайлы.

У меня была такая же ошибка с другими плагинами, но не недавно. Однако я не могу вспомнить, в чём тогда была проблема — у меня очень смутное воспоминание о том, что плагин вёл себя плохо. Или, возможно, я тогда что-то напутал с гео-IP и/или блокировкой IP-адресов.

Вы используете какие-либо плагины безопасности? Или Fail2ban?

WP-CLI мог бы выдать более информативную ошибку. Или нет.

ls -lR wp-discourse/
…вернулось корректно.