Sicheres Beheben des Nextcloud-Wartungsmodus mit OCC

Wenn Nextcloud nach einem Update oder einer Wartungsaufgabe weiterhin den Wartungsmodus anzeigt, prüfen Sie zunächst, ob das Datenbank-Upgrade abgeschlossen ist. Falls occ statusdie Meldung erscheint needsDbUpgrade: false, führen Sie occ maintenance:mode --offden Befehl als Webserver-Benutzer in der korrekten Nextcloud-Installation aus; falls die Meldung erscheint true, schließen Sie den Vorgang ab, occ upgradebevor Sie die Website erneut öffnen.

Durch Deaktivieren des Flags werden die Anmeldedaten wiederhergestellt, ein fehlgeschlagenes Upgrade wird dadurch jedoch nicht behoben. Ziel ist es, die Instanz wieder online zu bringen, wobei sowohl das Wartungsflag als auch der Upgrade-Status verifiziert sind.

1. Überprüfen Sie die Instanz, bevor Sie ihren Zustand ändern.

Stellen Sie eine Verbindung zum Host oder Container her, der die betroffene Nextcloud-URL bereitstellt. Wechseln Sie bei einer manuellen Linux-Installation in das Nextcloud-Verzeichnis (oftmals /var/www/nextcloud) und überprüfen Sie den Status als HTTP-Benutzer.

cd /var/www/nextcloud
sudo -E -u www-data php occ status

Achten Sie auf die Werte für „Wartungsmodus“ maintenanceund „Wartungsmodus deaktivieren“. Ein typischer Zustand, in dem needsDbUpgradeder Wartungsmodus sicher deaktiviert werden kann, ist „ Wartungsmodus deaktiviert“. Wenn „Wartungsmodus“ bereits auf „false“ gesetzt ist, zeigt der Browser möglicherweise eine veraltete Seite an oder greift auf einen anderen Server zu. Wenn „Wartungsmodus“ auf „true“ gesetzt ist, deaktivieren Sie den Wartungsmodus noch nicht.maintenance: trueneedsDbUpgrade: falseneedsDbUpgrade

Illustratives Terminal, das den Belegungsstatus mit „Wartung aktiviert“ und „Datenbank-Upgrade erforderlich“ anzeigt.
Das Statusbeispiel zeigt, dass der Wartungsmodus aktiviert ist, obwohl kein Datenbank-Upgrade ansteht. In diesem Zustand ist es normalerweise angebracht, den Wartungsmodus zu deaktivieren.

Nextcloud benötigt OCC als HTTP-Benutzer, um die Dateiberechtigungen beizubehalten. Unter Debian oder Ubuntu ist dies üblicherweise `/usr/local/bin` www-data; andere Distributionen verwenden möglicherweise `/ usr/local/bin` apache, http`/usr/bin` oder ` /usr/bin` wwwrun. Überprüfen Sie das Dienstkonto Ihrer Installation, bevor Sie den Benutzer in einem Befehl ersetzen. Die aktuelle Nextcloud-OCC-Dokumentation beschreibt die Unterschiede zwischen den Benutzern und den Statusbefehl.

2. Wartungsmodus mit OCC deaktivieren

Für die Installation eines Archivs oder Pakets führen Sie den Befehl aus dem Verzeichnis aus, das das entsprechende occSkript enthält:

sudo -E -u www-data php occ maintenance:mode --off

Der Befehl sollte melden, dass der Wartungsmodus deaktiviert ist. Die --offOption ändert den Wartungsstatus; sie führt keine Migrationen aus, korrigiert keine Berechtigungen und macht keine unterbrochenen Dateiersetzungen rückgängig.

Beispielhafter Terminalbefehl: sudo -E -u www-data php occ maintenance:mode --off
Dies ist der OCC-Befehl für eine Standardinstallation, wenn das Upgrade abgeschlossen ist und der Befehl im aktiven Nextcloud-Verzeichnis ausgeführt wird.

Verwenden Sie den Wrapper, der zu Ihrer Installation passt. Für das offizielle Nextcloud-Docker-Image dokumentiert das Projekt sowohl docker execDocker-Compose- als auch Docker-Compose-Beispiele. Ersetzen Sie den Beispielcontainer- oder Dienstnamen durch Ihren eigenen:

# Docker Compose; "app" is an example service name
docker compose exec --user www-data app php occ maintenance:mode --off

# Docker; replace CONTAINER_ID with the Nextcloud container
docker exec -it --user www-data CONTAINER_ID php occ maintenance:mode --off
Beispielhafter Docker Compose-Befehl zum Deaktivieren des Nextcloud-Wartungsmodus als www-data
Führen Sie in Docker Compose OCC innerhalb des Nextcloud-Dienstes als www-data aus; verwenden Sie Ihren Compose-Dienstnamen anstelle des Beispielnamens app.

Verwenden Sie für den Nextcloud Snap den hostseitigen OCC-Wrapper, anstatt in die internen Verzeichnisse des Snaps einzusteigen:

sudo nextcloud.occ maintenance:mode --off

Das Snap-Projekt weist darauf hin, dass dies /snap/bin/nextcloud.occerforderlich sein kann, falls sich das Verzeichnis nicht im PATH der Shell befindet. Siehe dazu die Anweisungen für den Wartungsmodus von Snap . Die offizielle README-Datei des Nextcloud-Docker-Images dokumentiert das Befehlsmuster des Containers.

3. Falls ein Upgrade noch aussteht, schließen Sie es zuerst ab.

Wenn Nextcloud Statusmeldungen ausgibt needsDbUpgrade: true, signalisiert dies, dass die Code- und Datenbankmigration nicht synchron verlaufen. Dies tritt häufig auf, nachdem ein Updater den Code ersetzt hat, die Migrationsphase aber noch nicht abgeschlossen wurde. In diesem Zustand ist möglicherweise nur eine eingeschränkte Anzahl von OCC-Befehlen verfügbar, und der Wartungsmodus kann absichtlich aktiviert bleiben, um Benutzer während des Upgrades fernzuhalten.

Verwenden Sie den Upgrade-Pfad für Ihren Installationstyp und überprüfen Sie die Fehlermeldung des Updaters, bevor Sie fortfahren. Bei einer standardmäßigen archivbasierten Installation führen Sie nach Bestätigung der gewünschten Nextcloud-Codeversion und Erstellung eines aktuellen Datenbank- und Datei-/Konfigurations-Backups (falls noch nicht vorhanden) folgenden Befehl aus:

sudo -E -u www-data php occ upgrade

Lassen Sie den Befehl vollständig ausführen und beheben Sie alle gemeldeten Fehler. Schalten Sie den Wartungsmodus nicht wiederholt ein und aus, um einen Migrationsfehler zu umgehen. Die Nextcloud- Upgrade-Dokumentation erklärt, dass die Datenbankmigration nach dem Austausch des Servercodes erfolgt und empfiehlt, vor einem Upgrade ein aktuelles Backup zu erstellen. Docker, Snap und verwaltete Pakete können eigene Upgrade-Prozeduren haben; verwenden Sie diese Anweisungen, falls sie vom archivbasierten Beispiel abweichen.

Sobald das Upgrade erfolgreich abgeschlossen ist und der Status keine ausstehende Datenbankaktualisierung mehr anzeigt, führen Sie den entsprechenden maintenance:mode --offBefehl oben aus. Vermeiden Sie es, config.phpdie Datenbank direkt zu aktualisieren oder die Einstellungen zu bearbeiten. Falls OCC die Einstellung nicht schreiben kann, überprüfen Sie, ob Sie die richtige Installation und den richtigen HTTP-Benutzer ausgewählt haben, und prüfen Sie, ob es Fehler in der Konfigurationsrichtlinie für schreibgeschützte Dateien oder in den Dateisystemberechtigungen gibt, bevor Sie die Berechtigungen ändern.

4. Überprüfen Sie die Flagge und die Live-Website.

Führen Sie den Status erneut mit demselben Installationspfad, Container und Benutzer aus:

sudo -E -u www-data php occ status

Bestätigen Sie sowohl `<option1>` maintenance: falseals auch needsDbUpgrade: false`<option2>`. In Docker oder Snap wiederholen Sie die Prüfung mit demselben Wrapper, der zum Deaktivieren des Flags verwendet wurde. Der Nextcloud-Befehl `status` dokumentiert diese Felder; seine maschinenlesbare Form lautet `<option3>` occ status --output=json_pretty.

Beispielhafte Ausgabe des occ-Status mit den Werten „Wartungseinstellungen deaktiviert“ und „Datenbank-Upgrade erforderlich deaktiviert“.
Bei erfolgreicher Überprüfung wird angezeigt, dass der Wartungsmodus deaktiviert ist und kein Datenbank-Upgrade aussteht; dieses Beispiel stammt nicht von einem Live-Server.

Laden Sie die Seite anschließend in einem neuen Browsertab und testen Sie die Anmeldung und die Dateiauflistung. Nextcloud weist darauf hin, dass Benutzer, die vor dem Wartungsmodus angemeldet waren, ihren Browser möglicherweise aktualisieren müssen, nachdem der Server wieder online ist. Falls OCC meldet, dass der Wartungsmodus deaktiviert ist, die Seite aber weiterhin angezeigt wird, überprüfen Sie, ob der Hostname oder Load Balancer auf dieselbe Instanz verweist, die Sie geändert haben. Bei mehreren Containern oder Knoten befindet sich möglicherweise ein anderes Backend noch im Wartungsmodus.

Eine erfolgreiche Fehlerbehebung erfordert daher mehr als nur die Meldung „deaktiviert“: Der OCC-Status muss beide Flags als deaktiviert anzeigen, und die vorgesehene öffentliche URL muss die funktionierende Instanz bereitstellen. Falls das Upgrade-Flag weiterhin gesetzt ist oder der Migrationsbefehl fehlschlägt, müssen Benutzer vom Zugriff ausgeschlossen und der Upgrade-Fehler behoben werden, bevor Nextcloud wieder geöffnet wird.

Einen Kommentar hinterlassen

Nextcloud-Integritätswarnungen durch Wiederherstellung der richtigen Dateien beseitigen

Mithilfe des Berichts über ungültige Dateien können Sie geänderten, fehlenden oder zusätzlichen Nextcloud-Code identifizieren, vertrauenswürdige Dateien sicher wiederherstellen und das Ergebnis überprüfen.

Verbinden Sie Gmail oder Microsoft 365 mit Nextcloud Mail mithilfe von OAuth2

Richten Sie OAuth2 für Nextcloud Mail mit Gmail oder Microsoft 365 ein, überprüfen Sie den Empfang und Versand und beheben Sie häufige Zustimmungs- und SMTP-Fehler.

Sicheres Beheben des Nextcloud-Wartungsmodus mit OCC

Sicheres Beheben des Nextcloud-Wartungsmodus mit OCC

Verwenden Sie OCC, um den Nextcloud-Zugriff wiederherzustellen, den Status der Datenbankmigration zu überprüfen und den richtigen Befehl für Archiv-, Docker- oder Snap-Installationen auszuwählen.

Nextcloud LDAP- und Active Directory-Anmeldung einrichten

Verbinden Sie Nextcloud mit LDAP oder Active Directory, beschränken Sie den Zugriff mit Benutzer- und Gruppenfiltern und überprüfen Sie die sichere Authentifizierung vor der Einführung.

Erzwingen Sie die Zwei-Faktor-Authentifizierung für Nextcloud-Benutzer

Aktivieren Sie einen unterstützten 2FA-Anbieter, bereiten Sie die Kontowiederherstellung vor und fordern Sie dann die Zwei-Faktor-Authentifizierung für alle oder ausgewählte Nextcloud-Gruppen an.

Collabora CODE-Dokumente im Ruhezustand mit Speicherverschlüsselung schützen

Sichern Sie in Collabora CODE bearbeitete Dateien durch Verschlüsselung der Speicherschicht, Schutz temporärer Daten und Überprüfung der Verschlüsselung und Wiederherstellung.

Collabora-Code auf ARM64 mit dem richtigen Image ausführen

Collabora-Code auf ARM64 mit dem richtigen Image ausführen

Überprüfen Sie Ihre Host-Architektur, vergewissern Sie sich, dass das CODE-Tag ARM64 veröffentlicht, entfernen Sie erzwungene AMD64-Einstellungen und trennen Sie Bildfehler von Berechtigungs- oder Speicherproblemen.

Verbinden Sie Collabora Online mit ownCloud Infinite Scale

Richten Sie die WOPI-Verbindung zwischen Collabora Online und ownCloud Infinite Scale ein, konfigurieren Sie die richtigen Service-URLs und überprüfen Sie, ob die Dokumentänderungen gespeichert werden.

Blockdatei-Exporte in Collabora CODE über WOPI

Verhindern Sie den Export von Dokumenten in Collabora Online CODE, indem Sie die WOPI-Berechtigung DisableExport festlegen und anschließend überprüfen, ob Host und Editor diese Berechtigung auch tatsächlich anwenden.

Collabora hinter Nginx einsetzen, ohne WebSockets zu beeinträchtigen

Collabora hinter Nginx einsetzen, ohne WebSockets zu beeinträchtigen

Konfigurieren Sie die Nginx TLS-Terminierung, die Collabora-Routen und die WebSocket-Header und testen Sie dann die öffentlichen Endpunkte, bevor Sie echte Dokumente öffnen.