Sauvegarder ses données avec Restic
Restic

Sauvegarder ses données avec Restic

Table des matières

⚡Caractéristiques

Restic est un programme de sauvegarde moderne qui peut sauvegarder vos fichiers :

  • Depuis Linux, BSD, Mac et Windows.
  • À de nombreux types de stockage différents, y compris les services auto-hébergés et en ligne.
  • Facilement, étant un exécutable unique que vous pouvez exécuter sans serveur ni configuration complexe.
  • Efficacement, en transférant uniquement les parties qui ont réellement changé dans les fichiers que vous sauvegardez.
  • En toute sécurité, grâce à une utilisation prudente de la cryptographie à chaque étape du processus.
  • De manière vérifiable, vous permettant de vous assurer que vos fichiers peuvent être restaurés en cas de besoin.
  • Librement - restic est entièrement gratuit et entièrement open source.

Si vous avez suivi les deux tutoriels:

Préparer son disque sous Debian
Voyons comment initialiser un disque, supprimer une partition, créer une partition et formater une partition en ext4.

&

Monter un disque dur sous Linux
Comment monter un disque sous Linux et faire en sorte qu’il soit monté automatiquement au démarrage du serveur?

Vous avez donc un disque prêt à l'emploi et totalement vierge. Dans mon exemple j'ai choisi de monter le disque dans /mnt/backup.

Ce tutoriel a pour but d'inciter à faire des sauvegardes de ses données, il sera, je l'espère, le plus simple possible car avec ce genre de logiciel, il y a toujours moyen d'aller très loin dans les paramètres. Vous pouvez toujours creuser une fois que vous avez la main.

L'essentiel est de se mettre à sauver ses données.

Sachez également que ce sont des sauvegardes incrémentielles, c'est à dire qui ne copie que les données modifiées depuis la dernière sauvegarde.


Installer Restic

La première chose à faire sera d'installer Restic:

sudo apt install restic 

Créer un dépôt pour Restic

Maintenant nous allons créer un dépôt pour Restic ou il pourra stocker vos sauvegardes:

restic init --repo /mnt/backup/repo

Ce qui donne:


Sauvegarder ses données

Une petite précision avant de commencer.

Il faut savoir que Restic restaure les données à partir du dossier où vous êtes, d'où vous lancez la commande de restauration.

Donc, si vous indiquez dans la commande pour créer un backup, le chemin complet du dossier à sauver, par exemple: /srv/appdata, il faudra vous rendre à la racine du serveur / pour lancer la commande de restauration si non vous allez restaurer /srv/appdata dans /srv. Ce qui va provoquer un petit bordel structurel => /srv/srv/appdata. Ce que ne nous souhaitons pas, évidemment.

Par contre si vous indiquez juste le dossier contenant le dossier à sauvegarder, il faudra revenir à cet endroit. Donc si je veux sauver le dossier appdata qui se trouve dans /srv, il faudra que je revienne dans /srv pour lancer la commande de restauration.

Dans l'exemple qui suit je vais mettre le dossier complet.

Pour sauvegarder vos données, adaptez cette commande à vos besoins:

sudo restic -r /mnt/backup/repo --verbose backup /srv/appdata

J'utilise sudo car les données que je veux sauver ne sont pas dans le /home/user.

  • restic => on fait appel à Restic.
  • /mnt/backup/repo => emplacement du dépôt créé.
  • --verbose => vous obtiendrez un affichage détaillé de ce que Restic fait.
  • backup => on indique à Restic que l'on veut faire un backup.
  • /srv/appdata => le dossier qui contient les données que l'on veut sauver.

Ce qui donne:


Tester ses sauvegardes

Il est important de vérifier que vos sauvegardes pourront-être exploitées ultérieurement et de vous assurer de leur bonne santé.

Cette simple commande va faire que Restic vérifie vos sauvegardes:

sudo restic -r /mnt/backup/repo check

Lister vos sauvegardes

Lister vos sauvegardes pourra s'avérer utile pour restaurer et ou supprimer une sauvegarde:

sudo restic -r /mnt/backup/repo snapshots

Ce qui donne:

L'ID est important pour la suite du tutoriel.


Restaurer un backup

Ceci est la commande qui va restaurer le dernier backup effectué:

sudo restic -r /mnt/backup/repo/ restore latest --target /

Comme vous pouvez le voir dans ce screenshot, j'ai volontairement effacé le dossier appdata pour le restaurer ensuite:

Mais vous pourriez tout aussi bien vouloir restaurer un backup précis.

Il suffira de remplacer ID par l'ID de le backup que vous désirez restaurer:

sudo restic -r /mnt/backup/repo ID latest --target /

Supprimer un backup

Après avoir identifié l'ID de lu backup que vous voulez supprimer, il suffira de faire cette commande:

sudo restic -r /mnt/backup/repo forget ID

Remplacez ID par l'ID du backup à supprimer.


Récupérer la place

Le fait de supprimer un backup ne supprime pas les chunks qui le compose. Donc supprimer un backup ne vous fera pas gagner de place.

Pour récupérer la place d'un backup supprimé faites cette commande:

sudo restic -r /mnt/backup/repo prune

Ce qui donne:


Conclusion

Si vous souhaitez aller plus loin je vous invite à consulter le site de Restic, en anglais:

restic · Backups done right!

zarev

🐧 Passionné de self-hosting, je partage ce que je connais et me nourris des connaissances des bonnes âmes qui partagent avec moi. Soutenons l'utilisation des apps open source et leurs développeurs.