Unable to create directory что делать
Перейти к содержимому

Unable to create directory что делать

  • автор:

WordPress ошибка: Unable to create directory

Admin 10.10.2017 , обновлено: 08.08.2020 WordPress, WordPress Errors

Исправление ошибки, которая возникает при загрузке изображений на сайт.

Ошибка имеет вид:

Unable to create directory wp-content/uploads/2907. Is its parent directory writable by the server?

Первое на что стоит обратить внимание, это конечно же права доступа. Исправление прав доступа из командной строки описана в другой статье.

Второй момент, на который следует обратить, это настройки media в административной панели WordPress. Если там всё отлично, тогда возможно причина в другом пользователе.

В моём случае ошибка возникала из-за того, что сайт работал от пользователя admin, а файлы и папки я закачал через SFTP от пользователя root.

Смотрим кому принадлежит папка:

Из скриншота выше видно, что папка имеет права доступа пользователя root. Для смены прав доступа воспользуемся инструкцией из статьи копирования файлов и папок в Linux.

Вводим команду смены пользователя:

chown -R admin:users /home/admin/web/ploshadka.net/public_html/wp-content/uploads/

где, пользователь на которого меняем:

chown -R admin

папка, на которую меняем пользователя:

/home/admin/web/ploshadka.net/public_html/wp-content/uploads/

В результате папка будет принадлежать нужному пользователю:

После этого всё заработало.

English Query (запросы по теме на английском языке)

How to Fix the Unable to create directory Error in WordPress

Why parent directory dosn’t writable by the server

Читайте также

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

Ошибка Failed to create directory — Permission denied. Что это?

Выдал права на папку 777. Все равно не хочет.
Нашел в интернете информацию про SeLinux. Начал изучать, не помогло. Во-Первых он у меня в статусе SELINUX=disabled , во вторых все правила, которые я нашел, выдавали мне ошибку. (Что-то типа, сценарий был зафейлен, не удалось сменить сценарий).

  • Вопрос задан более трёх лет назад
  • 5155 просмотров

1 комментарий

Оценить 1 комментарий

Ошибка: mkdir — Cannot Create Directory

Перевод: mkdir: cannot create directory

Новички в Linux часто не понимают, что делать при получении ошибки “mkdir: cannot create directory” во время работы с командной строкой. Есть несколько причин возникновения такой ошибки, и в этом переводе своей англоязычной статьи с сайта Unix Tutorial я покажу эти причины и их устрание на примерах.

mkdir: cannot create directory – File exists

В переводе с английского сообщение означает: невозможно создать каталог — файл уже существует.

ФАЙЛ существует? А при чём тут проблема создания каталога? И почему ошибка говорить “существует файл”, когда мы вообще пытаемся создавать каталог, а не файл?

На самом деле всё просто: большинство объектов в Linux являются файлами и структурами в файловой системе. Поэтому эта ошибка означает, что там, где вы пытаетесь выполнить команду создания нового каталога, уже существует другой объект с таким же именем. В данном случае — это файл, а не каталог. Но у файла такое же имя, как у желаемого каталога, так что создать второй объект с таким же именем не получится.

greys@vps1:~$ mkdir /tmp/try mkdir: cannot create directory – File exists

намекает, что у нас уже есть файл с именем /tmp/try.

Очень просто проверить эту гипотезу с помощью команды ls:

greys@vps1:~$ ls -ald /tmp/try drwxr-xr-x 2 greys root 4096 Nov 5 18:55 /tmp/try

Так и есть, у нас существует файл с таким именем.

Возможные решения проблем mkdir: cannot create directory

Сценарий file exists

Если файл с таким именем уже существует, а каталог всё же очень хочется создать, то есть решения.

Переименовать (или переместить) существующий файл

Используем команду mv для перемещения /tmp/try в другой каталог (или просто сменим имя try на другое, оставив файл в том же каталоге /tmp). Вот как можно переименовать файл в имя oldtry:

greys@vps1:~$ mv /tmp/try /tmp/oldtry

Теперь давайте попробуем ту же команду mkdir:

greys@vps1:~$ mkdir /tmp/try

…и всё замечательно работает! Никаких ошибок, и создался новый каталог под названием /tmp/try. Подтверждаем это с помощью команды ls:

greys@vps1:~$ ls -ald /tmp/try /tmp/oldtry drwxr-xr-x 2 greys root 4096 Nov 5 18:55 /tmp/oldtry drwxrwxr-x 2 greys greys 4096 Nov 5 19:08 /tmp/try

Удалить существующий файл

Ещё одна опция, которая напрашивается сама собой — можно просто удалить неугодный файл, который мешает созаднию нашего нового каталога.

Для этого примера создадим новый пустой файл с названием /tmp/newtry

greys@vps1:~$ touch /tmp/newtry greys@vps1:~$ ls -lad /tmp/newtry -rw-rw-r-- 1 greys greys 0 Nov 5 20:50 /tmp/newtry

Если попробовать mkdir, то получится ожидаемая ошибка:

greys@vps1:~$ mkdir /tmp/newtry mkdir: cannot create directory '/tmp/newtry': File exists

А теперь мы просто удалим неугодный файл и попробуем mkdir снова:

greys@vps1:~$ rm /tmp/newtry greys@vps1:~$ mkdir /tmp/newtry

В этот раз нет никаких ошибок, всё снова сработало:

greys@vps1:~$ ls -lad /tmp/newtry drwxrwxr-x 2 greys greys 4096 Nov 5 20:50 /tmp/newtry

##mkdir: cannot create directory – Permission denied

Это — ещё один распространённый сценарий при создании каталогов.

В переводе на русский, сообщение говорит: невозможно создать каталог — недостаточно прав доступа. То есть файлов с таким же именем нет, но текущий пользователь, под которым мы пытаемся создать каталог, не имеет прав в текущем месте файловой системы для создания новых каталогов (и файлов).

Основной подход к такой ошибке — проверка прав доступа в каталоге, где получена ошибка. Команда ls и здесь поможет. You should use ls command on the higher level directory to confirm permissions.

greys@vps1:/tmp$ mkdir try2018 greys@vps1:/tmp$ mkdir try2018/anotherone greys@vps1:/tmp$ ls -ald try2018 drwxrwxr-x 3 greys greys 4096 Nov 5 21:04 try2018

Все эти команды сработали без ошибок, и ls показывает, что у меня есть полные права доступа к каталогу try2018 — rwx для меня, rwx для моей группы и r-x для всех остальных (это я читаю фрагмент drwxrwxr-x в строке с try2018).

Теперь давайте уберём права на запись (и создание новых объектов) в каталоге try2018:

greys@vps1:/tmp$ chmod a-w try2018 greys@vps1:/tmp$ ls -ald try2018 dr-xr-xr-x 3 greys greys 4096 Nov 5 21:04 try2018

Теперь мои права к этому каталогу сменились с полных (rwx — read/write/execute) на только чтение (r-x — read/execute). Так что если я попробую создать в try2018 какой-то подкаталог, выйдет та самая ошибка про недостаток прав доступа:

greys@vps1:/tmp$ mkdir try2018/yetanotherone mkdir: cannot create directory 'try2018/yetanotherone': Permission denied

Чтобы исправить проблему, нужно исправить права доступа на каталоге, где мы видим ошибку. И пробуем mkdir снова:

greys@vps1:/tmp$ chmod a+w try2018 greys@vps1:/tmp$ mkdir try2018/yetanotherone

Вот теперь — порядок, всё создалось,

greys@vps1:/tmp$ ls -ald try2018/yetanotherone drwxrwxr-x 2 greys greys 4096 Nov 5 21:05 try2018/yetanotherone

На сегодня — всё! Будут ещё вопросы по самым основам Linux — обращайтесь!

Решение ошибок в WordPress. Как устранить ошибку «Не могу создать директорию» («Unable to create directory»)

MonsterONE

Здравствуйте! Из этого туториала вы узнаете, как устранить ошибку «Не могу создать директорию» («Unable to create directory ») в WordPress.

Рассмотрим два способа решения этой проблемы:

Во-первых, проблема может быть вызвана неправильными правами доступа на папки wp-content или wp-content/uploads. Проверьте права доступа, для этого можно воспользоваться следующим туториалом:
Как настраивать разрешения на файлы, папки с помощью Total Commander, Filezilla и cPanel .

Существует также еще одно возможное решение, в случае неправильно указанной ссылки собственно в WordPress. Для проверки выполните следующее.

  1. Войдите в панель управления WordPress, перейдите в раздел Внешний вид (Appearance) -> Редактор ( Editor ) и найдите файл custom- function .php.
  2. Вставьте такой код перед закрывающим тегом ?> в конце файла:

if(get_option('upload_path')=='wp-content/uploads' || get_option('upload_path')==null) < update_option('upload_path',WP_CONTENT_DIR.'/uploads');>

Wordpress. Unable to create directory

  • Сохраните изменения в файле.
  • Теперь перейдите в раздел Настройки (Settings) > Медиа ( Media ), появится новая настройка под названием Сохранять загрузки в этой папке (Store uploads in this folder). Здесь можно проверить правильность ссылки.
  • Вы также можете воспользоваться детальным видео — туториалом:

    Вордпресс Темы

    Эта запись была размещена в WordPress туториалы и помечена как create, directory, error, WordPress. Добавьте в закладки постоянную ссылку.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *