NextCloud erfordert ab einem gewissen Update Level PHP 8.0. Die meisten NextCloud Installationen sind direkt auf einem Linux durchgeführt. Dabei ist es egal ob Ubuntu oder Debian. Ich empfehle grundsätzlich vor dem Update ein Snapshot oder Backup von dem System durchzuführen. Denn Ihr kennt es, sicher ist sicher.
Diese Anleitung kann für folgende Update Schritt verwendet werden.
PHP 7.2 zu PHP 8.0
PHP 7.3 zu PHP 8.0
PHP 7.4 zu PHP 8.0
# | Vorschau | Produkt | Bewertung | Preis | |
---|---|---|---|---|---|
1 | WD 4TB My Cloud EX2 Ultra 2-bay NAS - Network Attached Storage RAID, file sync, streaming, media... | 314,92 EUR | Bei Amazon ansehen | ||
2 | UGREEN NASync DXP2800 2-Bay Desktop NAS, Intel N100 Quad-Core-CPU, 8GB DDR5 RAM, 1 * 2,5GbE, 2*M.2... | 379,99 EUR | Bei Amazon ansehen |
Schritt für Schritt PHP Update Anleitung
Ich empfehle die Services zunächst komplett zu stoppen. Dann kann auch wirklich nichts dazwischen funken. Denkt dran, somit wären alle Services auf dem Server Offline welche über den Apache laufen.
service mysql stop service apache2 stop
Schaut euch einfach mal die aktuelle Version von PHP an. Eine lange Liste mit PHP Versionen sollte hier erscheinen. Das „tee php.txt“ speichert die im Moment alle installierten PHP Module in der Datei php.txt.
dpkg -l | grep php | tee php.txt php -v
System zum Update vorbereiten. Im Repository von ondrej gibt es immer die aktuellste Version.
apt install software-properties-common add-apt-repository ppa:ondrej/php apt-get update
Jetzt installieren wir die PHP Version 8.0 und direkt hinterher die wichtigsten PHP Module.
apt install php8.0-common php8.0-cli apt install php8.0-{mbstring, gd, curl, imagick, intl, bcmath, gmp, mysql, zip, xml, apcu, libapache2-mod-php8.0}
Jetzt ist auch schon PHP 8.0 installiert und läuft bereits auf dem System. Folgend kann man das überprüfen und dem Apache mitgeben er soll mit PHP 8.0 Nextcloud betreiben.
php -v a2dismod php7.4 a2enmod php8.0
In den meisten Fällen habt Ihr an der php.ini geschraubt und z.B. das memory_limit und upload_max_filesize geändert. Das sollte man nun auch wieder erledigen.
nano /etc/php/8.0/apache2/php.ini ## Beispiel ## memory_limit = 4096M upload_max_filesize = 32G
An dieser Stelle ist erstmal alles erledigt und wir starten Apache und Mysql wieder. Danach testet Ihr erstmal ob Nextcloud auch wieder normal funktioniert.
service mysql start service apache2 start ## NextCloud Testen ##
Aufräumen und sonstige Updates
## System grundsätzliche Updaten ## apt upgrade -f ## Alte PHP Version 7.x entfernen ## apt purge '^php7.*'
# | Vorschau | Produkt | Bewertung | Preis | |
---|---|---|---|---|---|
1 | Seagate IronWolf 4TB interne Festplatte, NAS HDD, 3.5 Zoll, 5400 U/Min, CMR, 64 MB Cache, SATA... | 123,99 EUR | Bei Amazon ansehen | ||
2 | Seagate IronWolf PRO 4TB interne NAS Festplatte ST4000NE001 3,5 Zoll HDD SATA3 | 73,90 EUR | Bei Amazon ansehen |
21. März 2022 um 11:43 Uhr
Hallo Herr Schröder
Nun habe ich Ihre Webseite zum Update von PHP 7.4 auf PHP8.0 gelesen und mich an Ihre Anweisungen gehalten, um meine Nextcloud von Version 22 auf 23 an-
zu heben, da letztige Version besser mit PHP8.0 als mit PHP7.4 läuft.
Natürlich funktioniert alles, allein zu der „Nachsorge“ in der Paketverwaltung, die zum
Weiterbetrieb der Ubuntu 20.04 LTS fällig ist (apt upgrade -f, apt purge ‚^php7.*‘),
kommen bei mir Fragen auf, da ich dies in dieser Form noch nie gemacht habe.
Jedoch bin ich mir nicht sicher, ob Sie sich überhaupt damit beschäftigen möchten.
Grüße
Hans
29. März 2022 um 19:26 Uhr
Hi, klappt leider nur unter BullEy ? – habe noch Rasp/Buster
bekam dieses hier nachdem ich versucht hatte mit „add-apt-repository ppa:ondrej/php“. mir das PHP8 zu holen… Gibt es auch die PHP8 für Buster noch irgendwo ?
Thx
mario
File „/usr/bin/add-apt-repository“, line 95, in
sp = SoftwareProperties(options=options)
File „/usr/lib/python3/dist-packages/softwareproperties/SoftwareProperties.py“, line 109, in __init__
self.reload_sourceslist()
File „/usr/lib/python3/dist-packages/softwareproperties/SoftwareProperties.py“, line 599, in reload_sourceslist
self.distro.get_sources(self.sourceslist)
File „/usr/lib/python3/dist-packages/aptsources/distro.py“, line 93, in get_sources
(self.id, self.codename))
aptsources.distro.NoDistroTemplateException: Error: could not find a distribution template for Raspbian/buster
18. Juli 2022 um 00:09 Uhr
Hallo Mario,
ich habe meine Nextcloud auch auf einem Raspberry mit Buster laufen und habe mich bezüglich der Paketquellen an folgendem Tutorial orientiert:
https://pimylifeup.com/raspberry-pi-latest-php/
Damit (und mithilfe der Anleitung auf dieser Seite) konnte ich erfolgreich von PHP7.3 auf PHP8.0 updaten.
Vielen Dank daher auch an Herrn Schröder für diese Anleitung.
17. August 2022 um 15:51 Uhr
Hallo Herr Schröder,
mit Ihrer Anleitung hat es endlich geklapt meine PHP von 7.4 zu 8.1.9 upzudaten.
Ich habe einfach die Versionsnummern auf 8.1 umgeändert.
Leider mußte ich einige PHP-Extension per Hand seperat installieren, war aber aufgrund der Liste PHP.txt kein Problem.
Gruß und Dank
Raimund
23. August 2022 um 21:12 Uhr
Hallo,
leider funktioniert die Anleitung nicht. PHP läßt sich nicht installieren. Nach einen APT UPDATE kommt:
E: The repository ‚http://ppa.launchpad.net/ondrej/php/ubuntu kinetic Release‘ does not have a Release file.
N: Updating from such a repository can’t be done securely, and is therefore disabled by default.
Kann hier jemand helfen?
Gruß,
Dino
2. August 2023 um 14:30 Uhr
Funktioniert leider nicht unter bulleye
WARNING: add-apt-repository is broken with non-UTF-8 locales, see
und eine Reihe von Errors
/usr/lib/python3.9/threading.py“, line 954, in _bootstrap_inner
Finde keinen Weg zur Lösung