Upgrade von 5.0.14 auf 7.04
Ausgangslage
Das Update wurde notwendig das das zugrundeliegende Basissystem (Debian Wheezy) auf die nächste Version (Jessie) aktualisiert wurde.
Owncloud 5.0.14 wurde in dem betroffenen Debian System (Wheezy) über die Backports eingespielt und dann für das Paketmanagement gesperrt , so das keine weiteren Updates mehr eingespielt werden konnten. Hintergrund war, das wir das Update auf owncloud 6 nicht mitmachen wollten.
Problem
Das Owncloud Paket in Debian (Jessie) ist mit der Version 7.0x angegeben. Das Owncloud-Update System kann jedoch nur Updates von einer Major Revision zur nächsten funktionieren. Um nach 7.0.x zu gelangen werden wir also zuerst hänndisch eine Migration von V5 nach V6 und danach erst nach V7 durchführen müssen.
Durchführung
automatischer Teil (Debian-System)
PostgreSQL
Nach dem Upgrade installiert Debian ein zusätzliches Datenbank Paket, das man manuell wieder deinstalliert werden muss. Die entsprechenden Datei in der das Procedere beschrieben ist liegt unter /usr/share/doc/postgres-9.4/README.Debian.gz.
Im Prinzip macht man einen Datenbank einen Dump und migriert dann diese über das entsprechende Skript.
Apache 2.4
Nach dem Upgrade muss darauf geachtet werden ob in der Konfigurationsdatei die Include-Anweisung für die vHosts angelegt ist.
Onwcloud
Debian installiert das fertige owncloud 7.0.4 das aber das Upgrade verweigert, da es mindestens ein owncloud in der Version 6 erwartet.
händischer Teil (owncloud)
manuelles Upgrade auf owncloud 6
cd /root/temp/ wget https://download.owncloud.org/community/owncloud-6.0.7.tar.bz2 bunzip owncloud-6.0.7.tar.bz2 tar -xf owncloud-6.0.7.tar chown -R www-data:www-data owncloud cd /usr/share/ service apache2 stop mv owncloud owncloud_7 mv /root/temp/owncloud/ /usr/share/owncloud/ cp owncloud_7/config/config.php owncloud/config/config.php rm -r owncloud/data/ ln -s /var/lib/owncloud/data owncloud/data/ service apache2 start
Jetzt auf die Website gehen und das Update anstoßen
manuelles Upgrade auf Owncloud 7
service apache2 stop cd /usr/share/ mv owncloud owncloud_6 mv owncloud_7 owncloud cp owncloud/config/config.php owncloud/config/config.php.bak cp owncloud_6/config/config.php owncloud/config/config.php service apache2 start
Jetzt auf die Website gehen und das Update ein letztes Mal anstoßen.
kleinere Anpassungen
php.ini
Owncloud gibt folgende Fehlermeldung aus :
{"app":"PHP","message":"Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a future version. To avoid this warning set 'always_populate_raw_post_data' to '-1' in php.ini and use the php:\/\/input stream instead. at Unknown#0","level":3,"time":"2015-03-13T23:47:48+00:00"}
Dementsprechend ergänzen wir den Eintrag in der /etc/php5/apache2/php.ini
; Anpassung damit die Fehlermeldung von Owncloud verschwindet always_populate_raw_post_data = -1
Owncloud Upgrade von 7.04 auf 9.x
Ausgangslage
Wie in den vorangegangenen Artikel zu lesen ist, basiert die aktuelle Owncloud - Installatiion auf einer alten Debian 7 Paketvariante.
Verzeichnisstruktur
Hauptverzeichnis ist /usr/share/owncloud mit folgenden Anpassungen
.htaccess -> /etc/owncloud/htaccess assets -> /var/lib/owncloud/assets backup -> /var/lib/owncloud/backup config -> /etc/owncloud data -> /var/lib/owncloud/data themes -> /var/lib/owncloud/themes
Ich halte das für Unsinn und würde zukünftig nur noch das Data Verzeichnis extern vorhalten.
Zukünftig soll das Owncloud Verzeichnis unter /var/www/owncloud liegen
Upgrade von 7.0.4 nach 7.0.15
Anpassungen an der config.php
In der /var/www/owncloud.config/config.php müssen alle Pfade von /usr/share/ nach /var/www/ abgeändert werden ! Sonst startet nach dem Upgrade das System nicht mehr !
# wget https://download.owncloud.org/community/7.0/owncloud-7.0.15.tar.bz2 # tar -xjvf owncloud-7.0.15.tar.bz2 # chown -R www-data:www-data owncloud # mv owncloud /var/www/ # cp -av /usr/share/owncloud/config/config.php /var/www/owncloud/config/ # ln -s /var/lib/owncloud/data /var/www/owncloud/data
Danach noch die /etc/apache2/sites-available/lug-in-cloud.conf auf das neue Verzeichnis anpassung und den Apachhe neu starten.
Upgrade von 8 auf 9
Das nachfolgende Procedere gilt für die Versionen
- 8.0.16
- 8.1.12
- 8.2.11
- 9.0.11
# wget https://download.owncloud.org/community/owncloud-8.0.16.tar.bz2 # tar -xjvf owncloud-8.0.16.tar.bz2 # chown www-data:www-data owncloud # systemctl stop apache2.service # mv /var/www/owncloud/ /var/www/owncloud_alt # mv owncloud /var/www/ # cp -a /var/www/owncloud_alt/config/config.php /var/www/owncloud/config/ # rm /var/www/owncloud_alt/data # ln -s /var/lib/owncloud/data /var/www/owncloud/data # cd /var/www/owncloud # sudo -u www-data php occ upgrade # systemctl start apache2.service
Beim Upgrade auf 9.0 bekommen wir
Repair warning: The file cache contains entries where the parent id does not point to any existing entry for the following storage numeric ids: 29 Repair warning: Please run `occ files:scan --all --repair` to repair all affected storages
# sudo -u www-data php occ maintenance:singleuser --on # sudo -u www-data php occ files:scan --all --repair # sudo -u www-data php occ maintenance:singleuser --off
Upgrade auf Nextcloud
# wget https://download.nextcloud.com/server/releases/nextcloud-9.0.58.tar.bz2 tar -xjvf nextcloud-9.0.58.tar.bz2 # chown www-data:www-data owncloud # mv nextcloud /var/www/ # cp -av /var/www/owncloud/config/config.php /var/www/nextcloud/config/ # ln -s /var/lib/owncloud/data /var/www/nextcloud/data
Nextcloud 10 bis 13
Nun das gleiche Spiel mit den Versionen
# wget https://download.nextcloud.org/community/nextcloud-8.0.16.tar.bz2 # tar -xjvf nextcloud-8.0.16.tar.bz2 # chown -R www-data:www-data nextcloud # systemctl stop apache2.service # mv /var/www/nextcloud/ /var/www/nextcloud_alt # mv nextcloud /var/www/ # cp -a /var/www/nextcloud_alt/config/config.php /var/www/nextcloud/config/ # ln -s /var/lib/owncloud/data /var/www/nextcloud/data # cd /var/www/nextcloud # sudo -u www-data php occ upgrade # systemctl start apache2.service
Meldung beim Upgrade auf 12.x
Repair warning: Could not install core app bundle: Could not download app bruteforcesettings
Wechsel auf Debian 9
Wir Upgrade bis zur Version 13.x um danach das darunterliegende Debian auf die Version 9 zu heben. Dort wird dann PHP7 vorhanden sein.
Nach der Migration beschwert sich Nextcloud, das noch das das Paket php-mbstring fehlt.
# apt install php-mbstring
Nextcloud 14 bis 15
- Funktioniert wie 10 auf 13
- Bei 15 ist Schluss da PHP 7.1 verlangt wird.
Überprüfung der Installation
Nach folgender Anweisung benötigt NC 15
# apt install php-intl php-imagick php-xml php-zip # apt-get install php-gd php-json php-curl php-mbstring
Datenbank
# systemctl stop apache2.service # sudo -u www-data php occ db:add-missing-indices # sudo -u www-data php occ db:convert-filecache-bigint # systemctl start apache2.service
Anpassungen php.ini
Die Datei liegt unter /etc/php/7.0/apache2/php.ini
opcache.enable=1 opcache.interned_strings_buffer=8 opcache.max_accelerated_files=10000 opcache.memory_consumption=128 opcache.save_comments=1 opcache.revalidate_freq=1
AppStore
Um den Appstore zu aktivieren benötigen wir ein zweites App-Verzeichnis.
# mkdir apps2 # chown www-data:www-data apps2/
Anpassungen in der /var/www/nextcloud/config/config.php
... 'appstoreenabled' => true, 'apps_paths' => array ( 0 => array ( 'path' => '/var/www/nextcloud/apps', 'url' => '/apps', 'writable' => false, ), 1 => array ( 'path' => '/var/www/nextcloud/apps2', 'url' => '/apps2', 'writable' => true, ), ),n ...
Upgrade auf 19.08
Läuft über den Web-Updater, es müssen nur die üblichen occ Kommandos die der Securtity Scanner anweist, auzuführen
# sudo -u www-data php occ db:add-missing-indices # sudo -u www-data php occ db:convert-filecache-bigint # apt installl php-bcmath php-gmp
Upgrade auf 20.07
Das gleiche wie bei 19.08, auch hier ein paar Anpassungen per occ
# sudo -u www-data php occ db:add-missing-columns # sudo -u www-data php occ db:add-missing-primary-keys # sudo -u www-data php occ db:convert-filecache-bigint