Permission denied при удалении файлов: как исправить права доступа

Печать
  • 0

Ошибка «Permission denied» в File Manager или FTP-клиенте при попытке что-то удалить означает, что объект защищён правами доступа. Чаще всего мешают права не самого файла, а папки, в которой он лежит. Обычно это исправляется за минуту: установите родительской папке значение 755, удалите объект и проверьте, что у остальных файлов сайта остались обычные права.

Почему сервер не даёт удалить файл

В Linux удаление файла считается изменением папки, в которой он находится. Поэтому важно, может ли Ваш аккаунт изменять эту папку, а не только сам файл. Типичные ситуации:

  • Плагин безопасности или скрипт перевёл файлы и папки в режим «только чтение» (значения 444, 555 или 400).
  • Архив распаковался с необычными правами, либо папке задали 000, чтобы её скрыть.
  • Файл принадлежит другому системному пользователю, например после ручного восстановления администратором. Изменить такой файл из Вашего аккаунта нельзя.

Как читать права доступа

У каждого файла и папки три цифры: первая относится к владельцу (Вашему аккаунту cPanel), вторая к группе, третья ко всем остальным. Каждая цифра складывается из значений: 4 означает чтение, 2 запись, 1 выполнение. Для папки «выполнение» означает право войти в неё.

ЗначениеБуквамиДля чего
755rwxr-xr-xпапки
644rw-r--r--обычные файлы: PHP, HTML, CSS, изображения
600 или 640rw------- или rw-r-----конфигурационные файлы с паролями, например wp-config.php

Не ставьте 777. Право записи для всех опасно, а многие серверные конфигурации отказываются запускать скрипт из файла или папки, доступных для записи любому, и страница выдаёт ошибку 500.

Исправление в File Manager cPanel

  1. Войдите в cPanel и откройте Files, затем File Manager.
  2. Найдите объект, который не удаляется, и посмотрите на столбец Permissions у него и у папки уровнем выше.
  3. Поднимитесь на уровень вверх, отметьте родительскую папку и нажмите Permissions на панели инструментов. Введите 755 и подтвердите кнопкой Change Permissions.
  4. Снова откройте папку, отметьте объект и нажмите Delete. Если сам объект является папкой с правами 555 или 000, сначала задайте ей 755, иначе её содержимое не удалится.

Удалённое в File Manager попадает в корзину и продолжает занимать место. Очистить её можно кнопкой View Trash, затем Empty Trash. Если Вы уверены, отметьте в окне удаления Skip the trash and permanently delete the files.

Исправление через FileZilla или другой FTP-клиент

  1. Подключитесь к хостингу (настройка описана в статье Настройка FileZilla).
  2. Щёлкните правой кнопкой по папке, где лежит объект, и выберите File permissions....
  3. Впишите 755 в поле Numeric value, нажмите OK и удалите объект.

Если плагин заблокировал целое дерево папок, отметьте Recurse into subdirectories и выберите Apply to directories only со значением 755. Затем повторите с Apply to files only и 644. Столбец Owner/Group в FileZilla показывает, кому принадлежит каждый файл.

Через Terminal

Если у Вашего аккаунта есть доступ к Terminal или SSH (см. Подключение к серверу по SSH), хватит двух команд. Первая показывает права и владельцев, вторая снимает блокировку с папки:

ls -la
chmod 755 имя-папки

Если удалить всё равно не получается

  • Другой владелец. Если владельцем указан не Ваш пользователь cPanel, а, например, root или nobody, изменить это может только наша команда. Откройте тикет и укажите полный путь к файлу.
  • Блокировка возвращается. Некоторые плагины безопасности WordPress сами восстанавливают режим «только чтение». Сначала отключите в плагине защиту файлов, затем удаляйте.
  • Странные имена. Файлы с пробелом в конце имени или с необычными символами иногда не обрабатываются в File Manager. Переименуйте или удалите их через FTP-клиент.

Если ничего не помогло, напишите нам: https://billing.tophost.md/submitticket.php. Укажите путь к файлу и точный текст ошибки.

После удаления

Верните обычные права: 755 для папок, 644 для файлов. Если Вы удаляете файлы, чтобы освободить место или уменьшить их количество, выбрать лишнее помогут статьи Закончилось место на диске и Количество файлов (inode) в аккаунте.

Полезные статьи

Помог ли вам данный ответ?

Нужна помощь? Позвоните нам +373 795-800-80