H5P-Exporte aufräumen
Komponente local_eledia_cleanup_h5p_exports · Version 1.0.0
Einsatz und Zielgruppe
Abschnitt betitelt „Einsatz und Zielgruppe“Das Plugin ist für die Administration einer Moodle-Plattform gedacht, auf der H5P-Inhalte genutzt werden. Lehrende und Lernende bemerken es nicht. Es lohnt sich vor allem dort, wo viele H5P-Inhalte angelegt und bearbeitet werden und der Datenspeicher sichtbar wächst.
Hintergrund: Moodle erzeugt bei jedem Speichern oder Prüfen eines H5P-Inhalts ein vollständiges Exportpaket und legt es im Dateibereich core_h5p/export ab. Diese Pakete dienen als Zwischenspeicher für Downloads. Moodle kann sie jederzeit neu erzeugen, löscht alte Fassungen aber nicht.
Einrichtung
Abschnitt betitelt „Einrichtung“- Installieren Sie das Plugin unter
local/eledia_cleanup_h5p_exportsund schließen Sie die Installation unter Website-Administration → Mitteilungen ab. - Öffnen Sie Website-Administration → Plugins → Lokale Plugins → eLeDia: Cleanup H5P exports.
- Legen Sie das Mindestalter in Tagen fest. Vorgabe sind 7 Tage. Mit 0 werden alle Exporte unabhängig vom Alter gelöscht.
Die geplante Aufgabe Cleanup H5P export filearea läuft standardmäßig einmal täglich um 03:17 Uhr Serverzeit. Den Zeitpunkt ändern Sie wie bei jeder Aufgabe unter Website-Administration → Server → Geplante Vorgänge.
Bereinigung von Hand
Abschnitt betitelt „Bereinigung von Hand“Für eine sofortige Bereinigung gibt es ein Kommandozeilen-Skript:
sudo -u www-data php local/eledia_cleanup_h5p_exports/cli/h5p_export_cleanup.php --dryrun--dryrunzeigt, welche Dateien gelöscht würden, und löscht nichts.--days=Nüberschreibt das eingestellte Mindestalter für diesen Lauf.--days=0löscht alle Exportdateien.
Am Ende gibt das Skript eine Zusammenfassung aus: wie viele Dateien gelöscht und wie viele behalten wurden. Wir empfehlen, vor dem ersten echten Lauf einen Probelauf zu machen. So sehen Sie, wie viele Dateien betroffen sind.
Das Skript lässt sich auch über den Cron des Servers einplanen, falls der Moodle-Cron auf einer Instanz nicht zuverlässig läuft.
Was gelöscht wird und was nicht
Abschnitt betitelt „Was gelöscht wird und was nicht“Gelöscht werden nur Dateien im Systemkontext mit der Komponente core_h5p und dem Bereich export. Unberührt bleiben:
- die H5P-Inhalte in Kursen und in der Inhaltsbank,
- die H5P-Bibliotheken,
- Ergebnisse und Versuche von Lernenden.
Gelöscht wird über die Datei-API. Datenbankeintrag und Datei in moodledata verschwinden damit gemeinsam, und die Dateiverwaltung von Moodle bleibt in sich stimmig.
Empfehlungen für den Betrieb
Abschnitt betitelt „Empfehlungen für den Betrieb“Für die meisten Plattformen reicht die Vorgabe von sieben Tagen. Exporte, die jünger sind, bleiben erhalten, sodass häufig heruntergeladene Inhalte nicht ständig neu erzeugt werden müssen.
Auf Plattformen mit sehr vielen H5P-Inhalten lohnt sich vor der ersten Aktivierung ein Probelauf mit --dryrun. Die Ausgabe zeigt, wie viele Dateien betroffen sind. Ist die Zahl sehr hoch, führen Sie den ersten Lauf von Hand über das CLI-Skript aus, außerhalb der Hauptnutzungszeit. Danach übernimmt die geplante Aufgabe die tägliche Pflege, und jeder Lauf betrifft nur noch die Exporte eines Tages.
Datenschutz
Abschnitt betitelt „Datenschutz“Das Plugin speichert keine personenbezogenen Daten. Es entfernt Dateien, die Moodle selbst als Zwischenspeicher angelegt hat. Die Exportpakete enthalten Lerninhalte, aber keine Ergebnisse von Lernenden.
Grenzen
Abschnitt betitelt „Grenzen“- Das Plugin räumt nur den Bereich
core_h5p/exportauf. Andere Ursachen für einen großen Datenspeicher, etwa alte Sicherungen, bleiben bestehen. - Gelöschte Exporte entstehen neu, sobald jemand einen H5P-Inhalt herunterlädt oder speichert. Der Speicherbedarf sinkt also dauerhaft, aber nicht auf null.
- Physisch frei wird der Speicher erst, wenn Moodle verwaiste Dateien aus dem Dateispeicher entfernt. Das übernimmt die Moodle-eigene Aufgabe zur Dateibereinigung.
FAQ und Fehlerbehebung
Abschnitt betitelt „FAQ und Fehlerbehebung“Können Lernende nach der Bereinigung noch H5P-Inhalte herunterladen? Ja. Moodle erzeugt das Paket beim nächsten Abruf neu.
Der Speicher ist nach dem Lauf nicht kleiner. Moodle löscht die Dateien in moodledata zeitverzögert über die Aufgabe für verwaiste Dateien. Prüfen Sie am Folgetag erneut.
Wo sehe ich, was gelöscht wurde? Im Protokoll der geplanten Aufgabe unter Geplante Vorgänge → Protokolle oder in der Ausgabe des CLI-Skripts.