Aktualisierung von Moodle: Unterschied zwischen den Versionen

Aus MoodleDocs
Wechseln zu:Navigation, Suche
Keine Bearbeitungszusammenfassung
 
(64 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Installation}}
{{Installation}}


Moodle ist so konzipiert, dass man das System einfach und problemlos von einer Version auf die nächste aktualisieren kann.  
Dieser Artikel beschreibt, wie Sie Moodle aktualisieren. Eine Übersicht über die einzelnen Schritte finden Sie unter [[Aktualisierung in Kürze]].
 
Ä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.
 
Im folgenden werden die einzelnen Schritte einer Aktualisierung detailliert beschrieben.


==Voraussetzungen prüfen==
==Voraussetzungen prüfen==
Prüfen Sie die Systemanforderungen für die aktuellste Moodle-Version 3.6 unter Block ''[[Einstellungen-Block|Einstellungen]] > Website-Administration > Server > [[Serverinformationen]]''. In den  [https://docs.moodle.org/dev/Moodle_3.6_release_notes Release Notes] in der Entwicklerdokumentation (englisch) steht, welche Voraussetzungen der [https://docs.moodle.org/dev/Moodle_3.6_release_notes#Server_requirements Server] und der [https://docs.moodle.org/dev/Moodle_3.6_release_notes#Client_requirements Client] erfüllen muss.


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]]''.
'''Hinweise''':
*Beachten Sie, dass Sie nur von Moodle 3.1 oder neueren Versionen auf die aktuelleste Moodle-Version 3.6 aktualisieren können. Wenn Ihr Moodle älter ist, dann müssen Sie erst auf [https://docs.moodle.org/31/de/Auf_Moodle_3.1_aktualisieren Moodle 3.1 aktualisieren].


==Aktuelle Daten sichern==
==Bevor Sie Ihr Produktivsystem aktualisieren==
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.
'''Wir empfehlen Ihnen dringend, die Aktualisierung auf einer Kopie Ihres Produktivsystems zu testen, um sicherzustellen, dass alles wie gewünscht funktioniert.'''


'''Tipp''': Generell ist es eine gute Idee, die Daten täglich automatisch zu sichern.
Nutzen Sie bei Bedarf einen [[Aktualisierungsschlüssel]] für Ihre Moodle-Site.


Es gibt drei Bereiche in Moodle, in denen Daten gesichert werden müssen:
==Wichtige Daten sichern==
Detaillierte Informationen dazu finden Sie im Artikel [[Sicherung der Moodle-Installation|Sicherungen]].


====1. Das Moodle-Verzeichnis selbst====
Im wesentlichen müssen Sie drei Bereiche sichern:
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.
#Moodle Software (PHP-Skripte von Moodle)
#[[Moodle-Datenverzeichnis]]
#[[Moodle-Datenbank]]


====2. Das Moodle-Datenverzeichnis====
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.
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:
'''Tipp''': Prüfen Sie auch, ob Sie Ihre Sicherungen wiederherstellen können, sonst nützen sie nichts!


  mkdir /var/www/moodledata_backup
==Prüfen Sie, ob es Aktualisierungen für Ihre Plugins gibt==
  cp -r /var/www/moodledata/* /var/www/moodledata_backup
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.


====3. Die Moodle-Datenbank====
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]]).  
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:


  mysqldump -u username -p -C -Q -e --create-options moodle > moodle-backup-2009-01-01.sql
Die Aktualisierung des Plugins erfolgt dann im Verlauf der Aktualisierung von Moodle.


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.
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.


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:
==Wartungsmodus aktivieren==
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 -h databasehost -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
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.


'''Hinweise zum SQL-Dump''':
    wget http://sourceforge.net/projects/moodle/files/Moodle/stable30/moodle-latest-30.tgz
*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.
* 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!


==Neue Moodle-Software installieren==
=== Standardpaket verwenden ===
Es gibt zwei Möglichkeiten, um an Moodle heranzukommen:
* Benennen Sie das alte Moodle-Verzeichnis um (z.B. ''/moodle'' -> ''/moodleold'').
* als gepacktes Paket (*.zip oder *.tgz) von http://download.moodle.org/
* Entpacken Sie den neuen Code und kopieren Sie ihn in das Verzeichnis, in dem die alten Moodle-Skripte vorher lagen (z.B. ''/moodle'').
* über [[Git für Administratoren|Git]]  
* 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]].


=== Gepacktes Moodle-Paket verwenden ===
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


Laden Sie sich ein geeignetes Paket von http://download.moodle.org/ herunter und entpacken Sie es im neu angelegten Moodle-Verzeichnis.
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


'''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.
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)


Unter Linux etwa lauten die nötigen Befehle:
Den richtigen PHP-Befehl finden Sie in der 1. Zeile des Cron-Skripts, etwa:
    /usr/local/bin/php oder /usr/local/bin/php5.3


  mv moodle moodle.backup
=== Git verwenden===
  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]]:
Sie können auch das [[Git für Administratoren|Git]] verwenden, um Moodle zu aktualisieren.  


  cp moodle.backup/config.php moodle
===Aktualisierung von Kommandozeile===
  cp -pr moodle.backup/theme/mytheme moodle/theme/mytheme


Vergessen Sie nicht, die Verzeichnisrechte/ -besitzer wieder richtig anzupassen (wenn nötig):
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.


  sudo chown www-data moodle/config.php
==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''.


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):
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.


  -rw-r--r--  1 apache system    784 Jun 28  2007 config.php
Wenn alles erfolgreich und ohne Fehlermeldungen durchläuft, dann können Sie mit Ihrer neuen Moodle-Version sofort loslegen!


D.h. der Besitzer der Datei ist "apache", und die Gruppe ist "system".
'''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''.


Sie können das für Ihr neues System wie folgt ändern:
===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.


  chown apache:system config.php
==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.


oder für das gesamte Verzeichnis:
===Cron===
Das Cron-Skript wurde vollständig überarbeitet (siehe MDL-25499) und unterstützt jetzt sowohl [[Geplante Vorgänge]] als auch Adhoc-Vorgänge.


  chown apache:system ./*
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.


oder rekursiv für das gesamte Verzeichnis und alle Unterverzeichnisse:
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.


  chown -R apache:system ./*
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]].


=== Git verwenden===
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.
 
Sie können auch das [[Git für Administratoren|Git]] verwenden, um Moodle zu aktualisieren.  


==Aktualisierung abschließen==
==Mögliche Probleme in Moodle 3.7==
===Designs, die Bootstrap 2 verwenden, wurden entfernt===
Designs, die Bootstrap 2 verwenden (Clean, More und Bootstrapbase), wurden aus dem Standardpaket von Moodle entfernt. Stattdessen wurde ein neues Design (Classic), das auf Bootstrap 4 basiert und ein dreispaltiges Layout sowie eine Navigationsstruktur ähnlich wie Clean hat, eingeführt. Der Artikel zum Thema [[Designs]] enthhalten Anleitungen, wie man eigene Designs erstellt oder aktualisiert, so dass sie auf den derzeit unterstützten Designs (Boost und Classic) basieren.


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:
===Teilen von Kursen auf Moodle.net wurde deaktiviert===
Die neue Einstellung zum Teilen von Kursen Moodle.net auf der Seite ''Website-Administration > Zusatzoptionen'' ist standardmäßif deaktiviert, so dass neue Nutzer/innen nicht verwirrt werden durch die Option ''Teilen'' unter ''Kurs-Administration''.


  http://example.com/moodle/admin
Siehe auch die Liste der [https://tracker.moodle.org/issues/?jql=project%20%3D%20mdl%20AND%20resolution%20%3D%20fixed%20AND%20fixVersion%20in%20(%223.7%22)%20AND%20labels%20%3D%20upgrade_notes Einträge zur Aktualisierung] und der [https://tracker.moodle.org/issues/?jql=project%20%3D%20mdl%20AND%20resolution%20%3D%20fixed%20AND%20fixVersion%20in%20(%223.7%22)%20AND%20labels%20%3D%20ui_change%20 Einträge zu Änderungen].


Moodle erkennt automatisch, dass eine neue Version im [[Moodle-Verzeichnis]] abgelegt wurde und führt nun die entsprechende Aktualisierung der Datenbank durch.
===Neue Fähigkeiten in Moodle {{Version}}===


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.
'''Aufgabe'''
* [[Capabilities/mod/assign:showhiddengrader|mod/assign:showhiddengrader]]


'''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.
'''Forum'''
* [[Capabilities/mod/forum:canoverridecutoff|mod/forum:canoverridecutoff]]
* [[Capabilities/mod/forum:cantogglefavourite|mod/forum:cantogglefavourite]]
* [[Capabilities/mod/forum:postprivatereply|mod/forum:postprivatereply]]
* [[Capabilities/mod/forum:readprivatereplies|mod/forum:readprivatereplies]]


==Aktualisierte Version testen==
'''Analytics'''
* [[Capabilities/moodle/analytics:listowninsights|moodle/analytics:listowninsights]]


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]].
'''Kurse'''
* [[Capabilities/moodle/course:changelockedcustomfields|moodle/course:changelockedcustomfields]]
* [[Capabilities/moodle/course:configurecustomfields|moodle/course:configurecustomfields]]
* [[Capabilities/moodle/category:viewcourselist|moodle/category:viewcourselist]]


==Mehrere Versionen bei der Aktualisierung überspringen==
'''Datenschutz'''
* [[Capabilities/tool/dataprivacy:makedatadeletionrequestsforchildren|tool/dataprivacy:makedatadeletionrequestsforchildren]]
* [[Capabilities/tool/dataprivacy:requestdelete|tool/dataprivacy:requestdelete]]
* [[Capabilities/tool/dataprivacy:requestdeleteforotheruser|tool/dataprivacy:requestdeleteforotheruser]]


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 3.2, 3.3, 3.4, 3.5 und 3.6 Verbesserungen===
Je nachdem, von welcher Moodle-Version aus Sie aktualisieren, empfehlen wir die entsprechenden Abschnitt "Mögliche Probleme in Moodle x.y" in der jeweiligen Dokumentation zu lesen:
* [https://docs.moodle.org/32/de/Aktualisierung_von_Moodle Auf Moodle 3.2 aktualisieren]
* [https://docs.moodle.org/33/de/Aktualisierung_von_Moodle Auf Moodle 3.3 aktualisieren]
* [https://docs.moodle.org/34/de/Aktualisierung_von_Moodle Auf Moodle 3.4 aktualisieren]
* [https://docs.moodle.org/35/de/Aktualisierung_von_Moodle Auf Moodle 3.5 aktualisieren]
* [https://docs.moodle.org/36/de/Aktualisierung_von_Moodle Auf Moodle 3.6 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.7_release_notes Moodle 3.7 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 24. Januar 2020, 14:40 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.6 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 3.1 oder neueren Versionen auf die aktuelleste Moodle-Version 3.6 aktualisieren können. Wenn Ihr Moodle älter ist, dann müssen Sie erst auf Moodle 3.1 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.

Mögliche Probleme in Moodle 3.7

Designs, die Bootstrap 2 verwenden, wurden entfernt

Designs, die Bootstrap 2 verwenden (Clean, More und Bootstrapbase), wurden aus dem Standardpaket von Moodle entfernt. Stattdessen wurde ein neues Design (Classic), das auf Bootstrap 4 basiert und ein dreispaltiges Layout sowie eine Navigationsstruktur ähnlich wie Clean hat, eingeführt. Der Artikel zum Thema Designs enthhalten Anleitungen, wie man eigene Designs erstellt oder aktualisiert, so dass sie auf den derzeit unterstützten Designs (Boost und Classic) basieren.

Teilen von Kursen auf Moodle.net wurde deaktiviert

Die neue Einstellung zum Teilen von Kursen Moodle.net auf der Seite Website-Administration > Zusatzoptionen ist standardmäßif deaktiviert, so dass neue Nutzer/innen nicht verwirrt werden durch die Option Teilen unter Kurs-Administration.

Siehe auch die Liste der Einträge zur Aktualisierung und der Einträge zu Änderungen.

Neue Fähigkeiten in Moodle 3.7

Aufgabe

Forum

Analytics

Kurse

Datenschutz

Moodle 3.2, 3.3, 3.4, 3.5 und 3.6 Verbesserungen

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

Siehe auch