Table of Contents

Borg & Borgmatic

https://www.borgbackup.org/ est un outil de sauvegarde permettant de gérer correctement un historique des différentes versions d'un ensemble de données.

https://torsion.org/borgmatic/ constitue un wrapper autour de BorgBackup, afin de simplifier la configuration des dépôts, de la rotation des sauvegardes, mais aussi de l'interface en général. En plus de sa simplicité de configuration, Borgmatic s'interface très bien avec https://healthchecks.io/ et https://ntfy.sh. Voir ici pour les notifications.

Ce sujet fait le lien avec les notions de Sauvegarder et restaurer vos données.

Configuration

Espace de stockage

Cas pratique

$ borg info hufflepuff.borg

Repository ID: ...
Location: ...
Encrypted: Yes
Cache: ...
Security dir: ...
------------------------------------------------------------------------------
                       Original size      Compressed size    Deduplicated size
All archives:               15.10 TB             14.92 TB            625.24 GB

                       Unique chunks         Total chunks
Chunk index:                  320878              7417507

Concrètement, mon dépôt contient :

Si on creuse un tout petit peu, on peut voir que sur ces 15TB de données, je dispose de 18 sauvegardes distinctes, dont la plus ancienne remonte au 29 août 2022 :

$ borg list hufflepuff.borg

Hufflepuff-2022-08-29T08:52:10.433817 Mon, 2022-08-29 08:52:11 [...]
...
Hufflepuff-2023-10-29T19:27:26.676654 Sun, 2023-10-29 19:27:27 [...]

Restic (autre solution)

Restic semble avoir deux gros avantages sur borg :

1. Il est (réellement) cross-platform et ne nécessite pas d'installer un sombre WSL pour profiter de ses fonctionnalités, puisque le drop d'un binaire se suffit à lui-même 2. Il est autonomie : une fois installé, il a la capacité de se mettre lui-même à jour (- ce qui peut avoir ses avantages, comme ses désavantages) 3. Il semble plus rapide - ce qui devrait être prouvé par une utilisation plus intenstive. 4. Il semble plus verbeux - ou en tout cas, mieux structuré.

Au niveau des désavantages, je vois surtout qu'il n'a pas `borgmatic` pour lui (ou en tout cas une configuration relativement simple). Update fin 2023 : Il semble y avoir un projet intitulé https://github.com/cupcakearmy/autorestic qui jouerait ce rôle.

time restic -r sftp:<user>@<host>:nyx.restic\ 
--verbose backup /home/ --iexclude *Vidéos*\
--iexclude *Téléchargements*

Le temps d'envoi initial est évidemment proportionnel à la quantité de données à envoyer. Après cela, j'ai compté 22 secondes pour une re-synchronisation, là où `borg` en demande un peu moins de 40 secondes. Sur un dépôt relativement petit, cette différence est minime, et doit être confirmée sur des volumes de données plus grand.

Ressources