NEXTCLOUD · ANLEITUNG · 24.10.2026

Nextcloud 34 auf 35 aktualisieren: Schritt für Schritt per Kommandozeile

Nextcloud 35 ist da, und für klassische Installationen unter Debian und Ubuntu führt der sauberste Weg über die Kommandozeile: Backup, Updater, occ, Kontrolle. Wir zeigen den kompletten Ablauf mit den Befehlen, erklären die PHP-Falle bei älteren Systemen und sagen, was du im Fehlerfall tust.

UPGRADE · 34 → 35
● Per Kommandozeile
34.0.5
Ausgangsstand
35.0.2
Zielversion
9 Schritte
vom Backup bis zur Kontrolle
PHP● 8.3 bis 8.5
Betriebssystem● z. B. Debian 13, Ubuntu 24.04
Werkzeug● updater.phar + occ
Vorher● Backup und Testkopie
Nicht überspringbar● Hauptversionen

Für Archivinstallationen. Docker, AIO und Snap haben eigene Wege.

✓ Alle Befehle für Debian und Ubuntu
✓ Updater per Kommandozeile
✓ Mit Backup und Rollback
✓ Geprüft gegen die offizielle Doku
Nextcloud 34 auf 35 aktualisieren: die Anleitung für Debian & Ubuntu

ÜBERBLICK

Für wen diese Anleitung gedacht ist

Diese Anleitung gilt für eine klassische Nextcloud-Installation aus dem offiziellen Archiv unter Debian oder Ubuntu, betrieben mit PHP und Apache oder nginx. Sie setzt voraus, dass du per SSH auf den Server kommst. Für Docker, Nextcloud AIO und Snap gelten eigene Update-Verfahren, die wir ganz unten kurz abgrenzen.

Warum 35 und warum jetzt oder später, haben wir in unserem Vergleich Nextcloud 34 vs. 35 beschrieben. Hier geht es nur um das Wie. Die Pfade und der Benutzer www-data in den Beispielen sind typische Werte und müssen zu deiner Installation passen.

Der Ablauf in neun Schritten

A

Vorbereiten

  • Ausgangslage prüfen
  • Systemanforderungen und PHP-Falle
  • Apps prüfen
B

Absichern

  • Auf 34.0.5 bringen
  • Vollständiges Backup
  • Testkopie und Wartungsfenster
C

Ausführen

  • Upgrade per Updater
  • Nacharbeiten
  • Kontrolle und Rollback-Plan

SCHRITT 1

Ausgangslage prüfen

Melde dich per SSH an und prüfe, welche Version läuft und wo die Daten liegen. Den Pfad des Datenverzeichnisses brauchst du später für Backup und Rollback.

Bash
cd /var/www/nextcloud

sudo -E -u www-data php occ status
sudo -E -u www-data php occ config:system:get datadirectory
sudo -E -u www-data php occ config:system:get dbtype

occ status zeigt die installierte Version und ob der Wartungsmodus aktiv ist. Du solltest wirklich Nextcloud 34 betreiben und die Installation sollte fehlerfrei laufen. Sieh dir außerdem unter Einstellungen → Verwaltung → Übersicht die Warnungen an. Bestehende Probleme löst du besser vor dem Upgrade, sonst suchst du hinterher nach der Ursache.

Wichtig
Das Upgrade läuft als Webserver-Benutzer. Gehören die Nextcloud-Dateien einem anderen Benutzer, scheitert der Updater an den Schreibrechten. Prüfe das vorab mit ls -ld /var/www/nextcloud /var/www/nextcloud/updater und passe den Benutzer in allen Befehlen an.

SCHRITT 2

Systemanforderungen und die PHP-Falle

Nextcloud 35 setzt neuere Systemkomponenten voraus. Laut offizieller Dokumentation gilt:

KomponenteUnterstützt für Nextcloud 35
PHP8.3, 8.4 und 8.5 (8.5 empfohlen)
MariaDB10.11, 11.4, 11.8 und 12.3
MySQL8.4 und 9.7
PostgreSQL14 bis 18 (18 empfohlen)
Debian13 (Trixie)
Ubuntu24.04 LTS und 26.04 LTS
WebserverApache 2.4 oder nginx mit PHP-FPM

Die vollständige und aktuelle Liste steht in den offiziellen Systemanforderungen. Prüfe dein System so:

Bash
cat /etc/os-release | head -3
php -v
php -m | grep -Ei 'gd|curl|intl|mbstring|zip|xml|apcu|redis'
mariadb --version   # oder: mysql --version / psql --version

Die Falle: Debian 12 und Ubuntu 22.04

php -v zeigt nur die PHP-CLI. Entscheidend ist die Version, die dein Webserver tatsächlich verwendet, etwa PHP-FPM. Debian 12 liefert in den Standardpaketquellen PHP 8.2, Ubuntu 22.04 sogar nur PHP 8.1. Beide erfüllen die PHP-Mindestversion von Nextcloud 35 nicht, und die Betriebssysteme stehen auch nicht in der Liste oben. Der Upstream-Support für PHP 8.2 endet zudem am 31. Dezember 2026.

Du hast drei Möglichkeiten:

  • Betriebssystem aktualisieren (empfohlen). Zuerst auf einer Kopie oder einer frischen VM durchspielen, dann produktiv umsetzen. Dazu haben wir einen eigenen Beitrag: Debian 12 auf Debian 13 upgraden.
  • PHP aus einer Drittquelle einspielen. Technisch möglich, liegt aber außerhalb der Distribution. Du trägst dann Pflege, Sicherheitsupdates und Kompatibilität selbst und solltest es nur nach einem Test tun.
  • Bei Nextcloud 34 bleiben. Es besteht kein Zeitdruck, Nextcloud 34 wird bis Juni 2027 unterstützt. So gewinnst du Zeit für den Systemumbau.

Bei MySQL 9 gibt es eine zusätzliche Besonderheit mit der MD5-Komponente, die wir im Vergleichsbeitrag beschrieben haben. Wer MySQL 9 einsetzt, liest dort nach, bevor er startet.

SCHRITT 3

Installierte Apps auf Kompatibilität prüfen

Nicht jede Zusatz-App ist sofort mit einer neuen Hauptversion kompatibel. Halte zuerst fest, was installiert ist, damit du nach dem Upgrade vergleichen kannst.

Bash
cd /var/www/nextcloud
sudo -E -u www-data php occ app:list > ~/nextcloud-apps-vorher.txt
sudo -E -u www-data php occ app:update --all

app:update --all bringt die Apps auf den neuesten für Nextcloud 34 verfügbaren Stand. Prüfe dann für jede wichtige App im App-Store, ob sie Nextcloud 35 unterstützt. Das gilt besonders für Drittanbieter-Apps, externe Speicher, zusätzliche Anmeldeverfahren und selbst entwickelte Erweiterungen. Ist die Unterstützung unklar, ist das ein Grund für die Testkopie aus Schritt 6.

Fällt eine App durch, kannst du sie vor dem Upgrade mit sudo -E -u www-data php occ app:disable APPNAME abschalten und nach dem Upgrade einzeln wieder aktivieren, sobald eine kompatible Version vorliegt.

SCHRITT 4

Nextcloud 34 auf den aktuellen Stand bringen

Vor dem Wechsel auf eine neue Hauptversion muss die bestehende Installation auf dem aktuellen Wartungsstand ihrer Hauptversion sein. Zum Stand vom 24. Oktober 2026 ist das Nextcloud 34.0.5. Hauptversionen darfst du nicht überspringen: Wer noch auf Nextcloud 33 läuft, geht zuerst auf 34 und danach auf 35.

Dafür nutzt du denselben Updater wie in Schritt 7. Führe ihn aus, schließe das Update auf 34.0.5 ab und kontrolliere danach die Version:

Bash
sudo -E -u www-data php /var/www/nextcloud/updater/updater.phar

sudo -E -u www-data php occ status

Der Updater zeigt vor dem Start an, auf welche Version er aktualisiert. Lies diese Anzeige und bestätige erst dann. Läuft die Installation auf 34.0.5 fehlerfrei, kannst du weitermachen. Wer ohnehin schon auf 34.0.5 ist, überspringt diesen Schritt.

SCHRITT 5

Vollständiges Backup erstellen

Dieser Schritt ist unverzichtbar. Der Updater sichert zwar den bisherigen Programmcode, aber weder die Datenbank noch das Datenverzeichnis. Ein Downgrade wird nicht unterstützt, im Fehlerfall ist das Backup der einzige verlässliche Rückweg. Nach der offiziellen Anleitung sicherst du für ein konsistentes Backup bei aktiviertem Wartungsmodus Verzeichnisse und Datenbank:

Bash
cd /var/www/nextcloud
sudo -E -u www-data php occ maintenance:mode --on

# Verzeichnisse: Nextcloud inkl. config, Apps und Datenverzeichnis
sudo rsync -Aavx /var/www/nextcloud/ /backup/nextcloud-dirbkp_$(date +%Y%m%d)/
# Liegt das Datenverzeichnis außerhalb (siehe Schritt 1), separat sichern:
sudo rsync -Aavx /srv/nextcloud-data/ /backup/nextcloud-databkp_$(date +%Y%m%d)/
💾

MariaDB und MySQL

Bei Verwendung von utf8mb4 den Zeichensatz mitgeben. Das Passwort nicht direkt in den Befehl schreiben, sondern über eine geschützte Optionsdatei oder die Eingabeaufforderung (-p) angeben, sonst steht es in der Prozessliste und in der Shell-Historie:

Bash
mariadb-dump --single-transaction \
  --default-character-set=utf8mb4 \
  -h localhost -u NEXTCLOUD_DBUSER -p NEXTCLOUD_DB \
  > /backup/nextcloud-sqlbkp_$(date +%Y%m%d).bak

Bei MySQL heißt das Programm mysqldump, die Optionen sind gleich.

💾

PostgreSQL

Auch hier wird das Passwort besser über die Eingabeaufforderung oder ~/.pgpass bereitgestellt:

Bash
pg_dump NEXTCLOUD_DB \
  -h localhost -U NEXTCLOUD_DBUSER \
  -f /backup/nextcloud-sqlbkp_$(date +%Y%m%d).bak

Datenbankname, Benutzer und Host findest du in config/config.php.

Schalte den Wartungsmodus nach dem Backup wieder aus, denn der Updater aktiviert ihn bei Bedarf selbst:

Bash
sudo -E -u www-data php occ maintenance:mode --off
Backup prüfen
Ein Backup, das sich nicht zurückspielen lässt, ist keines. Kontrolliere zumindest, dass die Dateien vorhanden und nicht leer sind. Besser ist eine Probe-Wiederherstellung auf der Testkopie aus dem nächsten Schritt. Bei virtuellen Maschinen ist zusätzlich ein Snapshot unmittelbar vor dem Upgrade ein guter Rückfallpunkt.

SCHRITT 6

Testkopie und Wartungsfenster

Bei einer produktiven Installation lohnt es sich, den Ablauf zunächst auf einer Kopie zu üben. Stelle das Backup aus Schritt 5 auf einer separaten VM mit gleichem Betriebssystem und gleicher PHP- und Datenbankversion wieder her und führe dort das komplette Upgrade durch. So siehst du, ob Apps, PHP-Module oder die Datenbank Probleme machen, bevor sie den laufenden Betrieb treffen. Gleichzeitig bekommst du ein Gefühl für die Dauer.

1

Dauer abschätzen

Die Testkopie zeigt, wie lange das Upgrade mit deiner Datenmenge und Datenbankgröße dauert. Das Wartungsfenster sollte großzügig darüber liegen.

2

Benutzer informieren

Kündige das Wartungsfenster an. Während des Upgrades ist Nextcloud nicht normal nutzbar. Synchronisierende Clients melden in dieser Zeit Fehler und holen den Abgleich danach nach.

3

Keine anderen Änderungen

Nimm im selben Fenster keine weiteren Änderungen an PHP, Datenbank oder Webserver vor. Bei einem Problem wüsstest du sonst nicht, was die Ursache ist.

SCHRITT 7

Das Upgrade mit dem Updater durchführen

Der Updater lädt das neue Archiv, prüft es, ersetzt den Programmcode und kann anschließend occ upgrade ausführen. Er läuft als Webserver-Benutzer und setzt zu Beginn selbst den Wartungsmodus. Starte ihn aus dem Nextcloud-Verzeichnis:

Bash
cd /var/www/nextcloud
sudo -E -u www-data php updater/updater.phar

Der Updater führt dich durch die Schritte:

  • Er zeigt die Versionsinformationen an. Prüfe, dass die Zielversion Nextcloud 35.0.2 ist, und bestätige mit Y.
  • Er prüft Voraussetzungen, lädt das Archiv herunter und ersetzt den Programmcode. Die bisherigen Programmdateien sichert er im updater-Ordner im Datenverzeichnis.
  • Am Ende fragt er, ob occ upgrade ausgeführt werden soll. Beantworte das mit Y, dann übernimmt der Updater die Datenbank- und App-Migration.
  • Danach fragt er, ob der Wartungsmodus aktiv bleiben soll. Antworte mit N, wenn der Wartungsmodus nach dem Upgrade enden soll. Wer zuerst intern testen möchte, lässt ihn aktiv und schaltet ihn später mit occ maintenance:mode --off aus.

Wenn ein Schritt scheitert

Behebe die Ursache und starte den Updater erneut. Er setzt an der fehlgeschlagenen Stelle fort und wiederholt abgeschlossene Schritte nicht. Hinweise liefert die Datei updater.log im Datenverzeichnis. Sagst du beim Start der Migration versehentlich N, führst du sie selbst aus:

Bash
cd /var/www/nextcloud
sudo -E -u www-data php occ upgrade
Nicht doppelt ausführen
Hat der Updater occ upgrade bereits erfolgreich abgeschlossen, ist ein zweiter manueller Aufruf unnötig. Orientiere dich am Status der Installation und an der Meldung des Updaters.

Optionen für Sonderfälle

Mit --no-interaction läuft der Updater ohne Rückfragen, sinnvoll etwa in einem vorbereiteten Wartungsfenster. Der Wartungsmodus wird dann am Ende ausgeschaltet, es sei denn, beim Austausch oder bei occ upgrade ist ein Fehler aufgetreten. --no-backup überspringt die Sicherung des alten Programmcodes. Beide Optionen sind für den Normalfall nicht nötig, und auf --no-backup solltest du verzichten. Der Updater benötigt laut Dokumentation mindestens 256 MB RAM.

Ein manuelles Upgrade mit dem Archiv ist ebenfalls möglich, aber fehleranfälliger. Es empfiehlt sich, wenn der Updater nicht nutzbar ist. Die vollständige Abfolge beschreibt die offizielle Anleitung zum manuellen Upgrade. Mische beide Verfahren nicht unkoordiniert.

SCHRITT 8

Nacharbeiten nach dem Upgrade

Kontrolliere zuerst Version und Wartungsmodus, und schalte den Wartungsmodus bei Bedarf aus:

Bash
cd /var/www/nextcloud
sudo -E -u www-data php occ status
sudo -E -u www-data php occ maintenance:mode --off

Danach lohnt sich ein Blick auf Einstellungen → Verwaltung → Übersicht. Nach einem Hauptversions-Upgrade meldet Nextcloud dort oft fehlende Datenbankindizes oder anstehende Reparaturen. Die üblichen Befehle dazu:

Bash
sudo -E -u www-data php occ db:add-missing-indices
sudo -E -u www-data php occ maintenance:repair --include-expensive

maintenance:repair --include-expensive kann bei großen Installationen lange dauern. Plane das außerhalb der Hauptnutzungszeit ein und führe es nur aus, wenn die Übersicht oder die Upgrade-Hinweise es verlangen. Die Datei nextcloud-apps-vorher.txt aus Schritt 3 hilft jetzt, die Apps zu vergleichen:

Bash
sudo -E -u www-data php occ app:list
sudo -E -u www-data php occ app:update --all

Aktiviere abgeschaltete Apps nur dann wieder (occ app:enable APPNAME), wenn für Nextcloud 35 eine kompatible Version vorliegt, und prüfe sie einzeln.

SCHRITT 9

Kontrolle und Rollback-Plan

Prüfe nicht nur die Versionsnummer, sondern den Alltagsbetrieb:

  • Wird Nextcloud 35 angezeigt und ist der Wartungsmodus aus?
  • Funktionieren Anmeldung, Datei-Upload und Datei-Download?
  • Laufen Kalender, Kontakte und gegebenenfalls Talk?
  • Sind externe Speicher erreichbar und die wichtigen Apps aktiv?
  • Läuft der Hintergrundjob (Cron)? Unter Einstellungen → Verwaltung → Grundeinstellungen steht der Zeitpunkt der letzten Ausführung.
  • Gibt es neue Fehler im Nextcloud-Protokoll unter Einstellungen → Verwaltung → Protokoll?

Stehen Hintergrundmigrationen aus, warte deren Abschluss ab, bevor du weitere Änderungen planst. Bei Problemen analysiere zuerst die konkrete Fehlermeldung und die Protokolle, statt wahllos Reparaturbefehle auszuführen.

Wenn nichts mehr hilft: zurück zum Backup

Ein Downgrade ist nicht vorgesehen und kann Daten beschädigen. Der Rückweg ist deshalb das Wiederherstellen aus dem Backup. Das ist ein bewusst gewählter, destruktiver Schritt: Die Datenbank wird gelöscht und aus der Sicherung neu aufgebaut. Gehe nur so vor, wenn du ihn wirklich brauchst, und folge der offiziellen Wiederherstellungs-Anleitung. Im Kern sieht das bei MariaDB und MySQL so aus:

Bash
# Dateien zurückspielen
sudo rsync -Aax /backup/nextcloud-dirbkp_DATUM/ /var/www/nextcloud/

# Datenbank löschen, neu anlegen, Dump einspielen
mysql -h localhost -u NEXTCLOUD_DBUSER -p -e "DROP DATABASE NEXTCLOUD_DB"
mysql -h localhost -u NEXTCLOUD_DBUSER -p -e "CREATE DATABASE NEXTCLOUD_DB CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci"
mysql -h localhost -u NEXTCLOUD_DBUSER -p NEXTCLOUD_DB < /backup/nextcloud-sqlbkp_DATUM.bak

Ist das Backup älter als die letzten Änderungen der Benutzer, kann nach dem Zurückspielen occ maintenance:data-fingerprint helfen, damit Clients den Abgleich korrekt behandeln. Beachte die Hinweise in der Dokumentation, denn der Befehl kann Konfliktdialoge auslösen.

ABGRENZUNG

Docker, AIO und Snap: andere Wege

📦

Docker

Hier zählen Image, Containerkonfiguration und persistente Volumes. Lege den Image-Tag bewusst fest, statt latest zu verwenden, und folge der Anleitung des eingesetzten Images.

☁

Nextcloud AIO

AIO verwaltet seine Komponenten über eine eigene Update-Logik. Nutze die offiziellen AIO-Schritte und keine Archiv-Installation im Container.

🔧

Snap

Bei Snap läuft die Aktualisierung über den Snap-Mechanismus mit eigener Dokumentation.

Merke: Nicht die Nextcloud-Version allein entscheidet über den Update-Weg, sondern auch die Installationsart.

FAZIT

Gut vorbereitet, dann ist das Upgrade unspektakulär

Entscheidend sind ein aktueller Stand von Nextcloud 34, ein System, das die Anforderungen von Nextcloud 35 erfüllt, geprüfte Apps und ein getestetes Backup. Mit dem Updater auf der Kommandozeile ist das Upgrade selbst schnell erledigt. Die Zeit steckt in der Vorbereitung, und gerade bei älteren Debian- und Ubuntu-Systemen ist die PHP-Version der Punkt, der am häufigsten überrascht.

Da Nextcloud 34 bis Juni 2027 unterstützt wird, musst du nichts überstürzen. Plane den Wechsel lieber in Ruhe, teste auf einer Kopie und nimm dir ein Wartungsfenster.

Nextcloud-Upgrade nicht selbst durchführen?

Backup, Testkopie, PHP-Umstellung und Wartungsfenster sind Aufwand. Sprechen Sie uns an, wir unterstützen bei Planung und Durchführung.