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 My Cloud EX2 Ultra 8 TB Netzwerkspeicher für Backups (ortsunabhängig, zentrale... |
269,99 EUR |
Bei Amazon ansehen | |
2 |
![]() |
TERRAMASTER F5-221 NAS 5Bay Cloud Speicher Dual-Core 2,0GHz Plex Media Server Netzwerkspeicher RAID... |
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 4 TB interne Festplatte, NAS HDD, 3.5 Zoll, 5400 U/Min, CMR, 64 MB Cache, SATA 6... |
94,99 EUR |
Bei Amazon ansehen | |
2 |
![]() |
Synology DS920+ 32TB 4 Bay Desktop NAS System, installiert mit 4 x 8TB Seagate IronWolf Festplatten |
1.789,95 EUR |
Bei Amazon ansehen |
21. März 2022 um 11:43
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
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
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
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
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