Hilfe:MediaWiki-Update
Stand: 2. Oktober 2026
Diese Seite beschreibt, wie CMO auf eine neue Wartungsversion innerhalb derselben MediaWiki-Hauptversion aktualisiert wird, etwa von 1.43.8 auf 1.43.10. Für einen Wechsel der Hauptversion (etwa 1.43 auf 1.47) reicht dieser Ablauf nicht.
Voraussetzungen
- SSH-Zugang über die Windows-PowerShell mit Schlüssel. Benutzername und Rechnername stehen in der WinSCP-Sitzung.
- Das WinSCP-Terminal eignet sich nur für kurze Befehle (siehe Hinweise).
- MediaWiki-Wurzelverzeichnis:
/www/htdocs/w0206472/christian-morgenstern-online.de/cmo - Arbeitsordner für Sicherung und Tarball:
/www/htdocs/w0206472/christian-morgenstern-online.de/sicherung(Rechte 700, vom Web aus nicht erreichbar)
Workflow
1. Versionen festlegen
Die installierte Version steht auf Spezial:Version. Die neue Version steht in der Ankündigung auf der Mailingliste mediawiki-announce.
PowerShell öffnen, verbinden und die beiden Versionsnummern als Variablen setzen:
ssh BENUTZER@RECHNER cd /www/htdocs/w0206472/christian-morgenstern-online.de ALT=1.43.10 NEU=1.43.11
Die Variablen gelten nur in dieser Sitzung. Nach einem Verbindungsabbruch müssen sie neu gesetzt werden.
2. Datenbank sichern
Der Cronjob legt jede Nacht einen Dump an. Wurde seitdem nichts im Wiki geändert, reicht dieser. Sonst vorher einen frischen Dump anlegen.
3. Dateien sichern
tar -cf sicherung/cmo_$ALT.tar cmo ls -la sicherung
Das dauert einige Minuten. Das Archiv muss ungefähr so groß sein wie der Wiki-Ordner (du -sh cmo).
4. Tarball laden und entpacken
cd sicherung wget https://releases.wikimedia.org/mediawiki/1.43/mediawiki-$NEU.tar.gz tar -xzf mediawiki-$NEU.tar.gz grep "MW_VERSION'" mediawiki-$NEU/includes/Defines.php
Die letzte Zeile muss die neue Versionsnummer zeigen.
5. Neuen Code ins Wiki kopieren
Zuerst prüfen, ob der Tarball eine eigene .htaccess im Wurzelverzeichnis mitbringt:
ls -la mediawiki-$NEU | grep htaccess
Gibt der Befehl nichts aus, kopieren:
cp -r mediawiki-$NEU/. ../cmo/ grep "MW_VERSION'" ../cmo/includes/Defines.php ls -la ../cmo/.htaccess ../cmo/LocalSettings.php
.htaccess und LocalSettings.php müssen ihr altes Datum behalten. Bilder, Cache, nachinstallierte Erweiterungen und der Skin Medik bleiben unberührt, weil der Tarball sie nicht enthält.
6. Composer prüfen
cd ../cmo ls -la composer.local.json
Existiert die Datei, die Abhängigkeiten aktualisieren:
php ../composer.phar update --no-dev
Existiert sie nicht, diesen Schritt überspringen.
7. Update-Skript ausführen
php maintenance/run.php update --quick
Am Ende muss „Done“ stehen.
8. Prüfen
Im Browser mit Strg+F5:
- Spezial:Version zeigt die neue Version
- Hauptseite und eine Portalseite
- eine Gedichtseite mit Infobox und Navigationsbox
- Anmeldung mit Zwei-Faktor-Code
- eine Seite im Bearbeitungsmodus, Vorschau ohne Speichern
9. Aufräumen
cd ../sicherung rm -rf mediawiki-$NEU rm mediawiki-$NEU.tar.gz
Das Archiv cmo_$ALT.tar eine Woche behalten und dann löschen.
Rückweg
Falls nach dem Update etwas nicht funktioniert, im Domain-Ordner:
cd /www/htdocs/w0206472/christian-morgenstern-online.de mv cmo cmo_defekt tar -xf sicherung/cmo_$ALT.tar
Damit ist der alte Stand wiederhergestellt. Den Ordner cmo_defekt danach löschen. Die Datenbank muss nur zurückgespielt werden, wenn das Update-Skript Tabellen verändert hat. Bei Wartungsversionen ist das selten.
Hinweise
- Das WinSCP-Terminal bricht lange Befehle mit einer Zeitüberschreitung ab. All-inkl beendet beim Trennen auch Prozesse, die mit
nohupim Hintergrund laufen. Lange Befehle deshalb immer in der PowerShell ausführen. pssteht auf dem Server nicht zur Verfügung. Den Fortschritt eines Vorgangs erkennt man an der Dateigröße (ls -la).- Eine alte
composer.lockim Wiki-Ordner führt beim Update-Skript zu der Meldung, die Abhängigkeiten seien veraltet. Zeigtvendor/composer/installed.jsondie neuen Versionen, ist die Meldung ein Fehlalarm. Die Datei dann umbenennen und das Skript erneut starten. Beim Update auf 1.43.10 wurde sie incomposer.lock.alt-2026-06-22umbenannt. - Erweiterungen, die nicht im Tarball enthalten sind, werden beim Core-Update nicht aktualisiert. Das betrifft derzeit EmbedVideo, Kartographer, JsonConfig, MyVariables, SimpleCalendar, SimpleBatchUpload, TemplateStyles und den Skin Medik. Für sie erscheinen Sicherheitshinweise getrennt.
- Bei einem Update der Hauptversion ändert sich auch der Pfad im Download-Link (
/1.43/).
Verlauf
- 2. Oktober 2026: 1.43.8 auf 1.43.10