Fehlerbehebung

Warnung „Aktivitätslöschung läuft“ in Moodle

Geprüft am 4 Min. Lesezeit Cron Fehler

Wenn beim Versuch, eine gelöschte Aktivität in Moodle wiederherzustellen, diese Meldung erscheint:

Warning: Activity deletion in progress! Some grades are about to be removed.

Die Meldung bedeutet, dass Moodle noch eine ausstehende Löschung hat. Bevor Sie sie dem allgemeinen Cron zuschreiben, prüfen Sie die Ad-hoc-Aufgabe, die diese Löschung verarbeitet, und ihre genaue Fehlermeldung.

So beheben Sie das Problem

  1. Öffnen Sie Website-Administration > Server > Aufgaben > Ad-hoc-Aufgaben.
  2. Suchen Sie \core_course\task\course_delete_modules und prüfen Sie die fehlgeschlagenen Versuche, die nächste Ausführung und die Fehlermeldung. tool_recyclebin\task\cleanup_course_bin entfernt nur abgelaufene Elemente aus dem Papierkorb; diese ausstehende Löschung schließt sie nicht ab.
  3. Führen Sie den Cron per CLI aus und bewahren Sie die Ausgabe während der Diagnose auf:
/opt/alt/php83/usr/bin/php /ruta/a/moodle/admin/cli/cron.php

Ersetzen Sie php83 durch die PHP-Version Ihres Moodle: Ein einfaches php oder /usr/local/bin/php kann eine andere Version sein. Alle Pfade finden Sie unter Pfade der PHP-Binärdateien.

  1. Stellen Sie sicher, dass course_delete_modules erfolgreich abgeschlossen wird. Schlägt sie fehl, beheben Sie zuerst den konkreten Fehler dieser Ausführung; den Cron wiederholt zu starten, repariert weder Berechtigungen noch Speicherplatz noch Exceptions von Plugins.
  2. Prüfen Sie, ob der Kurspapierkorb aktiviert ist und die Aufbewahrungsfrist nicht abgelaufen ist. Erst nachdem die Aufgabe abgeschlossen ist, sollte das wiederherstellbare Element erscheinen.

Den Cron einplanen

Moodle empfiehlt, ihn jede Minute auszuführen. Während der Diagnose können Sie vorübergehend einen Cron-Job mit dem tatsächlichen Pfad einrichten und die Ausgabe speichern:

* * * * * /opt/alt/php83/usr/bin/php /home/usuario_cpanel/public_html/moodle/admin/cli/cron.php >> /home/usuario_cpanel/logs/moodle-cron.log 2>&1

Prüfen Sie das Protokoll, bis mehrere erfolgreiche Ausführungen bestätigt sind. Wenn Sie bereits einen anderen Mechanismus haben, um fehlgeschlagene Aufgaben zu prüfen, können Sie diese Umleitung danach entfernen, damit sich keine Ausgabe auf der Festplatte ansammelt:

* * * * * /opt/alt/php83/usr/bin/php /home/usuario_cpanel/public_html/moodle/admin/cli/cron.php > /dev/null 2>&1

Löschen Sie moodle-cron.log, sobald Sie es nicht mehr benötigen. Die Ausführung von /admin/cron.php über das Web hängt davon ab, ob Moodle sie zulässt; CLI ist die empfohlene Methode.

Lesen Sie die offizielle Anleitung zum Cron von Moodle und zu den geplanten und Ad-hoc-Aufgaben.

Bevor Sie einen weiteren Cron hinzufügen

Prüfen Sie, ob für dieselbe Installation bereits eine entsprechende Aufgabe existiert; korrigieren Sie diesen Eintrag, statt ihn zu duplizieren. Verwenden Sie die PHP-Binärdatei, die zu Ihrer Moodle-Version passt, und den Benutzer, dem die Dateien gehören. Legen Sie vorher das private Verzeichnis für das Protokoll an und beschränken Sie Zugriff und Aufbewahrung.

Die Ausgabe nach /dev/null zu leiten, verbirgt auch die Fehler des Prozesses: Prüfen Sie fehlgeschlagene Aufgaben weiterhin in Moodle. Löschen Sie keine Zeilen von Aufgaben, Aktivitäten oder Bewertungen von Hand, um die Warnung zu entfernen. Dass die Löschung abgeschlossen wird, garantiert nicht, dass sich ein Element wiederherstellen lässt, wenn der Papierkorb deaktiviert war oder seine Kopie nicht mehr existiert.

Das könnte Ihnen auch helfen

Stimmt etwas nicht oder hat sich etwas geändert? Erzählen Sie es uns, und wir prüfen es.