Start Update bei Nextcloud reagiert nicht – Kommandozeile benutzen
So langsam wird es spannend mit der Nextcloud 15 und es gibt Nextcloud 15 RC2. Es ist Wochenende und ich bin neugierig, also ist es an der Zeit, sich mit Nextcloud 15 genauer zu befassen. Nun ist es mir beim Update auf RC 1 schon passiert, dass die Schaltfläche Start update einfach nicht reagiert hat.
Zunächst dachte ich, dass sich vielleicht Firefox verschluckt hat, aber mit Chromium war es auch nicht besser. Ich konnte wie wild klicken, die Seite neu starten und so weiter. Sämtliche Bemühungen halfen nicht. Das ist mir schon lange nicht mehr passiert und die Upgrades von stabilen Versionen funktionieren ausgesprochen gut.
Start update anders: Upgrade via Kommandozeile
Zum Glück ist es so, dass Du bei der Nextcloud eigentlich auch alle Operationen über die Kommandozeile ausführen kannst. Vielen fällt nur beim dem Wort Kommandozeile schon das Herz in die Hose, aber in diesem Fall völlig grundlos. Das Upgrade ist nicht schwieriger als über die Weboberfläche – versprochen!
Bei meiner Installation auf Ubuntu 18.04 habe ich mich auf dem Server angemeldet und danach in das Verzeichnis meiner Test-Instanz gewechselt. Ich betreibe zwei Nextcloud-Installationen auf meinem Server und verwende ihn noch für andere Dingen, zum Beispiel teilweise als ein VPN via sshuttle. Sobald ich dazukomme, möchte ich ihn aber auch als WireGuard-Einwahlknoten benutzen. Ich benutze meinen Server zwar nur als Notfall-VPN, aber es schadet nie, Alternativen zu haben.
Aber zurück zum Upgrade der Nextcloud über die Kommandozeile. Sobald Du Dich im Verzeichnis Deiner Nextcloud-Instanz befindest, die aktualisiert werden soll, führst Du diesen Befehl aus:
sudo -u www-data php updater/updater.phar
Nun passiert Folgendes und wenn Du das mit der Grafik oben vergleicht, … schaut irgendwie ähnlich aus, richtig?
Sobald Du die Aktion mit y bestätigst, läuft das Update oder Upgrade der Nextcloud wie im Browser durch. Du könntest die Update-Prozedur jederzeit mit der Tastatur-Kombination Strg+C stoppen.
Es sollte nicht lange dauern, bis das Backup erstellt, das neue Paket heruntergeladen und ausgepackt ist. An dieser Stelle kommt es natürlich auf den Server und die Internet-Verbindung an.
Natürlich bestätigen wir auch diesen Schritt mit y. Nun wird die Datenbank aktualisiert, falls notwendig und die anderen relevanten schritt durchgeführt. Die Software sieht nach, ob es neue App-Versionen gibt und so weiter.
Wartungsmodus deaktivieren
Sind alle Schritte abgeschlossen, fragt die Software, ob der Wartungsmodus aktiviert bleiben soll. Ist bei mir nicht notwendig, da es scheint, das Update ist sauber durchgelaufen.
Prüfe ich nun in der Weboberfläche, bestätigt mir die Nextcloud, dass Version 15 RC2 eingespielt ist. Die Prozedur ist nicht komplizierter als über die Weboberfläche. Ich überlege mir gerade, das Start update künftig grundsätzlich via Kommandozeile auszuführen, weil ich die Möglichkeit dazu habe. Damit könnte ich viel schneller eingreifen, falls etwas schief läuft.
Kann ich den Update-Kanal auch via Kommandozeile umstellen?
Selbstverständlich funktioniert das. Allerdings trägst Du damit etwas in Deine Konfigurationsdatei config.php im Verzeichnis config ein. Deswegen würde ich Dir vor solchen Operationen dringen raten, die Konfigurationsdatei zu sichern. Ein Backup ist nie eine doofe Idee, aber es ist Best Practice, direkt vor der Änderungen einer Konfigurationsdatei via Kommandozeile diese schnell zu kopieren und somit zu sichern! Das dauert nicht lange und sollte etwas völlig daneben gehen, kopierst Du Dein Backup einfach zurück.
Um den Update-Kanal zu ändern, musst Du die Variable updater.release.channel ändern. Deine Optionen sind an dieser Stelle:
- stable – die aktuelle, als stabil deklariert Version mit den neuesten Funktionen.
- beta – die aktuelle Beta-Version, die Du auf Deiner Infrastruktur testen kannst, ob sie funktionieren würde. Es ist abzuraten, Beta-Versionen in einer produktiven Umgebung einzusetzen.
- daily – ein Schnappschuss und Du solltest auf jeden Fall mit Bugs rechnen.
- production – das ist auch eine stabile Version, die aber wesentlich umfangreicher getestet ist als stable. Bugfrei kann niemand garantieren, aber die Version wurde ausführlicher getestet. Dafür musst Du bei diesem Update-Kanal länger auf die neuesten Funktionen warten.
Mit diesem Befehl änderst Du den Update-Kanal Deiner Nextcloud. In meinem Fall würde ich nun auf stable ändern. Du kannst das aber ändern, indem Du hinter --value
einen der oben genannten Begriffe einträgst.
sudo -u www-data php occ config:system:set updater.release.channel --value stable
Natürlich könntest Du auch direkt in die Datei config.php schreiben, aber das mache ich nicht (mehr) gerne, wenn es nicht sein muss. Auf der anderen Seite hättest Du ja ein Backup … 🙂
Nette Pi-Konstellation
Suchst Du ein VPN für den Raspberry Pi? NordVPN* bietet einen Client, der mit Raspberry Pi OS (32-Bit / 64-Bit) und Ubuntu für Raspberry Pi (64-Bit) funktioniert.
Und was macht man, wenn man die Cloud auf einem Shared-Hosting-Server laufen hat, auf den man keinen Zugriff via Konsole kriegt?
Dann bleibt nur die Weboberfläche ... allerdings könntest Du es so versuchen: https://CLOUD-URL/updater/