Hinweis: Sie sind auf den Seiten der Moodle 3.2 Dokumentation. Die Dokumentation der aktuellsten Moodle-Version finden Sie hier: Aktualisierung von Moodle.

Aktualisierung von Moodle: Unterschied zwischen den Versionen

Aus MoodleDocs
Wechseln zu:Navigation, Suche
Keine Bearbeitungszusammenfassung
 
(35 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Installation}}
{{Installation}}
Dieser Artikel beschreibt, wie Sie Moodle aktualisieren. Eine Übersicht über die einzelnen Schritte finden Sie unter [[Aktualisierung in Kürze]].


Moodle ist so konzipiert, dass man das System einfach und problemlos von einer Version auf die nächste aktualisieren kann.  
==Voraussetzungen prüfen==
Prüfen Sie die Systemanforderungen für die aktuellste Moodle-Version 3.2 unter Block ''[[Einstellungen-Block|Einstellungen]] > Website-Administration > Server > [[Serverinformationen]]''. In den  [https://docs.moodle.org/dev/Moodle_3.2_release_notes Release Notes] in der Entwicklerdokumentation (englisch) steht, welche Voraussetzungen der [https://docs.moodle.org/dev/Moodle_3.2_release_notes#Server_requirements Server] und der [https://docs.moodle.org/dev/Moodle_3.2_release_notes#Client_requirements Client] erfüllen muss.


Änderungen, die Sie am Originalcode bzw. an der Standardinstallation vorgenommen haben (z.B. Installation von Zusatzmodulen Dritter oder Änderungen an den PHP-Skripten), werden bei der Aktualisierung u.U. nicht mit aktualisiert. Das gilt insbesondere für Änderungen der [[Designs|Standarddesigns]], die bei der Aktualisierung überschrieben werden.
'''Hinweise''':
*Beachten Sie, dass Sie nur von Moodle 2.7 oder neueren Versionen auf die aktuelleste Moodle-Version 3.2 aktualisieren können. Wenn Ihr Moodle älter ist, dann müssen Sie erst auf [https://docs.moodle.org/27/de/Auf_Moodle_2.7_aktualisieren Moodle 2.7 aktualisieren].


Im folgenden werden die einzelnen Schritte einer Aktualisierung detailliert beschrieben.
==Bevor Sie Ihr Produktivsystem aktualisieren==
'''Wir empfehlen Ihnen dringend, die Aktualisierung auf einer Kopie Ihres Produktivsystems zu testen, um sicherzustellen, dass alles wie gewünscht funktioniert.'''


==Voraussetzungen prüfen==
Nutzen Sie bei Bedarf einen [[Aktualisierungsschlüssel]] für Ihre Moodle-Site.


Nehmen Sie sich die Zeit und lesen Sie noch einmal den Artikel [[Installation von Moodle]]. Prüfen Sie die Systemanforderungen für die Moodle-Version, auf die Sie aktualisieren möchten,  unter Block ''[[Einstellungen-Block|Einstellungen]] > Website-Administration > Server > [[Serverinformationen]]''.
==Wichtige Daten sichern==
Detaillierte Informationen dazu finden Sie im Artikel [[Sicherung der Moodle-Installation|Sicherungen]].  


==Aktuelle Daten sichern==
Im wesentlichen müssen Sie drei Bereiche sichern:
Bevor Sie eine Aktualisierung einer produktiven Moodle-Installation durchführen, empfehlen wir dringend, alle wichtigen Daten zu sichern. Für den Fall, dass bei der Aktualisierung wider Erwarten etwas schief gehen sollte, können Sie so problemlos auf die alte Version zurückgreifen.
#Moodle Software (PHP-Skripte von Moodle)
#[[Moodle-Datenverzeichnis]]
#[[Moodle-Datenbank]]


'''Tipp''': Generell ist es eine gute Idee, die Daten täglich automatisch zu sichern.
Erfahrene Administrator/innen wissen, dass es bei größeren Aktualisierungen immer wichtig ist, diese Daten zu sichern. Generell ist es eine gute Idee, diese Daten täglich automatisch zu sichern. Wenn Sie eine Standardinstallation von Moodle betreiben (ohne zusätzliche Plugins, ohne eigene Codeanpassungen), dann läuft die Aktualisierung normalerweise reibungslos durch.


Es gibt drei Bereiche in Moodle, in denen Daten gesichert werden müssen:
'''Tipp''': Prüfen Sie auch, ob Sie Ihre Sicherungen wiederherstellen können, sonst nützen sie nichts!


====1. Das Moodle-Verzeichnis selbst====
==Prüfen Sie, ob es Aktualisierungen für Ihre Plugins gibt==
Sichern Sie das [[Moodle-Verzeichnis]] mit den PHP-Skripten. So können Sie später auf Ihre alte [[Moodle-Konfigurationsdatei]] ''config.php'' und alle Zusatzmodule (Aktivitäten, Designs, usw.) zurückgreifen.
Wenn Sie die [[Automatische Aktualisierungen|Automatische Aktualisierung]] aktiviert haben, dann können Sie die installierten Plugins automatisch während der Aktualisierung von Moodle aktualisieren. Prüfen Sie auf der Seite ''[[Einstellungen-Block|Einstellungen]] > Website-Administration > Plugins > Übersicht'', ob Aktualisierungen vorhanden sind.


====2. Das Moodle-Datenverzeichnis====
Wenn Sie Plugins manuell aktualisieren, dann ist es ein guter Zeitpunkt zu prüfen, ob es eine aktuelle Version 3.0 für die Plugins gibt, die Sie früher auf Ihrer Moodle-Site installiert haben. Wenn das der Fall ist, laden Sie diese neue(n) Plugin-Version(en) herunter, kopieren Sie sie an die richtige Stelle im Moodle-Code-Verzeichnis (siehe [[Plugins installieren]]).  
Die Daten im [[Moodle-Datenverzeichnis]] (Arbeitsmaterialien, eingreichte Aufgaben, usw.) sind so wichtig, dass Sie ohnehin regelmäßig gesichert werden müssen. Sichern Sie in jedem Fall vor der Aktualisierung das komplette Verzeichnis, denn im Verlauf des Aktualisierungsprozesses kann es zur Umbenennung oder Verschiebung von Unterverzeichnissen kommen.


Unter Linux können Sie einfach eine temporäre Kopie des [[Moodle-Datenverzeichnis]]ses erstellen:
Die Aktualisierung des Plugins erfolgt dann im Verlauf der Aktualisierung von Moodle.


  mkdir /var/www/moodledata_backup
Wenn ein veraltetes Plugin den Abbruch der Aktualisierung verursacht, dann löschen Sie den entsprechenden Code direkt auf dem Moodle-Server, anstatt das Plugin in Moodle zu deinstallieren.
  cp -r /var/www/moodledata/* /var/www/moodledata_backup


====3. Die Moodle-Datenbank====
==Wartungsmodus aktivieren==
Bei einer Aktualisierung wird in den allermeisten Fällen die [[Moodle-Datenbank]] verändert (Tabelle oder Felder neu angelegt oder geändert). Es gibt verschiedene Möglichkeiten, eine Datenbank zu sichern. Im Fall einer MySQL-Datenbank wird die Datenbank durch einen sogenannten Dump in einer einzelnen SQL-Datei gesichert. Beispielhaft zeigt das folgende Kommando, wie unter Unix eine MySQL-Datenbank "moodle" gesichert wird:
Bevor Sie mit der Aktualisierung beginnen, schalten Sie die Moodle-Site in den [[Wartungsmodus]], um zu verhindern, dass sich Nutzer/innen anmelden.


  mysqldump -u username -p -C -Q -e --create-options moodle > moodle-backup-2009-01-01.sql
== Neue Moodle-Version installieren ==
Laden Sie sich das aktuelle Moodle Paket 3.0 von[http://download.moodle.org] herunter oder verwenden Sie den Befehl


Ersetzen Sie im obigen Befehl "username" durch Ihren Datenbank-Nutzer, der Zugriff auf die Moodle-Datenbank hat. Die Option "-p" bewirkt, dass das Kennwort des Datenbank-Nutzers abgefragt wird, der hinter der Option "-u" angegeben ist.
    wget http://sourceforge.net/projects/moodle/files/Moodle/stable30/moodle-latest-30.tgz


Wenn die Datenbank auf einem anderen Server liegt, als der, von dem Sie das Sicherungskommando ausführen (normalerweise vom Webserver aus), dann müssen Sie mit der Option "-h" den Server angeben, auf dem die Datenbank liegt:
=== Standardpaket verwenden ===
* Benennen Sie das alte Moodle-Verzeichnis um (z.B. ''/moodle'' -> ''/moodleold'').
* Entpacken Sie den neuen Code und kopieren Sie ihn in das Verzeichnis, in dem die alten Moodle-Skripte vorher lagen (z.B. ''/moodle'').
* Kopieren Sie Ihre alte [[Moodle-Konfigurationsdatei]] ''config.php'' zurück ins Moodle-Verzeichnis (z.B. ''/moodle'').
* Wenn Sie zusätzliche Plugins installiert hatten, laden Sie die entsprechenden neuen Versionen herunter und entpacken Sie diese in den passenden Verzeichnissen (siehe [[Plugins installieren]]). Stellen Sie sicher, dass die Versionen der Plugins zur neuen Moodle-Version passen.
* Kopieren Sie Ihr [[Moodle-Datenverzeichnis]].


  mysqldump -u username -p -h databasehost -C -Q -e --create-options moodle > moodle-backup-2009-01-01.sql
Unter Linux würden diese Schritte so aussehen:
 
Moodle-Verzeichnis umbenennen und neuen Code entpacken:
    mv moodle moodle.backup
    tar xvzf moodle-3.0.tgz
   
   
Sie können auch die Export-Funktionalität der MySQL-Admin-Schnittstelle von Moodle verwenden. Bei dieser Schnitt stelle handelt es sich um eine Integration von [http://www.phpmyadmin.net/home_page/index.php phpMyAdmin] in Moodle. Diese Schnittstelle gehört allerdings nicht zur Standardinstallation. Sie kann unter [http://moodle.org/mod/data/view.php?d=13&rid=448 Module und Plugins] heruntergeladen werden und ist nach der Installation unter ''Website-Administration > Server > Datenbank'' verfügbar.
Alte Moodle-Konfigurationsdatei kopieren und zusätzliche Plugins kopieren:
    cp moodle.backup/config.php moodle
    cp -pr moodle.backup/theme/mytheme moodle/theme/mytheme
    cp -pr moodle.backup/mod/mymod moodle/mod/mymod


'''Hinweise zum SQL-Dump''':
Die Moodle-Konfigurationsdatei für den Webserver lesbar machen. Idealerweise sollten diese Dateien für den Webserver nicht schreibbar sein:
*Beachten Sie, dass es eine Vielzahl von Optionen für den Befehl "mysqldunp" gibt. Fragen Sie Ihre Systemadministrator oder informieren Sie sich anderweitig, was die Optionen im einzelnen bedeuten und welche Sie verwenden sollten. Z.B. wenn Ihre lokale (Test-)Installation MySQL 5.2 verwendet und Sie ziehen mit Ihrem System auf einen Produktiv-Server um, auf dem MySQL 5.0 oder 4.1 läuft, dann '''müssen''' Sie die Option "--compat=mysql40" verwenden.
    chown -R www-data:www-data moodle (Linux debian - ändern Sie bei Bedarf den Webserver-Nutzer entsprechend Ihrer Linux-Distribution)
* Die obigen Befehle gelten nur für MySQL-Server! Wenn Sie eine anderes Datenbanksystem (wie Oracle, PostgreSQL, o.a.) verwenden, dann gibt es dort eigene Wekzeuge, um Datenbanken zu sichern!
    chmod -R 755 moodle


==Neue Moodle-Software installieren==
Wenn Sie Cron verwenden, stellen Sie sicher, dass das Cron-Skript ausführbar ist und der richtige PHP-Befehl verwendet wird:
Es gibt zwei Möglichkeiten, um an Moodle heranzukommen:
    chmod 740 admin/cli/cron.php (einige Linux-Distributionen benötigen chmod 750 oder chmod 755)
* als gepacktes Paket (*.zip oder *.tgz) von http://download.moodle.org/
* über [[Git für Administratoren|Git]]


=== Gepacktes Moodle-Paket verwenden ===
Den richtigen PHP-Befehl finden Sie in der 1. Zeile des Cron-Skripts, etwa:
    /usr/local/bin/php oder /usr/local/bin/php5.3


Laden Sie sich ein geeignetes Paket von http://download.moodle.org/ herunter und entpacken Sie es im neu angelegten Moodle-Verzeichnis.
=== Git verwenden===


'''Achtung''': Überschreiben Sie niemals eine alte Installation! Am besten, Sie benennen Ihr altes [[Moodle-Verzeichnis]] (wo die PHP-Skripte von Moodle gespeichert sind) um und legen ein neues, leeres Verzeichnis mit dem alten Namen an.
Sie können auch das [[Git für Administratoren|Git]] verwenden, um Moodle zu aktualisieren.  


Unter Linux etwa lauten die nötigen Befehle:
===Aktualisierung von Kommandozeile===


  mv moodle moodle.backup
Sie können Moodle auch [[Administration über Kommandozeile|von der Kommandozeile aktualisieren]]. Diese Variante funktioniert insbesondere für große Moodle-Installationen zuverlässiger als die Aktualisierung über den Webbrowser.
  tar xvzf moodle-1.x.tgz


Als nächstes kopieren Sie Ihre alte [[Moodle-Konfigurationsdatei]] ''config.php'', Ihre Datei ''.htaccess'' (falls vorhanden) und alle weiteren Module, die Sie in Ihrer alten Version zusätzlich installiert hatten, an die entsprechenden Stellen Ihres aktuellen [[Moodle-Verzeichnis|Moodle-Verzeichnisses]]:
==Aktualisierung abschließen==
 
Jetzt müssen Sie noch den eignetlichen Aktualisierungsprozess in Moodle anstoßen. Gehen Sie dazu auf die Seite ''[[Einstellungen-Block|Einstellungen]] > Website-Administration > Mitteilungen''.
  cp moodle.backup/config.php moodle
  cp -pr moodle.backup/theme/mytheme moodle/theme/mytheme
 
Vergessen Sie nicht, die Verzeichnisrechte/ -besitzer wieder richtig anzupassen (wenn nötig):
 
  sudo chown www-data moodle/config.php
 
Dabei ist "www-data" der Webserver-Nutzer in Ihrem System (meistens "apache" oder "www"). Sie können die richtigen Rechte/Besitzer herausfinden, indem Sie ein "ls -l" auf Ihrem alten Verzeichnis aufrufen und sehen z.B. (neben vielen anderen Zeilen):
 
  -rw-r--r--  1 apache system    784 Jun 28  2007 config.php
 
D.h. der Besitzer der Datei ist "apache", und die Gruppe ist "system".


Sie können das für Ihr neues System wie folgt ändern:
Moodle erkennt automatisch, dass eine neuere Version auf den Server hochgeladen wurde und startet die Aktualisierung der [[Moodle-Datenbank]] und des [[Moodle-Datenverzeichnis]]ses. Wenn irgendetwas nicht automatisch aktualisiert werden kann, sehen Sie entsprechende Hinweise und Anleitungen, was Sie tun sollen.


  chown apache:system config.php
Wenn alles erfolgreich und ohne Fehlermeldungen durchläuft, dann können Sie mit Ihrer neuen Moodle-Version sofort loslegen!


oder für das gesamte Verzeichnis:
'''Hinweis''': Wenn Sie mit mehreren Servern arbeiten, dann sollten Sie nach der Aktualisierung auf allen Servern den Cache löschen: Klicken Sie dazu im Block  ''[[Einstellungen-Block|Einstellungen]] > Website-Administration > Entwicklung > Cache löschen''.


  chown apache:system ./*
===Fatal error: Maximum execution time of 30 seconds exceeded...===
Wenn Sie neben dem englischen Sprachpaket weitere Sprachpakete verwenden, dann kann dieser Fehler auftreten, weil die Aktualisierung des Sprachpakets zu lange dauert. In diesem Fall erhöhen Sie inder PHP-Konfigurationsdatei ''php.ini'' den Wert <pre>max_execution_time = 160</pre>. Dann haben die Moodle-Skripte genügend Zeit, die Sprachpakete zu aktualisieren.
Alternativ können Sie Ihre Moodle-Site vor der Aktualisierung auf englisch umstellen und danach wieder auf die gewünschte Sprache zurückstellen. Siehe dieser Diskussionsbeitrag auf moodle.org: https://moodle.org/mod/forum/discuss.php?d=119598.


oder rekursiv für das gesamte Verzeichnis und alle Unterverzeichnisse:
==Nach der Aktualisierung==
Die Moodle-Konfigurationsdatei ''config.php'' sollte gut funktionieren. Wenn Sie sich jedoch die mitgelieferte Konfigurationsdatei ''config-dist.php'' ansehen, dann finden Sie dort weitere/andere Optionen (z.B. Datenbanktreiber und -einstellungen). Es ist eine gute Idee, die neuen Werte aus der ''config-dist.php'' in Ihre ''config.php'' zu übernehmen.


  chown -R apache:system ./*
===Cron===
Das Cron-Skript wurde vollständig überarbeitet (siehe MDL-25499) und unterstützt jetzt sowohl [[Geplante Vorgänge]] als auch Adhoc-Vorgänge.


=== Git verwenden===
Die Vorteile dieser Änderungen sind:
* Der Zeitplan für jeden Vorgang kann von der Moodle-Administration konfiguriert werden.
* Vorgänge können parallel laufen.
* Die Cron-Prozesse sperren sich gegenseitig, so dass verhindert wird, das ein und derselbe Vorgang von mehreren Cron-Prozessen gleichzeitig bearbeitet wird.
* Cluster mit mehreren identischen Anwendungsknoten werden unterstützt, so dass der Cron-Job auf allen laufen kann.


Sie können auch das [[Git für Administratoren|Git]] verwenden, um Moodle zu aktualisieren.  
Damit kann der Cron-Job viel häufiger laufen, so dass z.B. Forumsbeiträge schneller per E-Mail verschickt werden können. Es wird dringend empfohlen, dass die Moodle-Administration den Cron-Job mindestens 1x pro Minute laufen lässt.


==Aktualisierung abschließen==
Evtl. müssen Sie auch alle selbstgeschriebenen Skripte anpassen, die die Ausgabe des Cron-Skripts verarbeiten. Es ist nicht mehr möglich, mit solchen Skripten einfach die Cron-Ausgabe <pre>Cron script completed correctly</pre> auszuwerten. Stattdessen können Sie die Fehlerausgaben <pre>task failed</pre> auswerten. Ein paar Tipps dazu finden Sie [[Cron-Job#Fehlerbehandlung bei geplanten Vorgängen|hier]].


Nach der Installation der neuen Moodle-PHP-Skripte müssen Sie die eigentliche Aktualisierung von Moodle durchführen. Dann wird die [[Moodle-Datenbank]] entsprechend der neuen Version aktualisiert. Gehen Sie dazu auf die Administrationsseite Ihrer Installation:
In früheren Moodle-Versionen konnte es passieren, dass ein Fehler in einem Vorgang zum Abbruch des gesamten Cron-Jobs führte. Jetzt passiert das nicht mehr. Prüfen Sie also die Ausgaben des Cron-Skripts nach der Aktualisierung sorgfältig.


  http://example.com/moodle/admin
===Aufgaben===
Das alte Aufgaben(2.2)-Plugin wurde in der neuen Moodle-Version gelöscht. Es ist jedoch weiterhin gewährleistet, dass alte Kurssicherungen, die alte Aufgaben(2.2.)-Aktivitäten enthalten sauber wiederhergestellt werden können.


Moodle erkennt automatisch, dass eine neue Version im [[Moodle-Verzeichnis]] abgelegt wurde und führt nun die entsprechende Aktualisierung der Datenbank durch.
Wenn Sie immer noch dass alte Aufgaben(2.2)-Plugin verwendet haben, dann sind nach der Aktualisierung alle Aktivitäten diesen Typs verborgen. Um diese Aktivitäten wieder verfügbar zu machen, müssen Sie das [[Aufgaben-Update|das Aktualisierungs-Tool]] laufen lassen.


Wenn alles glatt läuft und Sie keine Fehlermeldungen erhalten, dann können Sie sofort beginnen, mit der neuen Version zu arbeiten und die neuen Funktionalitäten auszuprobieren.
Wenn es tatsächlich zwingende Gründe gibt, das alte Aufgaben(2.2)-Plugin weiter zu verwenden, dann müssen Sie den Code auf Moodle 3.0 aktualisieren und dann das Verzeichnis ''moodle/mod/assignment'' durch das entsprechende Verzeichnis von https://github.com/moodlehq/moodle-mod_assignment/releases ersetzen.


'''Achtung''': Wenn Sie eine sehr große Moodle-Installation betreiben (d.h. mehr als 10 000 Kurse und 40 000 Nutzer) und auf Moodle 1.8.x aktualisieren, dann testen Sie die [[Geschwindigkeit]] Ihres Servers, bevor Sie die neue Version freischalten, denn es gibt für diese Version nach wie vor Performanzprobleme.
==Mögliche Probleme in Moodle 3.2==
{{Zum Überarbeiten}}


==Aktualisierte Version testen==
===Verbesserung bei Schlagwörtern===
Wenn Sie Kursschlagwörter im Schlagwörter-Block verwendet haben und bisher die Einstellung "Kursschlagwörter anzeigen" aktiviert hatten, dann beachten Sie, dass sich die Funktionalität geändert hat. Siehe [[Schlagwörter-Block#Änderungen ab Moodle 3.0|Änderungen ab Moodle 3.0]].


Wenn Sie prüfen möchten, ob das Datenbank-Schema Ihrer aktualisierten [[Moodle-Datenbank]] mit dem Datenbank-Schema einer Neuinstallation übereinstimmt, dann finden Sie nähere Informationen dazu im Artikel [[Datenbank-Schema prüfen]].
===CAS und LDAP CLI Skripte esretzt durch der geplante Vorgänge===
Der [[Geplante Vorgänge|geplante Vorgang]] '''Synchonisierung von LDAP-Nutzerkonten''' <code>\auth_ldap\task\sync_task</code> ersetzt das CLI-Skript zur Synchronisierung von [[LDAP-Server|LDAP-Nutzerkonten]].  


==Mehrere Versionen bei der Aktualisierung überspringen==
Der [[Geplante Vorgänge|geplante Vorgang]] '''Synchonisierung von CAS-Nutzerkonten''' <code>\auth_cas\task\sync_task</code> ersetzt das CLI-Skript zur Synchronisierung von [[CAS-Server|CAS-Nutzerkonten]].


Im allgemeinen empfehlen wir, bei der Aktualisierung keine Version zu überspringen, sondern jede Version "mitzunehmen" (z.B. 1.7 > 1.8 > 1.9 > 2.0). Eine Ausnahme ist folgende: Wenn Sie von Moodle 1.5 oder 1.6 aktualisieren, sollten Sie die Versionen 1.7 und 1.8 auslassen, d.h. 1.5 > 1.6 > 1.9 > 2.0. Grund für diese Ausnahme ist, dass bei der Aktualisierung auf Moodle 1.7 die Standardrolleneinstellungen nicht optimal sind und bei der Aktualisierung auf Moodle 1.8 Probleme mit Gruppen auftreten können.
===Moodle 2.9, 3.0 und 3.1 Verbesserungen===
Je nachdem, von welcher Moodle-Version aus Sie auf Moodle 3.1 aktualisieren, empfehlen wir die entsprechenden Abschnitt "Mögliche Probleme in Moodle x.y" in der jeweiligen Dokumentation zu lesen:
* [https://docs.moodle.org/29/de/Aktualisierung_von_Moodle Auf Moodle 2.9 aktualisieren]
* [https://docs.moodle.org/30/de/Aktualisierung_von_Moodle Auf Moodle 3.0 aktualisieren]
* [https://docs.moodle.org/31/de/Aktualisierung_von_Moodle Auf Moodle 3.1 aktualisieren]


==Siehe auch==
==Siehe auch==
* [[Installation von Moodle]]
* [[Installation]]
* [[Installation FAQ]]
* [https://docs.moodle.org/19/de/Auf_Moodle_1.8_aktualisieren Auf Moodle 1.8 aktualisieren]
* [https://docs.moodle.org/19/de/Auf_Moodle_1.9_aktualisieren Auf Moodle 1.9 aktualisieren]
* [[Serverinformationen]]
* [http://moodle.org/mod/forum/view.php?id=28 Forum zur Installation] im Kurs ''Using Moodle'' auf moodle.org
* [http://moodle.org/mod/forum/view.php?id=28 Forum zur Installation] im Kurs ''Using Moodle'' auf moodle.org
* [http://docs.moodle.org/dev/Moodle_3.2_release_notes Moodle 3.2 Release Notes] (englisch)


Diskussionsbeiträge im Kurs ''Using Moodle'' auf moodle.org:
[[Category:Website-Administration]]
*[http://moodle.org/mod/forum/discuss.php?d=56991 Upgrade nightmares.... any help appreciated]
*[http://moodle.org/mod/forum/discuss.php?d=62463 After upgrading i get "Your site may not be secure." msg]
*[http://moodle.org/mod/forum/discuss.php?d=104887 Best practices for QA]
 
{{Credits}} [https://docs.moodle.org/19/de/Aktualisierung_von_Moodle]
 
[[Category:Administrator]]


[[en:Upgrading]]
[[en:Upgrading]]

Aktuelle Version vom 5. Februar 2019, 10:27 Uhr

Dieser Artikel beschreibt, wie Sie Moodle aktualisieren. Eine Übersicht über die einzelnen Schritte finden Sie unter Aktualisierung in Kürze.

Voraussetzungen prüfen

Prüfen Sie die Systemanforderungen für die aktuellste Moodle-Version 3.2 unter Block Einstellungen > Website-Administration > Server > Serverinformationen. In den Release Notes in der Entwicklerdokumentation (englisch) steht, welche Voraussetzungen der Server und der Client erfüllen muss.

Hinweise:

  • Beachten Sie, dass Sie nur von Moodle 2.7 oder neueren Versionen auf die aktuelleste Moodle-Version 3.2 aktualisieren können. Wenn Ihr Moodle älter ist, dann müssen Sie erst auf Moodle 2.7 aktualisieren.

Bevor Sie Ihr Produktivsystem aktualisieren

Wir empfehlen Ihnen dringend, die Aktualisierung auf einer Kopie Ihres Produktivsystems zu testen, um sicherzustellen, dass alles wie gewünscht funktioniert.

Nutzen Sie bei Bedarf einen Aktualisierungsschlüssel für Ihre Moodle-Site.

Wichtige Daten sichern

Detaillierte Informationen dazu finden Sie im Artikel Sicherungen.

Im wesentlichen müssen Sie drei Bereiche sichern:

  1. Moodle Software (PHP-Skripte von Moodle)
  2. Moodle-Datenverzeichnis
  3. Moodle-Datenbank

Erfahrene Administrator/innen wissen, dass es bei größeren Aktualisierungen immer wichtig ist, diese Daten zu sichern. Generell ist es eine gute Idee, diese Daten täglich automatisch zu sichern. Wenn Sie eine Standardinstallation von Moodle betreiben (ohne zusätzliche Plugins, ohne eigene Codeanpassungen), dann läuft die Aktualisierung normalerweise reibungslos durch.

Tipp: Prüfen Sie auch, ob Sie Ihre Sicherungen wiederherstellen können, sonst nützen sie nichts!

Prüfen Sie, ob es Aktualisierungen für Ihre Plugins gibt

Wenn Sie die Automatische Aktualisierung aktiviert haben, dann können Sie die installierten Plugins automatisch während der Aktualisierung von Moodle aktualisieren. Prüfen Sie auf der Seite Einstellungen > Website-Administration > Plugins > Übersicht, ob Aktualisierungen vorhanden sind.

Wenn Sie Plugins manuell aktualisieren, dann ist es ein guter Zeitpunkt zu prüfen, ob es eine aktuelle Version 3.0 für die Plugins gibt, die Sie früher auf Ihrer Moodle-Site installiert haben. Wenn das der Fall ist, laden Sie diese neue(n) Plugin-Version(en) herunter, kopieren Sie sie an die richtige Stelle im Moodle-Code-Verzeichnis (siehe Plugins installieren).

Die Aktualisierung des Plugins erfolgt dann im Verlauf der Aktualisierung von Moodle.

Wenn ein veraltetes Plugin den Abbruch der Aktualisierung verursacht, dann löschen Sie den entsprechenden Code direkt auf dem Moodle-Server, anstatt das Plugin in Moodle zu deinstallieren.

Wartungsmodus aktivieren

Bevor Sie mit der Aktualisierung beginnen, schalten Sie die Moodle-Site in den Wartungsmodus, um zu verhindern, dass sich Nutzer/innen anmelden.

Neue Moodle-Version installieren

Laden Sie sich das aktuelle Moodle Paket 3.0 von[1] herunter oder verwenden Sie den Befehl

   wget http://sourceforge.net/projects/moodle/files/Moodle/stable30/moodle-latest-30.tgz

Standardpaket verwenden

  • Benennen Sie das alte Moodle-Verzeichnis um (z.B. /moodle -> /moodleold).
  • Entpacken Sie den neuen Code und kopieren Sie ihn in das Verzeichnis, in dem die alten Moodle-Skripte vorher lagen (z.B. /moodle).
  • Kopieren Sie Ihre alte Moodle-Konfigurationsdatei config.php zurück ins Moodle-Verzeichnis (z.B. /moodle).
  • Wenn Sie zusätzliche Plugins installiert hatten, laden Sie die entsprechenden neuen Versionen herunter und entpacken Sie diese in den passenden Verzeichnissen (siehe Plugins installieren). Stellen Sie sicher, dass die Versionen der Plugins zur neuen Moodle-Version passen.
  • Kopieren Sie Ihr Moodle-Datenverzeichnis.

Unter Linux würden diese Schritte so aussehen:

Moodle-Verzeichnis umbenennen und neuen Code entpacken:

   mv moodle moodle.backup
   tar xvzf moodle-3.0.tgz

Alte Moodle-Konfigurationsdatei kopieren und zusätzliche Plugins kopieren:

   cp moodle.backup/config.php moodle
   cp -pr moodle.backup/theme/mytheme moodle/theme/mytheme
   cp -pr moodle.backup/mod/mymod moodle/mod/mymod

Die Moodle-Konfigurationsdatei für den Webserver lesbar machen. Idealerweise sollten diese Dateien für den Webserver nicht schreibbar sein:

   chown -R www-data:www-data moodle (Linux debian - ändern Sie bei Bedarf den Webserver-Nutzer entsprechend Ihrer Linux-Distribution)
   chmod -R 755 moodle 

Wenn Sie Cron verwenden, stellen Sie sicher, dass das Cron-Skript ausführbar ist und der richtige PHP-Befehl verwendet wird:

   chmod 740 admin/cli/cron.php (einige Linux-Distributionen benötigen chmod 750 oder chmod 755)

Den richtigen PHP-Befehl finden Sie in der 1. Zeile des Cron-Skripts, etwa:

   /usr/local/bin/php oder /usr/local/bin/php5.3

Git verwenden

Sie können auch das Git verwenden, um Moodle zu aktualisieren.

Aktualisierung von Kommandozeile

Sie können Moodle auch von der Kommandozeile aktualisieren. Diese Variante funktioniert insbesondere für große Moodle-Installationen zuverlässiger als die Aktualisierung über den Webbrowser.

Aktualisierung abschließen

Jetzt müssen Sie noch den eignetlichen Aktualisierungsprozess in Moodle anstoßen. Gehen Sie dazu auf die Seite Einstellungen > Website-Administration > Mitteilungen.

Moodle erkennt automatisch, dass eine neuere Version auf den Server hochgeladen wurde und startet die Aktualisierung der Moodle-Datenbank und des Moodle-Datenverzeichnisses. Wenn irgendetwas nicht automatisch aktualisiert werden kann, sehen Sie entsprechende Hinweise und Anleitungen, was Sie tun sollen.

Wenn alles erfolgreich und ohne Fehlermeldungen durchläuft, dann können Sie mit Ihrer neuen Moodle-Version sofort loslegen!

Hinweis: Wenn Sie mit mehreren Servern arbeiten, dann sollten Sie nach der Aktualisierung auf allen Servern den Cache löschen: Klicken Sie dazu im Block Einstellungen > Website-Administration > Entwicklung > Cache löschen.

Fatal error: Maximum execution time of 30 seconds exceeded...

Wenn Sie neben dem englischen Sprachpaket weitere Sprachpakete verwenden, dann kann dieser Fehler auftreten, weil die Aktualisierung des Sprachpakets zu lange dauert. In diesem Fall erhöhen Sie inder PHP-Konfigurationsdatei php.ini den Wert

max_execution_time = 160

. Dann haben die Moodle-Skripte genügend Zeit, die Sprachpakete zu aktualisieren.

Alternativ können Sie Ihre Moodle-Site vor der Aktualisierung auf englisch umstellen und danach wieder auf die gewünschte Sprache zurückstellen. Siehe dieser Diskussionsbeitrag auf moodle.org: https://moodle.org/mod/forum/discuss.php?d=119598.

Nach der Aktualisierung

Die Moodle-Konfigurationsdatei config.php sollte gut funktionieren. Wenn Sie sich jedoch die mitgelieferte Konfigurationsdatei config-dist.php ansehen, dann finden Sie dort weitere/andere Optionen (z.B. Datenbanktreiber und -einstellungen). Es ist eine gute Idee, die neuen Werte aus der config-dist.php in Ihre config.php zu übernehmen.

Cron

Das Cron-Skript wurde vollständig überarbeitet (siehe MDL-25499) und unterstützt jetzt sowohl Geplante Vorgänge als auch Adhoc-Vorgänge.

Die Vorteile dieser Änderungen sind:

  • Der Zeitplan für jeden Vorgang kann von der Moodle-Administration konfiguriert werden.
  • Vorgänge können parallel laufen.
  • Die Cron-Prozesse sperren sich gegenseitig, so dass verhindert wird, das ein und derselbe Vorgang von mehreren Cron-Prozessen gleichzeitig bearbeitet wird.
  • Cluster mit mehreren identischen Anwendungsknoten werden unterstützt, so dass der Cron-Job auf allen laufen kann.

Damit kann der Cron-Job viel häufiger laufen, so dass z.B. Forumsbeiträge schneller per E-Mail verschickt werden können. Es wird dringend empfohlen, dass die Moodle-Administration den Cron-Job mindestens 1x pro Minute laufen lässt.

Evtl. müssen Sie auch alle selbstgeschriebenen Skripte anpassen, die die Ausgabe des Cron-Skripts verarbeiten. Es ist nicht mehr möglich, mit solchen Skripten einfach die Cron-Ausgabe

Cron script completed correctly

auszuwerten. Stattdessen können Sie die Fehlerausgaben

task failed

auswerten. Ein paar Tipps dazu finden Sie hier.

In früheren Moodle-Versionen konnte es passieren, dass ein Fehler in einem Vorgang zum Abbruch des gesamten Cron-Jobs führte. Jetzt passiert das nicht mehr. Prüfen Sie also die Ausgaben des Cron-Skripts nach der Aktualisierung sorgfältig.

Aufgaben

Das alte Aufgaben(2.2)-Plugin wurde in der neuen Moodle-Version gelöscht. Es ist jedoch weiterhin gewährleistet, dass alte Kurssicherungen, die alte Aufgaben(2.2.)-Aktivitäten enthalten sauber wiederhergestellt werden können.

Wenn Sie immer noch dass alte Aufgaben(2.2)-Plugin verwendet haben, dann sind nach der Aktualisierung alle Aktivitäten diesen Typs verborgen. Um diese Aktivitäten wieder verfügbar zu machen, müssen Sie das das Aktualisierungs-Tool laufen lassen.

Wenn es tatsächlich zwingende Gründe gibt, das alte Aufgaben(2.2)-Plugin weiter zu verwenden, dann müssen Sie den Code auf Moodle 3.0 aktualisieren und dann das Verzeichnis moodle/mod/assignment durch das entsprechende Verzeichnis von https://github.com/moodlehq/moodle-mod_assignment/releases ersetzen.

Mögliche Probleme in Moodle 3.2

Baustelle.png Diese Seite muss überarbeitet werden.


Verbesserung bei Schlagwörtern

Wenn Sie Kursschlagwörter im Schlagwörter-Block verwendet haben und bisher die Einstellung "Kursschlagwörter anzeigen" aktiviert hatten, dann beachten Sie, dass sich die Funktionalität geändert hat. Siehe Änderungen ab Moodle 3.0.

CAS und LDAP CLI Skripte esretzt durch der geplante Vorgänge

Der geplante Vorgang Synchonisierung von LDAP-Nutzerkonten \auth_ldap\task\sync_task ersetzt das CLI-Skript zur Synchronisierung von LDAP-Nutzerkonten.

Der geplante Vorgang Synchonisierung von CAS-Nutzerkonten \auth_cas\task\sync_task ersetzt das CLI-Skript zur Synchronisierung von CAS-Nutzerkonten.

Moodle 2.9, 3.0 und 3.1 Verbesserungen

Je nachdem, von welcher Moodle-Version aus Sie auf Moodle 3.1 aktualisieren, empfehlen wir die entsprechenden Abschnitt "Mögliche Probleme in Moodle x.y" in der jeweiligen Dokumentation zu lesen:

Siehe auch