[Nextcloud] Restauration à partir d'une sauvegarde backup_core_only | How to restore with a backup_core_only backup?

Bonjour,

Je suis un train de restaurer mon installation de Yunohost à partir d’une sauvegarde crée via yunohost backup create, Nextcloud était configuré pour ne pas sauver le dossier data (backup_core_only).

Je pensais qu’en restaurant l’application, Nextcloud fonctionnerait et le dossier data serait réactualisé via mes appareils synchronisés (j’ai quand même fait une sauvegarde des données sur mes appareils au cas où).

Mais après réinstallation, j’ai, sur l’interface web :

Your data directory is invalid
Ensure there is a file called ".ocdata" in the root of the data directory.

Je n’ai pas trouvé de procédure sur comment restaurer Nextcloud à partir de ce type de sauvegarde. Est-ce que ça aurait du marcher comme ça ? Est-ce qu’il y a des commandes précises à faire ?


Hello,

I’m restoring Yunohost from a backup made with yunohost backup create, Nextcloud was set to not backup the data directory (backup_core_only).

I thought that with this settings, Nextcloud would update the data directory with the synchronisations from my devices (on which I have nevertheless backed up the files).

But after reinstalling Nextcloud from the backup, the web interface says :

Your data directory is invalid
Ensure there is a file called ".ocdata" in the root of the data directory.

I haven’t found any guide on how to restore Nextcloud from this kind of backup. Should it work this way? Have I missed some commands?

1 Like

Bonjour,

La sauvegarde avec l’option backup_core_only est surtout une possibilité “technique” qui limite le temps de backup préalable aux mises à jour de l’application. Je ne suis pas surpris que Nextcloud n’accepte pas de se lancer sans le répertoire /home/yunohost.app/nextcloud
Si tu avais une sauvegarde de fichiers en complément de ta sauvegarde partielle, je te recommande de restaurer ce répertoire.
A défaut, je ne sais pas trop comment t’aider… Tu pourrais essayer une installation de nextcloud pour récupérer le répertoire ainsi créé pour l’utiliser avec ta sauvegarde, mais le tout sera tout de même probablement incohérent (la base de données référençant des fichiers inexistants)…

Merci pour l’éclaircissement concernant backup_core_only. J’avais mis ça à l’époque parce que les sauvegardes de yunohost étaient énormes du coup.

J’ai une copie du dossier data, je teste en le copiant dans /home/yunohost.app/nextcloud/. Je voulais vérifier la possibilité d’une restauration « propre » et complète avec seulement la sauvegarde Yunohost. Mais du coup je veillerai à sauver le dossier data aussi alors (avec un léger regret que la possibilité de sauver sans tous ces fichiers déjà dupliqués partout ne soit pas possible).

Bon, donc, j’ai fait :
. Désinstaller Nextcloud : yunohost app remove nextcloud
. Supprimer le dossier /home/yunohost.app/nextcloud/data
. Restaurer Nextcloud : yunohost backup restore [sauvegarde] --apps nextcloud --ignore-system
. Copier le dossier data que j’avais ailleurs : sudo scp -r […]/home/yunohost.app/nextcloud/data root@brique:/home/yunohost.app/nextcloud/

Avec ça, quand je me connecte à l’interface web, la page met littéralement 15 min. à se charger partiellement : 87 requêtes 1,36 Mo / 1,42 Mo transférés Terminé en : 14,96 min
Avec une erreur 502 Bad Gateway pour /theme quelque chose.

J’ai cherché un peu et j’ai du coup fait redémarrer nginx (sans changement) et fait quelques commandes occ qui me semblaient inoffensives (maintenance:repair, files:scan…) pour finalement avoir ça quand j’essaie de me connecter (toujours via web) :

Internal Server Error

The server encountered an internal error and was unable to complete your request.
Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report.
More details can be found in the server log.

Je trouve pas les logs, var/log/nextcloud/ est vide…
(Je sais jamais où trouver les logs dont je ne comprends pas encore bien la logique cela dit.)

À savoir que le files:scan me donne : Home storage for user [utilisateur] not writable.
Mais que chown -R nextcloud /home/yunohost.app/nextcloud/data et chmod 755 -R /home/yunohost.app/nextcloud/data n’y changent rien.

[À savoir aussi que j’avais fait des tests hier sans copier le dossier data et que en faisant un touch .ocdata dans /home/yunohost.app/nextcloud/data j’avais à peu près les mêmes symptômes. La page mettait aussi 15 minutes pour se charger mais j’avais beaucoup de « bad permissions » au lieu du « bad gateway ». (Mais donc depuis j’ai supprimé l’app et le dossier data donc les manipulations d’hier ne devraient pas avoir perturbées celles d’aujourd’hui, c’est juste pour la curiosité.)]

Je me demande si je n’aurais pas dû faire un scp -p -r ou plutôt employer rsync pour la copie (rsync -arv ?).
Là je tente la mise à jour de Nextcloud (de 12 à 13), mais j’y crois pas trop. Je m’attends à le supprimer pour réessayer autre chose.

Ah ben j’ai rien dit, après la mise à jour de Nextcloud, ça fonctionne.

Je vais pas me plaindre, mais du coup je suis un peu perplexe (s’il n’y avait pas eu de mise à jour disponible, je sais pas ce que j’aurais fait).

P.S. Juste que je n’ai plus les applications dans Nextcloud. Si mes souvenirs sont bons, une mise à jour les désactive, mais ne les désinstalle pas, hors elles ne sont plus dans la liste de mes applications. Mais en les réinstallant, ça fonctionne (et leur ancien contenu est là).

P.S. bis : Les dates des modifications des fichiers ont effectivement été modifiée par le transfert…

OK, donc j’ai pris le temps d’essayer autrement pour voir comment faire ça proprement.
J’ai à nouveau désinstallé Nextcloud et supprimé le dossier /home/yunohost.app/nextcloud/data, puis j’ai restauré Nextcloud et copié le dossier data via rsync -arv :

  • yunohost backup restore [sauvegarde] --apps nextcloud --ignore-system
  • En parallèle : sudo rsync -arv /chemin/vers/ancien/data root@brique:/home/yunohost.app/nextcloud/

Une fois l’application restaurée (± 1h chez moi), le rsync entretemps est fini (± 15 min) et Nextcloud fonctionne sans problème dans l’état et la version dans laquelle il avait été sauvé (la 12 ici). Les applications sont directement là et utilisables.

Donc je dois soit réactiver la sauvegarde de mon dossier data via yunohost backup create[1], soit veiller à avoir toujours une sauvegarde de mon dossier data ailleurs…

Merci JimboJoe pour ta précision qui m’a évité de chercher à faire un truc impossible. :wink:


[1] J’ai trouvé ça comme méthode, j’espère que c’est la bonne (je vais pas pouvoir tester tout de suite la sauvegarde) :
. soit en ajoutant backup_core_only: '0' dans le fichier /etc/yunohost/apps/nextcloud/settings.yml
. soit en exécutant yunohost app setting nextcloud backup_core_only -v 0

(Ajout : ces méthodes ne fonctionnent pas chez moi… je fais des sauvegardes du dossier data via rsync -arv [etc] en attendant.)