OpenSuse Leap 42.2 update php5.5 auf php5.6

Hallo, zusammen.

Meine Installation:
NextCloud 10.0.2 auf OpenSuse Leap 42.2 mit mariaDB gÀnzlich ohne grafische OberflÀchen


Zu Leap 42.2 finde ich hier so gar nichts im Forum. Ich habe meine nextCloud im html-Updateinstaller auf 10.0.2 gehoben, bekomme nun aber die Meldung:

“Sie benutzen PHP 5.5. Um die Aktualisierung auf Nextcloud 11 und höher zu ermöglichen ist wenigstens PHP 5.6 erforderlich.”

Und das ist mein Problem. Ich finde kein Repository, habe war eine passende rpm gefunden:
zypper in php5-5.6.1-89.1.x86_64.rpm
meldet aber:

Loading repository data

Reading installed packages

Resolving package dependencies


Problem: php5-zlib-5.5.14-69.1.x86_64 requires php5 = 5.5.14, but this requirement cannot be provided
uninstallable providers: php5-5.5.14-63.1.x86_64[download.opensuse.org-oss]
php5-5.5.14-65.1.x86_64[download.opensuse.org-oss_1]
Solution 1: Following actions will be done:
deinstallation of php5-zlib-5.5.14-69.1.x86_64
deinstallation of php5-ctype-5.5.14-69.1.x86_64
deinstallation of php5-curl-5.5.14-69.1.x86_64
deinstallation of php5-dom-5.5.14-69.1.x86_64
deinstallation of php5-fileinfo-5.5.14-69.1.x86_64
deinstallation of php5-fpm-5.5.14-69.1.x86_64
deinstallation of php5-gd-5.5.14-69.1.x86_64
deinstallation of php5-iconv-5.5.14-69.1.x86_64
deinstallation of php5-intl-5.5.14-69.1.x86_64
deinstallation of php5-json-5.5.14-69.1.x86_64
deinstallation of php5-mbstring-5.5.14-69.1.x86_64
deinstallation of php5-mcrypt-5.5.14-69.1.x86_64
deinstallation of php5-mysql-5.5.14-69.1.x86_64
deinstallation of php5-pdo-5.5.14-69.1.x86_64
deinstallation of php5-sqlite-5.5.14-69.1.x86_64
deinstallation of php5-tokenizer-5.5.14-69.1.x86_64
deinstallation of php5-xmlreader-5.5.14-69.1.x86_64
deinstallation of php5-xmlwriter-5.5.14-69.1.x86_64
deinstallation of php5-zip-5.5.14-69.1.x86_64
deinstallation of apache2-mod_php5-5.5.14-69.1.x86_64
Solution 2: do not install php5-5.6.1-89.1.x86_64
Solution 3: break php5-zlib-5.5.14-69.1.x86_64 by ignoring some of its dependencies

WĂŒrde ich hier die 1 wĂ€hlen, hĂ€tte ich wahrscheinlich eine defekte Installation, mutmaße ich mal.

Fernziel: nextcloud 11. Habt ihr mir einen Tipp? Wenn ich die rpm installiere, fehlen mir ja alle php-Erweiterungen. Gibt es ein Repository, das mich bedient und wenn ja: wie kann ich das hinzufĂŒgen?

Vielen Dank euch im Voraus,
Sven

Du brauchst ein repository, wo alle php5.6 packete enthalten sind, damit du die AbhÀngigkeiten auflösen kannst. Oder du brauchst alle zusammenhÀngenden rpm-files und musst die gleichzeitig installieren. Schau mal in den SuSE-Foren, du kannst ja nicht der einzige sein der php5.6 oder php7.0 installieren möchte.

Danke, tflidd. Ich war jetzt mal mutig.
ZunÀchst habe einen Snapshot gemacht, denn mein nextcloud lÀuft auf XenServer :slight_smile:

Und dann lief meine Installation folgendermaßen:

systemctl apache2 stop
systemctl stop mysql
service sshd stop
systemctl stop mysql.services
service php-fpm stop
sudo apt-get update
sudo apt-get upgrade
-> 51 packages !

zypper remove php5 php5-zlib php5-zip php5-xmlwriter php5-xmlreader php5-ctype php5-curl php5-dom php5-fileinfo php5-gd php5-iconv php5-intl php5-json php5-pdo php5-mcrypt
zypper in php7 php7-zlib php7-zip php7-xmlwriter php7-xmlreader php7-ctype php7-curl php7-dom php7-fileinfo php7-gd php7-iconv php7-intl php7-json php7-pdo php7-mcrypt php7-tokenizer php7-sqlite apache2-mod_php7 php7-mysql php7-fpm php7-mbstring php7-intltring

Loading repository data

Reading installed packages

Resolving package dependencies


The following 21 NEW packages are going to be installed:
apache2-mod_php7 php7 php7-ctype php7-curl php7-dom php7-fileinfo php7-fpm php7-gd php7-iconv php7-intl php7-json php7-mbstring php7-mcrypt php7-mysql php7-pdo php7-sqlite php7-tokenizer php7-xmlreader php7-xmlwriter
php7-zip php7-zlib

The following 8 recommended packages were automatically selected:
php7-ctype php7-dom php7-iconv php7-json php7-sqlite php7-tokenizer php7-xmlreader php7-xmlwriter

The following 5 packages are suggested, but will not be installed:
php5-gettext php5-pear php5-suhosin php7-gettext php7-pear

21 new packages to install.
Overall download size: 6.0 MiB. Already cached: 0 B. After the operation, additional 20.1 MiB will be used.
Continue? [y/n/? shows all options] (y):
y

reboot

Nach dem Neustart konnt ich dann https/nextcloud/nextcloud aufrufen und nach dem ĂŒblichen Sicherheitshinweis wollte der Browser, dass ich einen Download der Datei “nextcloud” durchfĂŒhre.

Dies habe ich gemacht und mit einem Editor mal rein gesehen:

<?php /** copyright Copyright (c) 2016, ownCloud, Inc. author Jörn Friedrich Dreyer author Lukas Reschke author Morris Jobke author Robin Appelman author Thomas MĂŒller author Vincent Petry license AGPL-3.0 This code is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License, version 3, as published by the Free Software Foundation. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License, version 3, along with this program. If not, see // Show warning if a PHP version below 5.4.0 is used, this has to happen here // because base.php will already use 5.4 syntax. if (version_compare(PHP_VERSION, '5.4.0') === -1) { echo 'This version of Nextcloud requires at least PHP 5.4.0
'; echo 'You are currently running ' . PHP_VERSION . '. Please update your PHP version.'; return; } // Show warning if PHP 7.1 is used as Nextcloud is not compatible with PHP 7.1 for now //see webseite/github.com/nextcloud/docker-ci/issues/10 if (version_compare(PHP_VERSION, '7.1.0') !== -1) { echo 'This version of Nextcloud is not compatible with PHP 7.1.
'; echo 'You are currently running ' . PHP_VERSION . '.'; return; } try { require_once __DIR__ . '/lib/base.php'; OC::handleRequest(); } catch(\OC\ServiceUnavailableException $ex) { \OC::$server->getLogger()->logException($ex, ['app' => 'index']); //show the user a detailed error page OC_Response::setStatus(OC_Response::STATUS_SERVICE_UNAVAILABLE); OC_Template::printExceptionErrorPage($ex); } catch (\OC\HintException $ex) { OC_Response::setStatus(OC_Response::STATUS_SERVICE_UNAVAILABLE); OC_Template::printErrorPage($ex->getMessage(), $ex->getHint()); } catch (Exception $ex) { \OC::$server->getLogger()->logException($ex, ['app' => 'index']); //show the user a detailed error page OC_Response::setStatus(OC_Response::STATUS_INTERNAL_SERVER_ERROR); OC_Template::printExceptionErrorPage($ex); } catch (Error $ex) { \OC::$server->getLogger()->logException($ex, ['app' => 'index']); OC_Response::setStatus(OC_Response::STATUS_INTERNAL_SERVER_ERROR); OC_Template::printExceptionErrorPage($ex); } Ich glaube, ich setze meine Installation durch RĂŒckkehr auf meinen vorigen Snapshot wieder zurĂŒck, oder ist hier etwas zu retten. Was meint ihr? Viele GrĂŒĂŸe, Sven

Hast du php7-fpm gestartet (sofern du den nutzt)? Der socket-Pfad hat sich vielleicht geÀndert? Normalerweise helfen hier die Logfiles, weil sie dir sagen, was nicht klappt bzw. worauf sie warten. Dann kann man sich an den Fehlern zum eigentlichen Problem hangeln. Meistens nur eine Kleinigkeit, bin selbst aber kein SuSE-Experte um dir bessere Tipps zu geben.

ein repository, wo alle php5.6 packete enthalten sind

Das gibt es hier:

zypper addrepo http://download.opensuse.org/repositories/devel:languages:php/openSUSE_Leap_42.2/devel:languages:php.repo

Allerdings ist dann zu beachten, dass es ein devel-Repo ist, das nicht die QualitÀtsstandards wie das offizielle Hauptrepo hat. Wenn es nur um Nextcloud auf dem Webserver geht (und da keine andere Webanwendung noch auf PHP5 angewiesen ist), ist es vermutlich besser, gleich PHP7 aus dem offiziellen Repo zu nehmen.

Hallo, Benedikt.

VIelen Dank fĂŒr die Info, die aber nun leider nur noch Leuten hilft, die ebenfalls auf OS Leap 42.2 ihre nextcloud laufen haben (davon gibt es sicherlich einige), nachdem ich nĂ€mlich Stunden verbracht habe mit Suchen und Probieren, habe ich mich entschlossen, die gesamte Installation noch einmal neu aufzusetzen, diesmal aber (da war auch die Beschreibung viel besser) mit Ubuntu


Viele GrĂŒĂŸe,
Sven