Sicherung und Wiederherstellung FAQ

Wechseln zu: Navigation, Suche

Hinweis: Sie sind auf den Seiten der Moodle 1.9 Dokumentation. Die Dokumentation der aktuellsten Moodle-Version finden Sie hier: Sicherung und Wiederherstellung FAQ.

Baustelle.png Diese Seite ist noch nicht vollständig übersetzt.

Siehe en:Backup_and_restore_FAQ

Wie sichere ich einen Kurs?

Siehe Kurssicherung und Automatische Kurssicherung.

Wie stelle ich einen Kurs wieder her?

Siehe Kurswiederherstellung.

Wie sichere ich meine gesamte Moodle-Installation?

Siehe Sicherung der Moodle-Installation.

Sicherung bricht beim Zippen ab!

Moodle 1.9 und ältere Versionen verwenden eine PHP-Bibliothek, um Dateien zu packen. Diese Vorgehensweise ist nicht sehr effizient und hat insbesondere Probleme beim Packen und Entpacken von großen Dateien. Sie können aber auch ein externes ZIP-Programm verwenden, welches Sie unter Website-Administration > Server > Systemprogramme eintragen können.

Moodle 2.0 verwendet neue PHP-Zip-Funktionen, so dass ein externes Systemprogramm nicht mehr nötig ist.

Was sind die Pros und Cons von Kurssicherung bzw. Sicherung der Moodle-Installation?

Die Sicherung der Moodle-Installation wird empfohlen, um eine vollständige Sicherung aller relevanten Daten für den Notfall schnell verfügbar zu haben.

Die Automatische Kurssicherung ist teurer in Bezug auf Zeitaufwand und CPU-Last. Auch die Wiederherstellung Ihrer Moodle-Installation im Notfall dauert länger. Kurssicherungen sind nützlich, um "frische" Kopien von Kursen zu haben, die wiederverwendet werden sollen, sie sollten aber niemals als alleinige Backup-Strategie dienen (es sei denn, Ihr Hosting-Provider erlaubt keine vollständige Sicherung der Moodle-Installation).

Welche Daten sind in einer Kurssicherung nicht enthalten?

Wenn Sie bei einer Kurssicherung alle Optionen auswählen, dann werden fast alle kursspezifischen Daten gesichert. Beachten Sie jedoch, dass folgendes nicht gesichert wird:

  • Testfragen werden nur gesichert, wenn mindestens eine Frage einer Fragenkategorie tatsächlich zu einem Test gehört.
  • Bewertungsskalen werden nur gesichert, wenn sie in mindestens einer Lernaktivität verwendet werden.

Der Prozess endet mit einer Fehlermeldung. Was kann ich tun?

Es kann passieren, dass das Sichern oder Wiederherstellen eines Kurses mit der Fehlermeldung

 "Error: An error occurred deleting old backup data".

endet, d.h. alte Sicherungsdaten nicht gelöscht werden können. Im einzelnen passiert während des Prozesses der Kurssicherung oder -wiederherstellung folgendes:

  1. Alte Datensätze aus der Tabelle mdl_backup_ids der Moodle-Datenbank löschen: Prüfen Sie, ob diese Tabelle existiert, reparieren Sie ggf. die Tabelle und versuchen Sie es erneut.
  2. Alte Datensätze aus der Tabelle mdl_backup_files der Moodle-Datenbank löschen: Prüfen Sie, ob diese Tabelle existiert, reparieren Sie ggf. die Tabelle und versuchen Sie es erneut.
  3. Alte Dateien im Unterverzeichnis moodledata/temp/backup des Moodle-Datenverzeichnisses löschen: Löschen Sie dieses Unterverzeichnis auf dem Server und versuchen Sie es erneut.
Fehlermeldung

Bemerkung zu den Punkten 1 und 2: Es gibt verschiedene Möglichkeiten, Tabellen in der Moodle-Datenbank zu reparieren, u.a. mit Hilfe von MySQL Admin.

Bemerkung zu Punkt 3: Die Fehlermeldung besagt, dass das Unterverzeichnis moodledata/temp/backup nicht leer ist und gibt den Pfad zu diesem Unterverzeichnis aus. Wenn Sie per FTP auf dieses Unterverzeichnis zugreifen, können Sie den Inhalt prüfen und löschen. Es kann sein, dass das Unterverzeichnis einfach weitere, leere Verzeichnisse enthält - löschen Sie diese. Oder löschen Sie das gesamte Verzeichnis moodledata/temp/backup. Das kann u.U. etwas länger dauern, aber dafür evtl. mehrere Probleme auf einmal lösen.

Die Kurswiederherstellung endet mit einem XML-Fehler. Was kann ich tun?

Dieses Problem kann zu jedem Zeitpunkt des Wiederherstellungsprozesses auftreten, und zwar dann, wenn der XML-Parser einen Fehler in der Sicherungsdatei findet. Normalerweise werden solche Fehler durch "falsche" Zeichen verursacht, die durch Copy&Paste in den Kurs geraten sind (z.B. Steuerzeichen o.ä.).

Die beste Vorgehensweise zur Behebung eines solchen Fehlers ist folgende:

  • Entpacken Sie die korrupte Sicherungsdatei in einem leeren Verzeichnis.
  • Öffnen Sie die Datei moodle.xml im Firefox. Im Browser sollten die "falschen" Zeichen sichtbar werden.
  • Öffnen Sie die Datei moodle.xml in einem UTF8-kompatiblen Editor und löschen Sie diese Zeichen. Speichern Sie die Änderungen.
  • Prüfen Sie die Datei moodle.xml erneut im Firefox und wiederholen Sie diese Schritte, bis keine Fehler mehr angezeigt werden.
  • Zippen Sie das Verzeichnis wieder (den ganzen Inhalt, aber nicht das Verzeichnis selbst!).
  • Stellen Sie nun den Kurs wieder her - das sollte jetzt funktionieren. Falls nicht, lesen Sie die Frage und zugehörige Antwort im nächsten Abschnitt.

Außerdem empfehlen wir, den Fehler auch im Original-Moodlekurs zu beheben - damit der Fehler bei einer erneuten Sicherung und Wiederherstellung dieses Kurses nicht wieder auftritt.

Ich bekomme immer noch eine XML_Fehlermeldung. Wie kann ich die korrupte XML-Datei reparieren?

In manchen Fällen kann die XML-Datei einer Kurssicherung Zeichen enthalten, die zum Abbruch des Wiederherstellungsprozesses führen, selbst dann, wenn Sie die Schritte im vorigen Abschnitt durchgeführt haben. In solchen Situationen können Sie folgendes versuchen:

  • Entpacken Sie die korrupte Kurssicherungsdatei in einem leeren Verzeichnis. Verwenden Sie zum Entpacken die Moodle-interene Unzip-Funktionalität.
  • Benennen Sie die korrupte Datei moodle.xml um, z.B. in moodle-corrupt.xml.
  • Wenn Sie keinen direkten Zugriff auf die Kommandozeile Ihres Moodle-Servers haben, zippen Sie die Datei moodle-corrupt.xml mittels der Moodle-internen Zip-Funktionalität und laden Sie sich diese Zip-Datei dann auf Ihren lokalen PC herunter. Achtung: Es ist ganz wichtig, die Zip-Datei herunterzuladen und lokal zu entpacken, um Kodierungsfehler beim Wechsel des Betriebssystems zu vermeiden.
  • Verschieben Sie das Atlassian XML Cleaner Utility Tool in dasselbe Verzeichnis, in dem sich nun lokal auf Ihrem PC die Datei moodle-corrupt.xml befindet.
  • Führen Sie den folgenden Befehl von der Kommandozeile Ihres PCs aus:
  java -jar atlassian-xml-cleaner-0.1.jar moodle-unclean.xml > moodle.xml
  • Zippen Sie anschließend die nun hoffentlich bereinigte Datei moodle.xml und laden Sie diese wieder auf den Moodle-Server hoch (und zwar an dieselbe Stelle, von der Sie vorher die Datei moodle-corrupt.xml heruntergeladen haben. Entpacken Sie die Zip-Datei mittels der Moodle-internen Unzip-Funktionalität.
  • Zippen Sie nun alles wieder (den gesamten Inhalt des Verzeichnisses, aber nicht das Verzeichnis selbst!).
  • Stellen Sie den Kurs wieder her - das sollte jetzt funktionieren.

Was bedeutet die Meldung: "Einige Ihrer Kurse wurden nicht gesichert !!"?

Es gibt drei mögliche Gründe für diese Meldung:

  1. Fehler - das passiert, wenn bei der automatischen Kurssicherung ein Fehler aufgetreten ist und die Sicherung eines bestimmten Kurses nicht abgeschlossen werden konnte. Das sind "kontrollierte" Fehler, d.h. die automatische Kurssicherung wird einfach mit dem nächsten Kurs fortgesetzt.
  2. Nicht abgeschlossen - das passiert, wenn die Kurssicherung aus ungeklärten Gründen abbricht. Wenn der Cron-Job das nächste Mal ausgeführt wird, erkennt er, dass die letzte automatische Kurssicherung fehlgeschlagen ist und setzt die Sicherung fort, wobei der problematische Kurs übersprungen wird. Eine mögliche Lösung besteht darin, die Apache/PHP Limits zu erhöhen (memory, time of execution...). Wenn Sie einen Blick in Ihre Log-Dateien werfen, können Sie prüfen, ob das Problem in ganz bestimmten Zeitintervallen auftritt (das deutet darauf hin, dass die PHP-Einstellung max_execution_time zu niedrig gesetzt ist).
  3. Übersprungen - das passiert, wennn ein Kurs für Teilnehmer nicht verfügbar ist und im letzten Monat (31 Tage lang) nicht geändert wurde. Das ist keine Fehlersituation, sondern entspricht der normalen Moodle-Funktionalität, um insbesondere bei großen Installationen mit vielen alten, nicht verfügbaren Kursen die Prozessdauer zu verkürzen.

Wie kann ich Sicherungen vor 1.6, welche nicht ISO-8859-1 sind, auf Moodle 1.6 (Unicode) wiederherstellen?

Alle Sicherungsdateien, welche nicht 100% ISO-8859-1 sind, werden bei der Wiederherstellung auf Moodle 1.6 (und höher), welches unter Unicode läuft, Probleme machen. Statttdessen versuchen Sie bitte Folgendes:

  1. Erstellen Sie eine frische Installation von Moodle 1.5.x (aktuelleste verfügbare Version)
  2. Stellen Sie dort all ihre Kurse wieder her (sie sollten funktionieren, wenn sie ursprünglich liefen)
  3. Aktualisieren Sie Ihre Website auf Moodle 1.6 und führen Sie das UTF-8 Migrationsskript aus.
  4. Sichern Sie ihre Kurse nochmals.

Dadurch wird eine neue Reihe von Backup-Dateien erzeugt, die 100% UTF-8 sind, und Sie werden sie ohne Probleme mit Moodle 1.6 verwenden können.

Die Wiederherstellung eines Kurses führt zu fehlerhaften HTML-Bezeichnungen. Was kann ich tun?

Dies wird durch einen PHP-Fehler in der Datei libxml2 2.7.1 PHP bug in libxml2 2.7.1 (der gleiche Fehler tritt bei den Versionen 2.7.2 and 2.7.3 auf). Alle HTML-Bezeichner, wie zum Beispiel >, < und " werden entfernt, wenn ein Kurs wiederhergestellt wird.

Um das Problem zu beheben, sollten Sie eine andere Version von libxml2 wie zum Beispiel 2.7.0 oder 2.6.32 oder PHP mittels libexpat statt mit libxml2 kompilieren oder schlussendlich PHP Version >= 5.2.9 verwenden, welche dieses Kompatibilitätsproblem mit dem neuen libxml2 auflöst.

Bei Gentoo Servern können sie dies eingeben:

echo ">dev-libs/libxml2-2.6.32" >> /etc/portage/package.mask

Update: This was fixed for libxml2 version 2.7.3 in PHP snapshot on 11/01/2009. You can use the following patch:

--- php-5.2.8/ext/xml/compat.c 2008/12/31 11:12:38 1.52
+++ php-5.2.8/ext/xml/compat.c 2009/01/11 12:00:30 1.53
@@ -482,6 +482,10 @@
parser->parser->charset = XML_CHAR_ENCODING_NONE;
#endif

+#if LIBXML_VERSION >= 20703
+ xmlCtxtUseOptions(parser->parser, XML_PARSE_OLDSAX);
+#endif
+
parser->parser->replaceEntities = 1;
parser->parser->wellFormed = 0;
if (sep != NULL) {

Weitere Informationen gibt es hier: Restoring makes webpages and labels in code.

Wenn das Obige keinen Sinn macht, weil zum Zeitpunkt der Erstellung der neuesten Versionen von libxml2 und PHP das Problem nicht mehr auftritt: Upgraden Sie beide und alles sollte wieder in Ordnung sein.

Warum werden einige Kurse bei der automatischen Kurssicherung übersprungen?

Ab Moodle 1.6 werden bei der automatischen Kurssicherung Kurse übersprungen, die für Teilnehmer nicht verfügbar sind und im vergangenen Monat nicht geändert wurden.

Warum bricht die Kurswiederherstellung ab?

Wenn Sie versuchen, einen Kurs in einer älteren Moodle-Version wiederherzustellen als der, in der der Kurs gesichert wurde, dann kann dies zu Fehlern und zum Abbruch der Kurswiederherstellung führen. Achten Sie also darauf, dass die Moodle-Version bei der Wiederherstellung dieselbe ist wie bei der Sicherung oder neuer als die Sicherung.

Wenn die Wiederherstellung unerwartet und ohne Fehlermeldung abbricht, dann aktivieren Sie das Debugging und versuchen Sie es erneut. Die dann angezeigten Fehlermeldungen können bei der Problemlösung helfen - wenden sie sich damit an die Experten in den jeweiligen Foren des Kurses Using Moodle auf moodle.org.

Wie kann ich die Robustheit einer Kurswiederherstellung verbessern und die Prozessdauer verkürzen?

Moodle1.9 Um die Robustheit einer Kurswiederherstellung zu verbessern und die Dauer des Wiederherstellungsprozesses zu verkürzen - insebsondere für mittlere und große Kurssicherungen - können Sie die Einstellung Experimentell: Geteilte Wiederherstellung (experimentalsplitrestore) unter Website-Administration > Verschiedenes > Experimentell aktivieren. Diese Einstellung gibt es ab Moodle 1.9.5.

Siehe auch

Diskussionsbeiträge im Kurs Using Moodle auf moodle.org: