Outils pour utilisateurs

Outils du site


software:applications:restic:000_restic

Sauvegarder avec restic

Principales caractéristiques de restic :

  • Agnostic : il existe sur les principaux systèmes d'exploitation : Linux, BSD, Mac et Windows ;
  • Flexible : il s'interface avec de nombreux systèmes de stockage auto-hébergés ou via les services en ligne ;
  • Simple : exécutable autonome sans dépendances de services ou de serveurs ;
  • Efficace : transfère uniquement les modifications ;
  • Sécurisé : intègre le chiffrement de bout en bout ;
  • Auditable : permet de vérifier que les fichiers seront restaurables au besoin ;
  • Open source et libre d'accès.

Démarrage rapide

Dans cet exemple, pour se familiariser avec les principales commandes, on utilise un dépôt local.

restic intègre une aide en ligne :

restic help

Initialiser un dépôt

restic conserve les sauvegardes au sein d'un dépôt. On commence donc par en créer un :

restic --repo /home/yoann/backups/restic-repo init

A la création du dépôt un mot de passe est demandé. Ce mot de passe est important, il sera nécessaire pour toute interaction avec le dépôt.

Pour ne pas avoir à systématiquement préciser le dépôt à utiliser via l'option --repo, on pourra définir une variable d'environnement :

export RESTIC_REPOSITORY=/home/yoann/backups/restic-repo/

Sauvegarder

On peut faire créer sa première sauvegarde :

restic backup ~/Documents

restic désigne snapshots vos sauvegardes. Pour lister les snapshots présents dans le dépot :

restic snapshots

On ajoute un nouveau fichier au dossier ~/Documents, puis on simule une sauvegarde (avec l' option --dry-run)

echo "Hello World!" > ~/Documents/aNewFile.txt
 
restic backup ~/Documents/ --dry-run

restic détecte bien le nouveau fichier et indique que seulement celui-ci sera copié. On peut faire une nouvelle sauvegarde :

restic backup ~/Documents

Lister/rechercher dans le dépot

Pour lister l'ensemble des fichiers présents dans le snapshot le plus récent :

restic ls latest

Pour ne lister que le contenu d'un sous-dossier :

restic ls latest /home/yoann/Documents/factures

Pour rechercher un fichier dans les sauvegardes :

restic find "wishlist*"
 
# rechercher uniquement dans le dernier snapshot
resstic find "wishlist*" latest
 
# rechercher uniquement dans les snapshot désignés
restic find "wishlist*" 5e1ea3aa 4d22f100

La recherche est sensible à la casse de caractères. Utiliser l'option --ignore-case pour changer le comportement par défaut.

restic find --ignore-case "contrat*" latest

Restaurer

Par défaut la restauration reconstruit le chemin complet dans le répertoire destination (cible) :

# le fichier et les dossiers parents sont recréés sur la destination (taget)
restic restore latest --include /home/yoann/Documents/wishlist.txt --target /tmp

Dans le cas présenté ci-dessus le dossier /tmp contiendra après exécution /tmp/home/yoann/Documents/wishlist.txt.

Pour ne pas reconstruire l'ensemble de l’arborescence et restaurer seulement le fichier dans le répertoire cible, utiliser la syntaxe :

restic restore latest:/home/yoann/Documents/ --include "wishlist.txt" --target /tmp

De la même manière, pour restaurer le dossier /home/yoann/Documents/factures et son contenu dans le répertoire cible /tmp :

restic restore latest:/home/yoann/Documents --include factures --target /tmp/

Pour restaurer l'ensemble du snapshot :

restic restore latest --target /tmp/

Lors de la restauration dans le répertoire cible, restic reconstruit l'arborescence complète jusqu'au fichier.

Supprimer un snapshot

La suppression s'effectue en deux temps via les commandes forget puis prune.

  • La commande forget supprime les références vers les données mais pas les données-elles même qui restent dans le dépôt. Cette opération est rapide.
  • L'opération prune conduit à la suppression des données non référencées présentes dans le dépôt. Cette opération est plus longue et pendant qu'elle s'effectue, le dépôt n'est pas accessible.

forget et prune ont également une option d'exécution à blanc via l'argument --dry-run

restic forget latest --dry-run
 
restic forget latest
 
restic prune --dry-run

Après la commande prune on peut vouloir vérifier l'intégrité du dépôt.

Maintenance du dépôt

Il est recommandé de vérifier périodiquement l'état du dépôt :

restic check
restic check --read-data

Références

software/applications/restic/000_restic.txt · Dernière modification : 2026/07/21 19:45 de yoann