Nextcloud - Mise à jour et répertoire data

Bonjour,
J’ai effectué hier soir la mise à jour de nextcloud 11 vers 12 sur mon RaspPi3.
Aucun message d’erreur, je me reconnecte tout semble bien se passer.

Ce matin, j’ai des messages étranges de problèmes d’autorisation quand je tente d’uploader des fichiers ou de modifier des fichiers existants : je creuse un peu et je me rends compte que la mise à jour a écrasé le fichier config.php et du coup nextcloud réutilise le répertoire data par défaut (/home/yunohost.app/nextcloud/data) au lieu de celui que j’avais paramétré sur un disque dur externe.

Bon, en bidouillant un peu, j’ai réussi à récupérer toutes les données, celles modifiées depuis la mise à jour et les précédentes, mais est-ce un comportement voulu?
Normalement, lors des mises à jour manuel on conserver toujours le fichier config.php original pour éviter justement ce genre de problème?
Ou alors la méthode “recommandée” pour yunohost serai de faire un
ln -s /monmediaexterne/ /home/yunohost.app/nextcloud/data

Dans tous les cas, il faudrait le documenter quelque part pour éviter les pertes de données!

Bonjour,

Bien évidemment ce n’est pas un comportement voulu, le script de MaJ n’a pas à supprimer ce fichier. Sinon c’est une nouvelle install, pas une MaJ :wink:
Y a t-il que cette option qui a sauté ou tu as dû reconfigurer autre chose ?

À tout hasard, les logs parlent ?

Il faut que je fasse la mise à jour pour ma part, je te dirai si j’ai eu la même mésaventure.

Aaaah, bah merci ça me rassure :slight_smile:
Dans les logs de nextcloud rien, dans ceux de yunohost, j’ai uniquement ça qui semble en rapport:

`   2017-08-18 20:12:54,883 INFO     yunohost.hook <lambda> - [21133.102] ++ ynh_app_setting_get nextcloud user_home
    2017-08-18 20:12:54,884 INFO     yunohost.hook <lambda> - [21133.102] ++ sudo yunohost app setting nextcloud user_home --output-as plain --quiet
    2017-08-18 20:12:55,868 INFO     yunohost.hook <lambda> - [21133.102] + user_home=0
    2017-08-18 20:12:55,869 INFO     yunohost.hook <lambda> - [21133.102] + DESTDIR=/var/www/nextcloud
    2017-08-18 20:12:55,870 INFO     yunohost.hook <lambda> - [21133.102] + [[ ! -d /var/www/nextcloud ]]
    2017-08-18 20:12:55,871 INFO     yunohost.hook <lambda> - [21133.102] + DATADIR=/home/yunohost.app/nextcloud/data
    2017-08-18 20:12:55,872 INFO     yunohost.hook <lambda> - [21133.102] + [[ ! -d /home/yunohost.app/nextcloud/data ]]`

Je n’ai rien repéré d’autre de problématique dans le config, mais par contre j’ai du également réadapter le fichier nextcloud.conf de nginx ainsi que le fichier conf de php, mais là ça me choque un peu moins…

Je confirme que le fichier de config de nextcloud config.php n’est pas modifié. Par contre le fichier config.json est systématiquement réécrit et le dossier de data y est indiqué.
C’est peut-être ça qui a changé ta config.

Concernant les config php et nginx, elles sont toujours remplacées.
Toutefois, une mise à jour du package va être faite, ces 2 fichiers de configurations seront sauvegardés avant remplacement.

De même pour le fichier config.json qui sera sauvegardé si il a été modifié.

Ok, merci pour ces infos… mais quel fichier config.json??

root@YunoHost:/var/www/nextcloud # cd / root@YunoHost:/ # find -name config.json ./var/www/wallabag2/vendor/symfony/symfony/.composer/config.json ./var/cache/yunohost/from_file/nextcloud_ynh-4e77a9219fe1c1aa46c3b871bd16f335ab37ae1a/conf/config.json

Les scripts d’installation et d’upgrade utilisent un fichier config.json, qui semble disparaître par la suite.
Peut-être que nextcloud utilise ce fichier pour créer sa config initiale.

En tout cas, DATADIR n’est pas modifié directement dans config.php

Je n’ai pas plus d’information sur ce fichier, et il n’y en a pas trace dans la doc de nextcloud.

C’est pour ce genre de raison que le package nextcloud va être mis à jour globalement. Il recèle de nombreux secrets obscurs…

Le seul truc que je vois, c’est que dans le script d’update de l’application, le DATADIR est écrit en dur : https://github.com/YunoHost-Apps/nextcloud_ynh/blob/1a552c32a2ac317d80db49d19052b2aba1df1f64/scripts/upgrade#L94

Mais pas de trace d’un éventuel écrasement du fichier de config.

Effectivement, ça semble être indiqué en dur.
Le mieux serait quand même que ce soit un paramètre qu’on puisse régler dans l’app.

Bon, en tout cas merci pour vos réponses, je vérifierais mieux la prochaine fois avant de valider la migration…
J’ai plus qu’à attendre que tous mes fichiers effacés sur les postes clients se resynchronisent (et avec un raspberry, c’est long…)

Bonjour,

Je remonte ce sujet, car j’ai eu un problème du même genre (mais pas le même) lors de la mise à jour de nextcloud aujourd’hui.

j’ai déplacé il y a quelques temps mon répertoire data sur un autre disque, faute de place sur le principal. config.php. a donc été modifié en conséquence et tout c’est bien passé.

Mais lors de la mise à jour, si j’ai bien compris, le script tente de sauvegarder, puis de restaurer le chemin par défaut. Du coup échec de la mise à jour, mais applicaction cassée aussi.

   2017-09-29 09:59:43,484 INFO     yunohost.hook <lambda> - [16332.1] ++ sudo yunohost app setting nextcloud user_home --output-as plain --quiet
    2017-09-29 09:59:43,979 INFO     moulinette.actionsmap process - processing action [22629.1]: yunohost.app.setting
    2017-09-29 09:59:44,038 INFO     yunohost.hook <lambda> - [16332.1] + user_home=0
    2017-09-29 09:59:44,039 INFO     yunohost.hook <lambda> - [16332.1] + DESTDIR=/var/www/nextcloud
    2017-09-29 09:59:44,039 INFO     yunohost.hook <lambda> - [16332.1] + [[ ! -d /var/www/nextcloud ]]
    2017-09-29 09:59:44,039 INFO     yunohost.hook <lambda> - [16332.1] + DATADIR=/home/yunohost.app/nextcloud/data
    2017-09-29 09:59:44,039 INFO     yunohost.hook <lambda> - [16332.1] + [[ ! -d /home/yunohost.app/nextcloud/data ]]
    2017-09-29 09:59:44,043 INFO     yunohost.hook <lambda> - [16332.1] + ynh_die 'The data directory '\''/home/yunohost.app/nextcloud/data'\'' does not exist. The app is not correctly installed, you should remove it first.'
    2017-09-29 09:59:44,043 INFO     yunohost.hook <lambda> - [16332.1] + echo 'The data directory '\''/home/yunohost.app/nextcloud/data'\'' does not exist. The app is not correctly installed, you should remove it first.'
    2017-09-29 09:59:44,043 INFO     yunohost.hook <lambda> - [16332.1] + exit 1
    2017-09-29 09:59:44,043 INFO     yunohost.hook <lambda> - [16332.1] + EXIT_PROPERLY
    2017-09-29 09:59:44,044 INFO     yunohost.hook <lambda> - [16332.1] + exit_code=1
    2017-09-29 09:59:44,044 INFO     yunohost.hook <lambda> - [16332.1] + '[' 1 -eq 0 ']'
    2017-09-29 09:59:44,044 INFO     yunohost.hook <lambda> - [16332.1] + trap '' EXIT
    2017-09-29 09:59:44,044 INFO     yunohost.hook <lambda> - [16332.1] + set +eu
    2017-09-29 09:59:44,044 INFO     yunohost.hook <lambda> - [16332.1] + echo 'Upgrade failed.'
    2017-09-29 09:59:44,044 WARNING  yunohost.hook <lambda> - [16332.1] The data directory '/home/yunohost.app/nextcloud/data' does not exist. The app is not correctly installed, you should remove it first.
    2017-09-29 09:59:44,045 WARNING  yunohost.hook <lambda> - [16332.1] Upgrade failed.

J’ai résolu mon problème en ré-installant tout et en ré-important mes données sauvegardées.

Je voulais vous signaler le problème.
Je peux vous fournir les logs complets si besoin.

1 Like