Wieder einmal: Nach Update auf NC 26.x kein Zugang mehr über Brwoser, WebDAV usw

  • Bei welchen Anbieter? Was für ein Server? Webgo Hamburg, LAMP-Server PHP 7.4x
  • Betriebssystem Clients = Android WebDAV CalDAV, Linux Thunderbird, WebDAV, CalDAV, CardDAV
  • Nextcloud Version: von 25.x upgedatet auf 26.0.1 am 31.05.2023
  • PHP Version: 7.4
  • Welche Datenbank? MySql
  • Apache version, kann ich nicht beantworten mangels KnowHow
  • Netzwerk Aufgliederung: DSL-Anschluss mit Fritzbox
  • Wurden vor kurzen Server Updates gemacht? Nicht dass ich davon weiß
  • Habt ihr die Logs angesehen von Nextcloud ? Ja
  • Bei was für einer Aktion ist der Fehler aufgetreten? Direkt nach dem Update

Das ist ein umfangreicher Fragenkatalog. Nicht immer ist es sinnvoll ALLES zu beantworten. Generell aber sollte gelten, lieber mehr Infos als wenig Infos.

Gestern Abend habe ich das Update auf NC 26.x gestartet. Der Vorgang dauert auf dem Server relativ lange. Daher ging ich weg vom Laptop. Leider! Denn der Akku machte schlapp und ich konnte nicht mehr sehen, in welchem Zustand nun meine NC ist.
Heute früh konnte ich mich nicht mehr über de Browser in der NC einloggen. Keine Fehlermeldung, einfach nur nix. Die Synchronisation per WebDAV CalDAV usw. sowie über den NC-Client funktionierte natürlich auch nicht.

In der nextcloud.log fand ich keine Auffälligkeiten, sondern immer nur die VErsuche meiner verschiedenen Clients, sich in die NC einzuloggen.

Ich schaute im NC-updaterlog nach.Demnach ist das Update in zwei Etappen gelaufen. Die hälfte der Schritte hat er ohne Fehler bis ca. 3:40 Uhr ausgeführt und die letzten Schritte, ebenfalls ohne Fehlermeldungen heute morgen um 9:15 Uhr.

Die letzten Zeilen in der Updater.log sind:

2023-05-31T00:03:38+0200 voXNj6IAIs [info] storage location: /home/www/webseiten/nextcloud/data/updater-ocibt6jmlu8y/downloads/nextcloud/
2023-05-31T00:03:40+0200 voXNj6IAIs [info] end of moveNewVersionInPlace()
2023-05-31T00:03:40+0200 voXNj6IAIs [info] endStep("10")
2023-05-31T00:09:15+0200 8Ho3pnW9TH [info] request to updater
2023-05-31T00:09:15+0200 8Ho3pnW9TH [info] currentStep()
2023-05-31T00:09:15+0200 8Ho3pnW9TH [info] Step 10 is in state "end".
2023-05-31T00:09:15+0200 8Ho3pnW9TH [info] POST request for step "11"
2023-05-31T00:09:15+0200 8Ho3pnW9TH [info] startStep("11")
2023-05-31T00:09:15+0200 8Ho3pnW9TH [info] setMaintenanceMode("false")
2023-05-31T00:09:15+0200 8Ho3pnW9TH [info] configFileName /home/www/webseiten/nextcloud/updater/../config/config.php
2023-05-31T00:09:15+0200 8Ho3pnW9TH [info] end of setMaintenanceMode()
2023-05-31T00:09:15+0200 8Ho3pnW9TH [info] endStep("11")
2023-05-31T00:09:15+0200 db8ai34LWl [info] request to updater
2023-05-31T00:09:15+0200 db8ai34LWl [info] currentStep()
2023-05-31T00:09:15+0200 db8ai34LWl [info] Step 11 is in state "end".
2023-05-31T00:09:15+0200 db8ai34LWl [info] POST request for step "12"
2023-05-31T00:09:15+0200 db8ai34LWl [info] startStep("12")
2023-05-31T00:09:15+0200 db8ai34LWl [info] finalize()
2023-05-31T00:09:15+0200 db8ai34LWl [info] storage location: /home/www/webseiten/nextcloud/data/updater-ocibt6jmlu8y/downloads/nextcloud/
2023-05-31T00:09:15+0200 db8ai34LWl [info] call opcache_reset()
2023-05-31T00:09:15+0200 db8ai34LWl [info] end of finalize()
2023-05-31T00:09:15+0200 db8ai34LWl [info] endStep("12")

Ich hab in der config.php nachgeschaut. Der “Maintenance Mode” steht auf “false”, wurde also nach Update beendet. Eine Konsole / Terminal hab ich für die NC-Installation nicht zur Verfügung, wohl aber ftp.

Was kann ich jetzt tun?

Huhu :slight_smile:

Ich würde jetzt versuchen auf der Konsole das Upgrade neu anzustoßen.

occ upgrade

Zumindest ein paar hilfreiche Meldungen sollten dabei rausfallen.
Vielleicht ist sogar alles gut hinterher :slight_smile:

Nextcloud 26 unterstützt kein altes php 7.4 mehr, siehe: On the roadmap: deprecation of PHP 7.4

Was für eine Konsole / Terminal?
Ich habe keinen Server gemietet, auf dem ich z.B. irgend etwas großartig verändern könnte. Es ist ein einfacher Webspace, auf den ich per ftp zugreifen darf und meine Websites, mein Matomo und die Nextcloud laufen lassen kann.

Ich müsste zumindest so ein Terminal erst mal darauf installieren. Und wohin? Wie soll das gehen?

Ich hab von sowas keine Ahnung! - Wäre es sinnvoll, evtl. die Nextcloud komplett neu zu installieren und dann die Datenverzeichnisse der bisherigen Installation dort hinein zu kopieren? Die sind ja immerhin nicht innerhalb der Nextcloud verschlüsselt.

Und wenn das mit dem “Reinkopieren” gehen würde, wie sind dann diese Daten wieder zugänglich? Mit den bisherigen Credentials? Oder neuen?

Mal beim hosting Anbieter anfragen ob ein upgrade auf php8.x möglich ist. Ansonsten schwierig… die installation ist jetzt auf 26 upgraded und down-grade geht meines wissens nicht. Einfach rein kopieren geht auch nicht da Nextcloud die metadaten in der Datenbank verwaltet.

Herzlichen Dank für deine schnelle Antwort! Auf PHP 8.x upgraden geht nicht weil mir dann zwei Websites kollabieren. Deren Templates brauchen noch 7.4.
Ich bin ja gerade dabei, die Websites komplett zu renovieren. Pech für mich, dass mir jetzt der Ärger mit Nextcloud dazwischen kommt.

Ist denn Nextcloud 26 nicht mehr mit PHP 7.4 kompatibel??? Ic hatte keine Warnmeldungen betr. Inkompatibilität erhalten, sondern nur den Hinweis, dass es an der zeit wäre, auf PHP 8 upzugraden

Ja wie weiter oben schon verlinkt. php7.4 ist nicht mehr unterstützt.

Das beste was mir einfallen würde ist Nextcloud 25 komplett neu aufzusetzen und dann den alten Dateiordner per external storage addon temporär einbinden und die Dateien in Nextcloud umkopieren. Oder halt alles neu hochladen.

1 Like

Naja oder aber mit Hochdruck die anderen Websites renovieren, um dann den Server auf PHP 8 umzustellen.
Ich befürchte aber, dass der jetzige Versuch, die NC auf PHP 7.4x upzugraden, die NC beschädigt haben könnte, sodass sie auch auf PHP 8.x nicht von selbst laufen wird.

Ganz schöner Mist!

Naja da ja selbt der Wartungsmodus wieder aus ist würde ich erstmal optimistisch sein und davon ausgehen das es nach Umstellung auf php8.x wieder geht.

1 Like

Naja wenigstens noch Hoffnung und Trost!

Herzlichen Dank für deine Unterstützung!
Und einen schönen sonnigen Abend noch…

Das hatte ich oben überlesen.

UPDATE meiner Anfrage:
Nun habe ich endlich meinen Server auf PHP 8.1 umstellen können und hoffte, dass meine Nextcloud jetzt ohne weitere Eingriffe wieder funktioniert. Das ist aber leider nicht der Fall:

Weder die Kalender- und Kontakte-synchronisation funktionieren in Thunderbird noch die Synchronisation über WebDAV zu meinem Smartphone und auch die Nextcloud-App auf meinen PCs kann keine Verbindung zur NC herstellen.
Auch kann ich nicht über den Browser in die NC als Admin hinein.

Natürlich habe ich FTP-Zugriff und damit noch eine Chance, die Installation zu retten. Zwar sind alle Daten ja auf den Geräten in Nextcloud-Ordnern synchronisiert und daher “nicht einfach weg”. Aber alle Kalender-Einträge incl. Aufgaben und Cardbook, die habe ich ja nicht in Form einer Datei in den Nextcloud-Ordnern vorliegen. Die sind mir aber (incl. Historie) sehr wichtig.

Welche Schritte sollte ich nun gehen, um meine NC wieder zu beleben?

PS:
Ich fand gerade diese Anleitung hier im Forum:

Dort wurde angeraten folgendes zu tun:

Meine Lösung (WICHTIG: Macht ein Backup eurer Daten vorab sowohl von den Dateien als auch von eurer Datenbank falls etwas schief gehen sollte)

Via SSH auf euren Server einloggen und in meinem Fall Apache2 Webserver ausschalten (sudo systemctl stop apache2)
In das Nextcloud Verzeichniss wechseln via (cd /var/www/nextcloud) in meinem Fall ist dies der Pfad zu meiner NC Installation
Manuellen SSH Upgrade Befehl ausführen (sudo -u www-data php occ upgrade) Nun sollte eine Installation durchlaufen, dies kann einige Minuten in Anspruch nehmen.
Apache2 Webserver reaktiveren via (systemctl start apache2)
Fertig

Dannach hat bei mir alles wieder funktioniert, die Version NC 25 Hub ließ sich via Webbrowser und Desktop App öffnen. Ich hatte keinen Datenverlust oder sonstige Probleme, sowohl die Datenbank als auch meine Dateien waren wie davor vorhanden und unbeschädigt.

Ist es sinnvoll, dass ich das ebenso versuche? Leider kann ich aber meinen Apache dazu nicht abschalten, weil dann sofort alle anderen Websites offline wären. Kann das Update gemäß voriger Anleitung nicht auch ohne vorherige Deaktivierung des Apache funktionieren?

Hier habe ich auch mal die letzten Zeilen aus dem Nextcloud-Logfile:

{"reqId":"ZQwyR_wJd0BHL9M6KRdmCAAAAAE","level":3,"time":"2023-09-21T12:08:39+00:00","remoteAddr":"93.193.82.8","user":"--","app":"PHP","method":"GET","url":"/index.php/204","message":"Declaration of OCA\\Talk\\Share\\RoomShareProvider::getSharesInFolder($userId, OCP\\Files\\Folder $node, $reshares): array must be compatible with OCP\\Share\\IShareProvider::getSharesInFolder($userId, OCP\\Files\\Folder $node, $reshares, $shallow = true) at /home/www/webseiten/nextcloud/apps/spreed/lib/Share/RoomShareProvider.php#520","userAgent":"Mozilla/5.0 (Linux) mirall/3.9.4git (Nextcloud, manjaro-6.1.53-1-MANJARO ClientArchitecture: x86_64 OsArchitecture: x86_64)","version":"24.0.12.1","data":{"app":"PHP"}}
{"reqId":"ZQwyhfwJd0BHL9M6KRdmDQAAAAE","level":3,"time":"2023-09-21T12:09:41+00:00","remoteAddr":"93.193.82.8","user":"--","app":"PHP","method":"GET","url":"/index.php/204","message":"Declaration of OCA\\Talk\\Share\\RoomShareProvider::getSharesInFolder($userId, OCP\\Files\\Folder $node, $reshares): array must be compatible with OCP\\Share\\IShareProvider::getSharesInFolder($userId, OCP\\Files\\Folder $node, $reshares, $shallow = true) at /home/www/webseiten/nextcloud/apps/spreed/lib/Share/RoomShareProvider.php#520","userAgent":"Mozilla/5.0 (Linux) mirall/3.9.4git (Nextcloud, manjaro-6.1.53-1-MANJARO ClientArchitecture: x86_64 OsArchitecture: x86_64)","version":"24.0.12.1","data":{"app":"PHP"}}
{"reqId":"ZQwyhUn72RTUP93hhVFPPQAAAAU","level":3,"time":"2023-09-21T12:09:41+00:00","remoteAddr":"93.193.82.8","user":"--","app":"PHP","method":"GET","url":"/index.php/204","message":"Declaration of OCA\\Talk\\Share\\RoomShareProvider::getSharesInFolder($userId, OCP\\Files\\Folder $node, $reshares): array must be compatible with OCP\\Share\\IShareProvider::getSharesInFolder($userId, OCP\\Files\\Folder $node, $reshares, $shallow = true) at /home/www/webseiten/nextcloud/apps/spreed/lib/Share/RoomShareProvider.php#520","userAgent":"Mozilla/5.0 (Linux) mirall/3.9.4git (Nextcloud, manjaro-6.1.53-1-MANJARO ClientArchitecture: x86_64 OsArchitecture: x86_64)","version":"24.0.12.1","data":{"app":"PHP"}}

Ich habe gerade versucht, diesen manuellen upgrade Prozess zu starten. Geht nicht, weil offensichtlich auf meinem webspace die Ausführung von ‘sudo’ verhindert wird. Ich erhalte da die Meldung:
sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the 'nosuid' option set or an NFS file system without root privileges?

Meine NC läuft wieder! Der manuelle Update-Befehl in der SSH Shell bedarf entgegen gesetzt der Beschreibung in der NC-Doku keines sudo voran und lässt sich daher auch so auführen.

Da meine vermurkste Installation auf dem Stand vom 31. Mai war, gab es mit Sicherheit ein Update zu installieren. Daher griff der Update Befehl.

Ferner musste ich weder den Apache anhalten, noch sonst irgend welche Vorsichtsmaßnahmen ergreifen.

Schade, dass ich hier keine Antwort erhielt.