Vorta for Borg Backup

Ce matin, pris d’une inspiration subite, j’ai décidé de faire une nouvelle sauvegarde de mon dossier Home. Ce dossier est déjà synchronisé grâce à Nextcloud sur un serveur distant, ainsi que sur un autre HD du PC, grâce à Timeshift.

Mais lorsque j’avais remis en service mon vieil odroid-hc2, l’idée était de l’utiliser comme serveur de backup, avec son HD de 2 To disponible. J’avais bien redirigé les tâches rsync du serveur OMV (NAS) sur ce serveur (contenu Plex et Calibre), et puis j’étais passé à autre chose. J’avais prévu des sauvegardes à partir du PC, sans aller plus loin.

Cette fois, j’ai utilisé Vorta, une interface graphique pour Borg, un logiciel de backup qui a une très bonne réputation (sauvegarde chiffrées, sécurisées, compressées). L’opération a été facilité par cet article sur le FLOZz’ Blog, que j’ai adapté à mon contexte et à ce que je voulais faire, puisque je bénéficiais déjà d’une connexion SSH entre mon PC et le serveur Odroid, ainsi que d’une clef de login. Une fois le dépôt Borg créé, le reste est simplissime.

Voilà le détail des opérations, ça m’a permis un petit refresh sur ssh et les clefs privées et publiques…

Sur le serveur Odroid

Cette machine tourne donc Ubuntu. Le HD externe de 2 To est monté sur le dossier /satadisk, et comprend deux sous-dossiers, un pour les sauvegardes en provenance du NAS (déjà utilisé), un autre pour celles en provenance du PC (pas encore utilisé) :

$ cd /satadisk
$ tree --du -h --sort=size . | sed -E "/^[^[]{8,}\[/d"
[192G]  .
├── [191G]  NAS-N150
└── [  0G]  PC-RYZEN

On commence par installer borgbackup :

$ sudo apt install borgbackup

Je vais aussi créer un utilisateur dédié pour ces backups, ce sera plus clair.

$ sudo adduser borg --home /satadisk/PC-RYZEN

On va aussi lui copier la clef publique SSH du PC déjà créée. Pour ce faire, sur le PC, on copie le contenu du fichier /home/pascal/.shh/id_ed25519.pub dans un nouveau fichier créé sur la machine Odroid dans /satadisk/PC-RYZEN/.ssh/authorized_key qui doit donc ressembler à ceci :

borg@odroid:~$ cat .ssh/authorized_keys 
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAp2Bz0e1GjYGMvLyw4WxXTGHN/Pla9CmJbApNnrlESM pascal@pascal-eos

Et on teste à partir du PC que la commande $ ssh borg@192.168.1.XX (soit la machine odroid) fonctionne bien. Dans la foulée, je crée un dossier pascal-eos-home-backup à partir de la home de l’utilisateur borg (pour le dépôt de Borg):

borg@odroid:~$ pwd
/satadisk/PC-RYZEN
borg@odroid:~$ mkdir pascal-eos-home-backup

Voilà, on a donc notre utilisateur borg qui peut se connecter sans avoir à saisir de mot de passe sur la machine odroid à partir du PC.

Sur le PC

On commence donc par installer Vorta, qui se chargera d’installer Borg en tant que dépendance :

$ sudo pacman -S vorta

On le lance, et on crée le fameux dépôt, selon la terminologie de Borg. On rentre le dépôt sous la forme ssh://<USER>@<MACHINE><PATH>, ce qui donne :

$ borg init --encryption=repokey ssh://borg@192.168.1.XX/satadisk/PC-RYZEN/pascal-eos-home-backup

Borg va vous demander une « passphrase », choisissez un mot de passe et notez le précieusement. C’est ce qui va permettre à Borg de faire des sauvegardes chiffrées et donc sécurisées.

Il ne reste plus qu’à lancer Vorta, et lui indiquer de dépôt comme destination : on clique sur le + à droite, on choisit « dépôt existant », et on rentre le dépôt sous la même forme, en indiquant le mot de passe (la passphrase demandée lors de la création du dépôt) :

Et voilà, le plus dur est fait. À noter que j’ai laissé l’option Clé SSH : Choisir automatiquement une clef SHH (par défaut), puisque comme expliqué au début de l’article, j’ai déjà implémenté un clef SSH entre les deux machines.

Sur l’onglet Sources, il ne reste plus qu’à définir la source du backup que l’on souhaite effectuer (/home/pascal dans mon cas), gérer les dossiers à exclure (temp, cache, etc…) :

Et sur l’onglet Planification, la périodicité souhaitée pour les sauvegardes :

Et voilà, il ne reste plus qu’à lancer la sauvegarde :

Et la taille occupée sur le disque :

$ cd /satadisk
$ tree --du -h --sort=size . | sed -E "/^[^[]{8,}\[/d"
[208G]  .
├── [191G]  NAS-N150
└── [ 16G]  PC-RYZEN

Conclusion

Franchement, cela a été très facile à mettre en place, et Vorta avec son interface graphique rend l’utilisation de Borg très facile.

On peut bien sûr définir d’autres sauvegardes, ou d’autres dépôts dans un autre profil selon l’organisation souhaitée de ,os précieuses sauvegardes ! 😎

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *