NextCloudPi: Updates von PHP7.3 auf 7.4 incl. auf Bullseye

Bin gerade beim 3. Anlauf diesen Upgrade durchzuführen - bisher nur Teilerfolg

Schritt 1 - auf einer Kopie arbeiten

  • Kopie der SD Karte vom Produktiv System mittels dd oder dc3dd (wenn man Fortschritt sehen will)
  • Kopie der Nextcloud Daten (auf externer Festplatte) mittels rsync

Schritt 2 - verhindern das ncp-dist-upgrade wegen Fehler abbricht

  • Aufgrund einer anderen Konfiguration in bullseye versucht das Skript auf die Datei
    /etc/systemd/system/dhcpcd.service.d/wait.conf zuzugreifen.
  • Diese war bei mir nicht vorhanden. Wird aber erzeugt über
    raspi-config.

Schritt 3 - ausführen von ncp-dist-upgrade -inklusive Abbruch wegen gcc-8-base

  • Ausführen von ncp-dist-upgrade mit Fehler Abbruch im Skript
  • Anschliessend erst sudo apt install gcc-8-base
  • Beim erneuten ausführen von ncp-dist-upgrade passiert anscheinend nichts mehr

Schritt 4 - Sicherstellen das der komplette Bullseye Upgrade geladen wurde

  • sudo apt update
  • sudo apt upgrade
  • sudo apt full-upgrade
  • sudo apt autoremove
  • sudo reboot

Schritt 5 - testen ob es wirklich noch läuft

  • Neu einloggen - bei mir über ssh
  • System Version prüfen mit lsb_relase -a und da kommt dann hoffentlich bei euch auch

root@raspi111:/home/pi# lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 11 (bullseye)
Release: 11
Codename: bullseye

Schritt 6 - Nextcloud testen

  • Externe Nextcloud Festplatte wieder mounten
  • Web Server neu starten systemctl start apache2
    *Ergebnis… Nextcloud zeigt nur php Code an der nicht als Seite dargestellt wird

Schritt 7 - mit ncp-config neue Nextcloud Version einspielen
(das ist gerade mein aktueller Versuch der noch nicht fertig ist… Erstmal Pause… :wink:
Weitere Infos folgen…

Schritt 8 - aufgegeben

  • aktuell komplette Neuinstallation der NextcloudPi Version auf dem Bullseye System mit anschliessendem Backup (mal sehen ob das so klappt)

CUT — kurze Zusammenfassung wie ich es es letztendlich gelöst habe

  • Neuinstallation über rpi-imager auf Bullseye 64 bit. Dies ist mittelfristig sowieso erforderlich,
    da die neuen Nextcloud Versionen nur noch 64 bit unterstützen.
  • Dort bei der Konfiguration wieder den Standardnutzer pi anlegen. Zudem ssh aktivieren und
    den root User mit password versehen.
  • Nextcloud einfach stumpf komplett neu installieren. Die Docker Version habe ich verworfen, ist
    zwar schnell installiert, aber ich hatte Probleme meine externe Festplatte dort vernünftig anzubinden. Dementsprechend also NextcloudPi direkt installiert. Anleitung dazu siehe
    https://www.heise.de/tipps-tricks/Nextcloud-auf-dem-Raspberry-Pi-so-geht-s-4363735.html
  • Meinen Standard User auf dieser Nextcloud anlegen.
  • Kopie meiner Daten mittels rsync von der alten Cloud auf die neue Cloud. Um Berechtigungen mitzunehmen habe ich hierfür den ssh Login für root kurzfristig eingeschaltet. Bei mir sah
    dann der Befehl folgendermaßen aus (dabei bin ich auf der alten Cloud entsprechend eingeloggt
    und im Datenverzeichnis vom user):

rsync -rutl --delete --progress -v files/* root@192.168.2.112://mnt/nextcloud/ncdata/data/user/files

  • Final die eingespielten Daten in der Datenbank eintragen lassen über ncp-config und dort die
    Files des Users komplett einscannen.
  • Kontakte - können direkt aus der Nextcloud exportiert bzw. auch wieder importiert werden
  • Termine - können direkt aus der Nextcloud exportiert bzw. auch wieder importiert werden

Kurze Ergänzung warum ich den Weg Neuinstallation gegangen bin

  • dist-upgrade funktioniert (zumindest nach meiner Kenntnis) nicht für den Upgrade von 32 auf 64 bit
  • Verwendung von docker war schwierig, da ich die Anforderung habe die Nextcloud auf einer mit LUKS verschlüsselten Festplatte zu legen. Damit konnte ich nicht einfach den gesamten Docker Pfad als USB Festplatte dran hängen - hatte ich getestet mit dem anhängen der Festplatte als Pfad /var/lib/docker und einer unverschlüsselten Platte - da funktioniert das einwandfrei. Aber mit dem nachträglichen mounten eines verschlüsselten Volumes => hängte sich docker auf.
  • Datenübertragung mittels rsync erfolgte, weil das integrierte Backup Tool von nextcloudpi (das ist das was ich verwende) den restore von Nextcloud Version 23 auf die Version 25 nicht hinbekam.

Gesamtfazit - Jetzt läufts wieder perfekt… :slight_smile:

Das kann ein Zeichen dafür sein, dass die Installation von PHP bzw. die Verbindung zwischen PHP und Webserver nicht korrekt vorgenommen. wurde.

Ist z. B. das Paket libapache2-mod-php installiert?
Wurde PHP aktiviert a2enmod php7.4 und Apche2 neu gestartet oder neu geladen?

NextcloudPi vs. Standardinstallation
Vielleicht ist es sinnvoll mal die Standardinstallation durchzuführen. Ich denke damit können Fehler dann vielleicht besser erkannt werden. Man benötigt zwar mehr Wissen, spart jedoch eine zusätzliche Softwareumgebung und damit Fehlerquelle.

Danke für den Hinweis…
zwischenzeitlich habe ich noch diverse andere Sachen probiert und den für mich besten und schnellsten Weg inzwischen gefunden…

Habe ich entsprechend oben an meinen Erfahrungsbericht dran gehangen - sprich das entspricht schon deiner Empfehlung… :wink:

Naja vielleicht nicht ganz. Auf dem Pi gibt es diverse Möglichkeiten der Installation einer Nextcloud. Natürlich ist NextcloudPi eine Möglichkeit und die ist auch bestimmt nicht schlecht. Aber ich denke man kann auch z. B. AIO (wobei Docker hast du ja verworfen) oder auch manuell auf dem Pi installieren. Wobei ich habe nicht mal einen Pi. :wink: