Папка filedir

Папка filedir

Alex Samoylenko -
Кількість відповідей: 7
Доброго дня адміністратору та усім небайдужим. Маю наступне питання: чи можна (і як саме) зменшити розмір папки filedir? Остання сягнула розміру у 4 Gb. Оскільки Moodle базується на хостингу, то розмір даної папки досить критичний. Cron стартує кожні 5 годин. Проте папки filedir та trashdir не зменшуються за розміром.

P.S. встановлено обмеження на завантаження файлу користувачем до 50 Кб.

У відповідь на Alex Samoylenko

Папка filedir

ivan matviyuk -

treba znaity i povydaliaty usi nepotribni backup'y kursiv. yakscho taki ye

w filedir ye vsi faily jaki vykorystani v Moodle. vkliuchno z usima materialamy jaki vykorystani dlia utvorennia kursiv (video, pdf'y, doc'y, etc). tomu pevne yedynoyu inshoyu mozhlyvistiu zmenshennia filedir ye vydalennia failiv z kursiv (abo vydalennia kursiv)

У відповідь на ivan matviyuk

Папка filedir

Alex Samoylenko -

Дякую за відповідь. Ще б знайти час, щоб продивитись сотню курсів на предмет раніше доданих файлів. Якщо немає простішого рішення, то доведеться робити все вручну...

Можливо хтось увімкнув автоматичне збереження копії курсів. Як тоді переглянути копії у кожному курсі?

У відповідь на Alex Samoylenko

Папка filedir

ivan matviyuk -

ya ne vpevnenyi chy mozhna pereglianuty use vidrazu v odnomu mistsi cheres User Interface. Tut mabut' yedynyi vyhid ye ity do kozhnogo kursu i pereviryty v Administration->Restore


yakscho ye dostup do bazy danyh, to:

SELECT mdl_course.shortname, mdl_files.filename
FROM mdl_course
    JOIN mdl_context ON (mdl_course.id = mdl_context.instanceid)
    JOIN mdl_files ON (mdl_files.contextid = mdl_context.id)
WHERE mdl_files.component = 'backup'
    AND mdl_files.filearea = 'course'
    AND mdl_context.contextlevel = 50
    AND mdl_files.filesize > 0;

У відповідь на ivan matviyuk

Папка filedir

Alex Samoylenko -

Дякую! Спробую на вихідних. По результату відпишусь.

Чому на вихідних? Оскільки в базі не відображаються розміри файлів, то спробую написати скрипт на php для відображення розміру файлів та бекапів. Якщо вийде - це буде, на мій погляд, дуже корисне рішення для всіх хто має такуж саму проблему з розміром папки filedir.

У відповідь на Alex Samoylenko

Папка filedir

ivan matviyuk -

a, nie - filesize tam ye tezh, w mdl_files, vystachyt' zminyty query na:

SELECT mdl_course.shortname, mdl_files.filename, mdl_files.filesize/1024.00 AS "size, KB"
FROM mdl_course
    JOIN mdl_context ON (mdl_course.id = mdl_context.instanceid)
    JOIN mdl_files ON (mdl_files.contextid = mdl_context.id)
WHERE mdl_files.component = 'backup'
    AND mdl_files.filearea = 'course'
    AND mdl_context.contextlevel = 50
    AND mdl_files.filesize > 0;

У відповідь на ivan matviyuk

Папка filedir

Alex Samoylenko -

У коді потрібно прописати ім'я користувача БД, пароль і т.д. Дійсно видає список файлів і бекєпів курсів з їхніми розмірами. Але от в чому проблема. Сама папка filedir займає 3Gb, а при застосуванні коду в кінці показується сумма файлів 1,2Gb. Може підкажете, що я пропустив?

У відповідь на Alex Samoylenko

Папка filedir

ivan matviyuk -

tse mabut' faily "systemni", ne pryvyazani do kursiv. w SQL query treba zaminyty JOINy na LEFT JOIN'y, schos' jak v:

SELECT mdl_course.shortname, mdl_files.filename, mdl_files.filesize/1024.00 AS "size, KB"
FROM mdl_files
    LEFT JOIN mdl_context ON (mdl_files.contextid = mdl_context.id)
    LEFT JOIN mdl_course ON (mdl_course.id = mdl_context.instanceid)
WHERE mdl_files.filesize > 0
ORDER BY mdl_files.filesize;