Web Blogs

Web Blogs

Nextcloud updaten ... was für eine Tortur

Lange Zeit habe ich mich davor gedrückt, jetzt war es mal wieder Zeit.

Es ist zwar noch nicht allzulange her, doch in der Zwischenzeit gab es viele Versionssprünge bei Nextcloud, soweit so gut.

Die ersten Session von Version 21 bis 25 gingen ja mehr oder weniger mit diversen Warnungen und Fehlermeldungen. Darunter sind dann z. B..Hinweise wenn man sich die Sicherheits- & Einrichtungswarnungen in der Übersicht bei NC ansieht:

In der Datenbank fehlen einige Indizes. Auf Grund der Tatsache, dass das hinzufügen von Indizes in großen Tabellen einige Zeit in Anspruch nehmen wird, wurden diese nicht automatisch erzeugt. Durch das Ausführen von “occ db:add-missing-indices” können die fehlenden Indizes manuell hinzugefügt werden, während die Instanz weiter läuft. Nachdem die Indizes hinzugefügt wurden, sind Anfragen auf die Tabellen normalerweise schneller.
Fehlender Index “fs_id_storage_size” in der Tabelle “oc_filecache”. 

darunter werden dann paar Meldungen aufgelistet. Wie aber nun beseitigen?

Na klar wenn man OCCWeb in NC als App installiert hat kein Problem, sofern es dann noch startet. Denn in den Updates wird immer wieder gemeldet das die APP veraltet ist und nicht mehr geht.

OK dann eben mal Google quälen und sich wieder mit Telnet oder Putty vertraut machen, damit man per SSH die Befehle durchführen kann.

EINLOGGEN per Putty/Telnet

cd /www/htdocs// ### In deine NEXTCLOUD instanz ###
oder
cd / ### In deine NEXTCLOUD instanz ###

php occ db:add-missing-columns
php occ db:add-missing-indices

Damit nicht genug, stellt man fest das mit zunehmnder Versionshöhe auch noch die Anforderungen wie MariaDB oder PHP 8.0 und höher bei NC verlangt wird und zufälligerweise feststellt das die Instanz weiter  <PHP 8.0 steht, muss man das auch noch korrigieren.

Gott sei dank bin ich bei All-Inkl, dann wird es so gemacht:

Nach der erfolgreichen Verbindung per SSH, befinden Sie sich direkt im Hauptverzeichnis (/www/htdocs/w0123456) des betreffenden Accounts.

Geben Sie jetzt folgenden Befehl ein:

ln -sfv /usr/bin/php80 /usr/bin/php

Passen Sie dabei die Angabe /usr/bin/php80 an die gewünschte PHP Version an. Aktuell sind folgende PHP Versionen installiert:

PHP 7.2.x - /usr/bin/php72
PHP 7.3.x - /usr/bin/php73
PHP 7.4.x - /usr/bin/php74
PHP 8.x - /usr/bin/php80
PHP 8.1.x - /usr/bin/php81
USW.

Und was man auch noch im Hinterköpfchen haben sollte, wenn das Update Prozedere abgeschlossen ist, muss die PHP-Speichergrenze wieder eingestellt werden, leider wird sie immer nach jedem Update überschrieben.

Man beachte das <PHP 8.0 die Befehle in eine .htaccess Datei geschrieben werden:

php_value memory_limit 512M
php_value max_execution_time 7200

Hat man PHP 8.0 und höher am laufen ist es die versteckte ".user.ini" Datei im gleichen Ordner:

memory_limit=512M
max_execution_time=7200

Zwischen Version 25 und 26 hatte ich das Problem das der Update Versuch vergeschlagen ist weil diese Index.html oder Index.htm im NC-Ordner lag. Die muss man wieder löschen, damit es wieder geht.

Wenn man noch zusätzlich zwischen den "Stabilen"  Versionen stehen bleibt, weil angeblich keine neueren Versionen verfügbat sind, wechselt man zum "Beta" Kanal, damit es mit den Updates weiter geht.

Es könnte so einfach sein und nachdem ich jetzt Aktuell bei 27 bin und alles wieder geht, funktionierte auch wieder OCCWeb im Backend. Muss man das Verstehen?!?

Bei den neueren Versionen ab 28 kommt zusätzlich noch:

Für deine Installation ist keine Standard-Telefonregion festgelegt. Dies ist erforderlich, um Telefonnummern in den Profileinstellungen ohne Ländercode überprüfen zu können. Um Nummern ohne Ländervorwahl zuzulassen, füge bitte „default_phone_region“ mit dem entsprechenden ISO 3166-1-Code der Region zu deiner Konfigurationsdatei hinzu.

Abhilfe:

Man muss default_phone_region in die config.php einfügen.

'default_phone_region' => 'DE'

Alternativ kann man das auch per occ setzen:

occ config:system:set default_phone_region --value="DE"

Oder über Telnet/Putty:

php occ config:system:set default_phone_region --value="DE"

Alles aus den unteren Verweisen habe ich mir hier selbst für mein Verständniss zusammengeschrieben.

Noch ein kleiner Link-Tipp wegen Nextcloud -> KLICK und hier -> KLICK und hier -> KLICK

user.ini

mbstring.func_overload=0
always_populate_raw_post_data=-1
default_charset='UTF-8'
output_buffering=0

memory_limit=512M
max_execution_time=7200

opcache.file_cache_only=0


Bislang wurde kein Kommentar abgegeben. Seien Sie der erste, der kommentiert. Kommentar abgeben