Не загружаются файлы из-за прав на папки

Не загружаются файлы из-за прав на папки

от Anton Lee -
Количество ответов: 3

Это произошло предположительно после установки и настройки LaTeX. Ранее всё было ОК. 

Понаблюдав за тем, что происходит при загрузке файлов в курс, я выяснил что скрипт создает папку (например /moodledata/filedir/4f/23) с правами 41511. Т.е. в эту папку ни хозяин, ни другие не могут записывать файлы. 

В результате ошибка JSON string и т.п.

Если созданной скриптом папке дать вручную права 755, то файл (разумеется тот же, который пытались загрузить) добавляется без проблем.

Помогите, пожалуйста, понять откуда ноги растут у этой проблемы.

ОС Ubuntu Server; MOODLE 2.2.2

в config.php права на папки установлены в 40777

safe_mode в php.ini выключен.

В ответ на Anton Lee

Re: Не загружаются файлы из-за прав на папки

от Виталий Лавров -
Изображение пользователя Эксперт по Moodle

в config.php права на папки установлены в 40777

Права на папку в самых  общих случаях должны быть 0777 и комменты в файле конфигурации  есть:

// NOTE: the prefixed 0 is important, and don't use quotes.
$CFG->directorypermissions = 0775;

Магический "0" с которого начинается число говорит о том, что оно записано в восьмеричной системе счисления. 

4077710 = 1175118

улыбаюсь

В ответ на Виталий Лавров

Re: Не загружаются файлы из-за прав на папки

от Anton Lee -

Огромное спасибо, как-то упустил этот момент. Всё заработало после того, как убрал "4". Но по моему раньше работало и с 40777.

В ответ на Anton Lee

Re: Не загружаются файлы из-за прав на папки

от Виталий Лавров -
Изображение пользователя Эксперт по Moodle

Не забудь выполнить

find -type d -print0 | xargs -0 chmod 0777

find -type f -print0 | xargs -0 chmod 0664

в каталоге moodledata иначе в курсах созданных с кривой маской будут проблемы с загрузкой/выгрузкой.