在Moodle中执行cron后,不会通过课程重置删除作业文件

在Moodle中执行cron后,不会通过课程重置删除作业文件,cron,moodle,Cron,Moodle,当我试图重置课程的作业时,前端的所有数据都会被删除。我在一个测试作业中用自己上传的一个文件测试了这一点。但在使用检查磁盘使用情况时 du moodledata/filedir 同样的用法仍然存在。我确保了打印的cron任务的执行 ... Cron script completed correctly Cron completed at 17:40:03. Memory used 32.8MB. Execution took 0.810698 seconds 这些文件也不在moodledata

当我试图重置课程的作业时,前端的所有数据都会被删除。我在一个测试作业中用自己上传的一个文件测试了这一点。但在使用检查磁盘使用情况时

du moodledata/filedir
同样的用法仍然存在。我确保了打印的cron任务的执行

...
Cron script completed correctly
Cron completed at 17:40:03. Memory used 32.8MB.
Execution took 0.810698 seconds
这些文件也不在moodledata/trashdir中,这可能是cron任务不清理它的原因

使用删除文件

moosh文件哈希删除
似乎起作用了。我用pre/after执行磁盘使用和检查文件夹中的散列来标识散列,该文件夹使用了我上传的文件的大小

散列不在MySQL的mdl_files表中,但它的草稿是。这个是我通过

moosh文件检查
我还用phpMyAdmin检查了它,它将文件(草稿)与其他文件一起输出

重置课程的日志显示以下内容:

Core System, course reset finished, The reset of the course with id '4' has ended.
Core System, deadline updated, The user with id '2' updated the event 'test ist zur Bewertung fällig.' with id '4'.
Core System, deadline updated, The user with id '2' updated the event 'test ist fällig.' with id '3'.
Core System, course reset begin, The user with id '2' started the reset of the course with id '4'.
(注意,我翻译了一些消息,因为我的设置是德语的)

不幸的是,我不得不在磁盘存储极低的主机上运行这个Moodle实例(因此需要备份/删除)

一些背景信息:

Moodle-版本3.8.2+稳定,dbtype设置为mariadb

MariaDB-版本10.3.19

机器:CentOS Linux 7


更新:似乎几天后(我今天检查了一下,~4天后)这些文件被删除了。我不知道为什么这么多天后会发生这种情况,即使我手动触发了cron作业(似乎它没有删除文件)。最好检查计时器设置的位置以及最终删除文件的脚本。

在“课程重置”页面上,如果向下滚动,则会有一个作业下拉列表

您是否选中了删除所有提交内容的复选框

在代码中,
$data->reset\u assign\u submissions
将删除文件:

public function reset_userdata($data) {
    global $CFG, $DB;

    $componentstr = get_string('modulenameplural', 'assign');
    $status = array();

    $fs = get_file_storage();
    if (!empty($data->reset_assign_submissions)) {

在此期间,您是否可以为这个计算实例附加一些存储空间,这样您就可以毫不费力地解决这个问题?不幸的是,目前还没有,10 GB应该足以完成简单的作业和轻量级课程。这家酒店有一个非常独特的商业模式,你可以随心所欲地付费,但任何人都可以得到“相同”的服务。是的,我就是这么做的,而且只有这个。是否有日志检查代码段
$data->reset\u assign\u submissions
是否正确执行?顺便说一句,这是Moodle的全新安装