Outils pour utilisateurs

Outils du site


informatique:yunohost:sauvegarder_yunohost

Ceci est une ancienne révision du document !


Sauvegarder Yunohost

À l'aide des applications Borg

Une des solution pour sauvegarder votre serveur consiste à utiliser les applications borg

Cette solution consiste à sauvegarder son serveur yunohost sur un autre serveur yunohost. Il y a donc deux applications, une application “client” ( Borg Backup App ) et une application “serveur” ( Borg Server ).

Borg Server a besoin d'un clé publique générée à l'installation de Borg Backup App. On commence donc par installer l'application cliente.

Dans mon exemple, je vais sauvegarder le serveur quercus sur fagus.

Installation de Borg Backup App

J'installe sur mon serveur quercus l'application cliente, Borg Backup App.

J'ai besoin :

  • De choisir un libellé (Optionnel, pratique surtout si on veut mettre en place plusieurs backups)
  • De configurer l'url du serveur ( Ici, l'URL principale de fagus est “artanux.be”.)
  • De choisir le nom d'utilisateur qui sera utilisé pour se connecter au serveur distant. Je choisis donc le nom du serveur, quercus.
  • Choisir une phrase de passe pour chiffrer les sauvegardes (important!)
  • Choisir enfin ce que l'on souhaite sauvegarder et à quelle fréquence

Une paire de clé ssh est générée à l'installation de l'application.

root@quercus:~# ls -al /root/.ssh/
total 16
drwx------ 2 root root 4096 Aug 12 19:37 .
drwx------ 4 root root 4096 Aug 11 07:23 ..
-rw------- 1 root root    0 Aug  8 09:15 authorized_keys
-rw------- 1 root root  411 Aug 12 19:37 id_borg_ed25519
-rw-r--r-- 1 root root  101 Aug 12 19:37 id_borg_ed25519.pub
 
root@quercus:~# cat /root/.ssh/id_borg_ed25519.pub 
ssh-ed25519 AAAA(...)

Cette clé est également envoyée par mail à l'administrateur du serveur.

Installation de Borg Server

Une fois la partie cliente installée, passons à l'installation de la partie serveur, l'application Borg Server.

Il faudra configurer :

  • Un libellé, surtout pratique si on héberge les sauvegardes de plusieurs serveurs
  • De configurer le nom d'utilisateur choisi à l'installation de la partie cliente (ici: quercus)
  • De configurer la clé ssh publique générée à l'installation de la partie cliente
  • De choisir un quota de stockage, pour ne pas risquer de saturer votre serveur

L'application crée un utilisateur et place la clé ssh publique dans authorized_keys, avec une limitation sur la commande pouvant être utilisée :

root@artanux:/home# cat /home/quercus/.ssh/authorized_keys 
command="borg serve --storage-quota 500G --restrict-to-repository /home/quercus/backup",no-pty,no-agent-forwarding,no-port-forwarding,no-X11-forwarding,no-user-rc ssh-ed25519 AAAA(...)

Lancer manuellement le backup

Sur le serveur à sauvegarder, où on a installé l'application Borg Backup App, on peut manuellement lancer une sauvegarde en démarrant le service :

# systemctl start borg

En cas de problème

Quelques pistes si ça ne fonctionne pas :

  • Vérifier les logs
admin@simonlefort:~$ ls -al /var/log/backup*
-rw-r--r-- 1 root root 18317 Aug 13 00:01 /var/log/backup_borg.err
-rw-r--r-- 1 root root     0 Aug 12 20:53 /var/log/backup_borg.log

Une erreur possible :

Remote: 
Remote: 
Remote:   Server	: 465812
Remote:   IPv4		: WW.XX.YY.ZZ
Remote:   IPv6		: WWWW:XXXX:YYYY:ZZZZ
Remote:   Hostname	: machin.com
Remote: 
Remote: bash: /usr/local/bin/borg: Permission denied
Connection closed by remote host. Is borg working on the server?
  • Vérifier les erreurs données au lancement du service
# systemctl status --lines 100 borg 
● borg.service - Run backup borg
   Loaded: loaded (/etc/systemd/system/borg.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Thu 2020-08-13 00:01:16 UTC; 9h ago
 Main PID: 31654 (code=exited, status=1/FAILURE)
 
Aug 13 00:00:03 simonlefort.be systemd[1]: Starting Run backup borg...
Aug 13 00:00:05 simonlefort.be backup-with-borg[31654]: ls: cannot access '/etc/yunohost/hooks.d/backup/':
Aug 13 00:00:07 simonlefort.be slapcat[31880]: DIGEST-MD5 common mech free
  • Vérifier qu'on a pas fait d'erreur dans les clés SSH (mauvais copier/coller, etc…)
informatique/yunohost/sauvegarder_yunohost.1597310422.txt.gz · Dernière modification : 2020/08/13 09:20 de simon