Mettre à jour Owncloud serveur de 8.2.7 à 9.1

Publié le - Modifié le 16 août 2017 | Aucun commentaire

Classé dans : Mise à jour, Intervention difficile, Rédaction en cours en 300+ min. | Mots clés : OwnCloud, Debian

00. Suite à une mise à jour de Owncloud serveur, l'interface graphique Owncloud client ne semble plus fonctionner sous Debian. L'hypothèse est qu'il faudrait que les versions de Owncloud serveur et de Owncloud client soient comptatibles. A noter que Owncloud serveur ne supporte pas les mises à jour qui sauteraient une version majeure. En clair, impossible de passer de la version 8.2.7 à la version 9.1 sans passer par la version 9.0.

Contexte :

  • Owncloud serveur 8.2.7.
  • Owncloud client 1.7 sur Debian 8.5.
  • Documentation Owncloud en ligne ici pour la procédure d'upgrade manuelle.
  • Sauvegardes et backups et copies des fichiers et de la base de Owncloud serveur 8.2.7 !

01. Sauvegardes et backups et copies des fichiers et de la base de Owncloud 8.2.7 serveur !

$ cd sites/.../htdocs/

$ chmod +x occ

 ./occ maintenance:mode --on
Maintenance mode enabled

$ cd ..

$ cp -r htdocs/ 2016-08-17_htdocs &

$ mv htdocs htdocs.old

$ cat htdocs.old/config/config.php | grep "dbname\|dbhost\|dbuser\|dbpassword"

$ mysqldump --host=mysql-server.net --user=user-mysql --password='*********' mysql-database > 2016-08-17_mysql-database-owc827.sql

$ mv 2016-08-17_mysql-database-owc827.sql 2016-08-17_htdocs/

$ wget https://download.owncloud.org/community/owncloud-9.0.4.tar.bz2

$ tar xjf owncloud-9.0.4.tar.bz2

$ mv owncloud/ htdocs

$ cp htdocs.old/config/config.php htdocs/config/

$ cp -r htdocs.old/data htdocs/ &

$ ll htdocs.old/3rdparty/

$ ll htdocs/3rdparty/

$ cp -r htdocs.old/3rdparty/not-in-htdocs-3rdparty htdocs/3rdparty/

$ cd htdocs

$ ./occ upgrade
ownCloud or one of the apps require upgrade - only a limited number of commands are available
You may use your browser or the occ upgrade command to do the upgrade
Set log level to debug
Checking whether the database schema can be updated (this can take a long time depending on the database size)
........
Update successful
Maintenance mode is kept active
Reset log level

$ ./occ maintenance:mode --off
ownCloud is in maintenance mode - no app have been loaded
Maintenance mode disabled

02. Se connecter sur https://mon-serveur.owncloud.xyz avec le compte admin et réactiver les applications utiles. Puis checker que tout fonctionne bien, synchro des contacts dans Icedove de l'agenda dans Icewole, des fichiers avec Owncloud client, envoi de notification par email, etc.

03. Rejouer la manip d'upgrade depuis 01. pour installer la dernière version de Owncloud serveur 9.1.

05. Installer la dernière version Owncloud client disponible pour Debian 8.5.

# echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/Debian_8.0/ /' >> /etc/apt/sources.list.d/owncloud-client.list

# wget http://download.opensuse.org/repositories/isv:ownCloud:desktop/Debian_8.0/Release.key

# apt-key add - < Release.key

# apt-get install owncloud-client

# dpkg-query -l | grep -i owncloud
ii  libowncloudsync0:amd64                2.2.3-1.1                            amd64        the ownCloud sync library
ii  owncloud-client:amd64                 2.2.3-1.1                            amd64        The ownCloud sync client - github.com/owncloud/client
ii  owncloud-client-l10n                  2.2.3-1.1                            all          Internationalization files for ownCloud

06. Sauvegardes et backups et copies des fichiers locaux !!!

07. Configurer Owncloud client pour synchroniser les fichiers présents sur le client et les fichiers déjà présents sur le serveur. Attention aux subtilités genre syncho des fichiers du serveur sur le client produit un résultat très différent de syncho des fichiers du client sur le serveur.........!!!!!! Finalement, il semble que les fichiers présents sur le serveur soient LA référence. Donc, il faut savoir lequel des deux, serveur ou client, contient les fichiers les plus à jour ! Le plus simple semble être de supprimer tous les fichiers du serveur, puis de synchroniser les fichiers du client sur le serveur.

08. Il arrive que certains fichiers sur le serveur ne se suppriment pas avec ce genre de message :

Erreur à la suppression du fichier "Documents".

et dans les logs :

Message\":\"HTTP\\\/1.1 423 \\\"Documents\\\" is locked\",\"Exception\":\"OCA\\\\DAV\\\\Connector\\\\Sabre\\\\Exception\\\\FileLocked\",\"Code\":0,\"Trace\":\"#0...

dans ce cas :

./occ maintenance:mode --on

$ mysql -uuser-mysql -p -hmysql-server.net
Enter password: *********
Welcome to the MySQL monitor.  Commands end with ; or \g.
...
mysql> use mysql-database;
Database changed
mysql> SELECT * FROM `oc_file_locks;
+------+------+----------------------------------------+------------+
| id   | lock | key                                    | ttl        |
+------+------+----------------------------------------+------------+
| 3164 |    0 | files/2863a3536f290ec311edef699a8e9820 | 1471505458 |
| 3165 |    0 | files/89fce4d58f20f11d38ee87c3a2a719c6 | 1471505463 |
...
mysql> delete from oc_file_locks;
Query OK, 39 rows affected (0.00 sec)
mysql> quit;
Bye

./occ maintenance:mode --on

Il est ensuite possible de supprimer les fichiers qui étaient "lockés" sur le serveur.

09. Enfin, synchroniser les fichiers du client sur le serveur, et ça marche smiley

Source :

Écrire un commentaire

Quelle est le dernier caractère du mot yil5n ?

Fil RSS des commentaires de cet article