Nextcloud hängt nach dem Update im Wartungsmodus¶
Du hast Nextcloud aktualisiert, und seitdem zeigt die Cloud nur noch den Hinweis, dass sie sich im Wartungsmodus befindet. Anmelden ist nicht möglich, auch die Synchronisierung der Geräte steht. Das sieht nach einem Defekt aus, ist aber keiner.
Der Wartungsmodus ist eine Schutzfunktion, kein Fehler
Nextcloud schaltet ihn während eines Updates selbst ein, damit niemand mit den Daten arbeitet, solange die Umstellung läuft. Bleibt er danach an, fehlt schlicht der letzte Schritt. Deine Dateien sind vollständig vorhanden, es geht nichts verloren.
Woran es liegt¶
Ein Update besteht aus zwei Teilen. Zuerst werden die Programmdateien ausgetauscht, danach wird die Datenbank an die neue Version angepasst. Bleibt die Cloud im Wartungsmodus stehen, ist der erste Teil fertig und der zweite nicht. Die Dateien gehören dann schon zur neuen Version, die Datenbank noch zur alten.
Besonders häufig passiert das nach einem Update über den Script Installer im Controlpanel. Er tauscht die Dateien zuverlässig aus, führt den Datenbankschritt aber nicht in jedem Fall zu Ende.
So bekommst du deine Cloud wieder¶
Der Weg führt über den Browser, denn dort bringt Nextcloud die Umstellung selbst zu Ende.
- Öffne den Dateimanager im Controlpanel.
- Wechsle in das Verzeichnis deiner Nextcloud und dort in den Ordner
config. - Öffne die Datei
config.phpzum Bearbeiten. Lege dir vorher eine Kopie an, falls du etwas rückgängig machen möchtest. - Suche die Zeile
'maintenance' => true,und ändere den Wert auffalse, sodass dort'maintenance' => false,steht. Speichere die Datei. - Rufe deine Cloud im Browser auf. Statt der Wartungsseite erscheint jetzt eine Update-Seite.
- Klicke auf Update starten und warte, bis der Vorgang durchgelaufen ist.
Der letzte Schritt dauert je nach Datenmenge einige Minuten. Bitte brich ihn nicht ab und lade die Seite zwischendurch nicht neu.
Ein zweiter Anlauf über den Script Installer hilft nicht
Er würde erneut nur die Dateien behandeln und die Datenbank wieder auslassen. Der Zwischenstand bliebe bestehen.
Damit es nicht wieder passiert¶
Aktualisiere Nextcloud künftig über den eingebauten Updater in der Weboberfläche, zu finden unter Verwaltung und dann Übersicht. Dieser Weg führt beide Schritte zusammen aus und meldet sich, wenn etwas fehlt.
Sinnvoll ist außerdem, vor jedem Update kurz zu prüfen, ob deine Version noch gepflegt wird. Nextcloud unterstützt jeweils nur die letzten Hauptversionen, und ein Sprung über mehrere Versionen hinweg schlägt regelmäßig fehl. Aktualisiere lieber öfter und in kleinen Schritten.
Wenn die Update-Seite nicht erscheint¶
Dann prüfe zuerst, ob du die Datei wirklich gespeichert hast und ob im Wert kein Tippfehler steckt. Erscheint weiterhin die Wartungsseite, leert ein Neuladen ohne Zwischenspeicher oft schon das Problem. Hilft auch das nicht, schreib uns kurz ein Ticket mit dem Namen deiner Cloud-Adresse, dann sehen wir nach.
Für Technikinteressierte: Versionsstände vergleichen und die Falle mit der Kommandozeile
Den Zwischenstand erkennst du am Vergleich zweier Dateien. In version.php steht die
Version der Programmdateien, in config/config.php unter 'version' die der Datenbank.
Weichen beide voneinander ab, fehlt der Datenbankschritt.
Naheliegend wäre, den Schritt auf der Kommandozeile mit php occ upgrade nachzuholen.
Genau dort lauert aber eine Falle: Der Befehl php verweist auf unseren Servern auf das
PHP des Controlpanels und nicht auf die Version, die du im PHP-Selector für deine
Website eingestellt hast. In dieser Umgebung fehlen Erweiterungen, die Nextcloud benötigt,
etwa zip. Der Aufruf bricht dann mit Environment not properly prepared ab, obwohl im
Selector alles richtig eingestellt ist.
Deshalb ist der Weg über den Browser der verlässlichere. Dort läuft die Umstellung in derselben Umgebung wie deine Website, mit allen Erweiterungen, die dort aktiviert sind.