Accueil » Formations » Hygiène numérique » Sauvegardes 3-2-1 avec Restic » TP05 – Rétention, nettoyage et contrôle d’intégrité
← Sauvegardes 3-2-1 avec Restic

// travaux pratiques · Hygiène numérique

TP05 - Rétention, nettoyage et contrôle d’intégrité

  • TP 5 / 8
  • 6 étapes
  • ≈ 45 min
  • Accès libre

Objectif : définir une politique de rétention, la simuler puis l’appliquer avec forget et prune, et vérifier l’intégrité du dépôt avec check, y compris la relecture partielle des données.

Prérequis :

  • TP04 terminé (dépôt SFTP srv01 sur bkp01).
  • Session root sur srv01 avec RESTIC_REPOSITORY et RESTIC_PASSWORD_FILE pointant vers le dépôt SFTP.

Actions à réaliser :

  1. Générer un historique. Créez une dizaine d’instantanés en modifiant les données entre chaque passage :

    for i in $(seq 1 10); do
      echo "Version $i" > /srv/data/commun/journal.txt
      restic backup /srv/data --tag fichiers --quiet
    done
    restic snapshots --tag fichiers
  2. Simuler une politique de rétention.

    restic forget --tag fichiers --keep-last 3 --keep-daily 7 --dry-run

    Restic regroupe les instantanés par hôte et par chemins, puis affiche pour chaque groupe ceux qui sont conservés, avec la règle qui les retient, et ceux qui seraient supprimés. L’instantané du TP04 (chemins /etc et /srv/data) forme un groupe distinct de ceux qui ne contiennent que /srv/data. Les instantanés de la boucle ayant été créés le même jour, --keep-daily 7 ne retient que le plus récent de la journée, déjà couvert par --keep-last 3 : seuls les trois derniers sont gardés dans ce groupe.

  3. Appliquer la politique et libérer l’espace.

    restic forget --tag fichiers --keep-last 3 --keep-daily 7 --prune
    restic snapshots --tag fichiers

    Pendant le prune, le dépôt est verrouillé : en production, planifiez cette opération hors de la fenêtre de sauvegarde.

  4. Contrôler la structure du dépôt.

    restic check
  5. Relire une partie des données.

    restic check --read-data-subset=1/5
    restic check --read-data-subset=20%

    En lançant chaque semaine un sous-ensemble différent (1/5, 2/5… 5/5), toutes les données sont relues en cinq semaines sans surcharger le réseau.

  6. Simuler une corruption sur un dépôt de test. Pour ne pas abîmer le dépôt distant utilisé dans la suite, travaillez sur le dépôt local du TP02. Altérez volontairement un fichier de données :

    f=$(find /srv/restic-local/data -type f | head -n 1); echo "$f"
    printf "XXXX" | dd of="$f" bs=1 seek=100 conv=notrunc
    restic -r /srv/restic-local --password-file /etc/restic/local.pass check --read-data

    La vérification signale le fichier pack endommagé : c’est précisément ce type de corruption silencieuse du support que --read-data détecte, alors qu’un simple check peut ne rien voir. Ce dépôt local n’étant plus utilisé, supprimez-le ensuite : rm -rf /srv/restic-local.

Vérification / résultat attendu :

  • Après forget --prune, seuls les instantanés couverts par la politique restent listés.
  • restic check se termine sans erreur sur le dépôt distant, et restic check --read-data détecte la corruption volontaire du dépôt local.
  • Vous savez expliquer la différence entre forget (supprimer des instantanés) et prune (libérer les données inutilisées).

Pour aller plus loin : rédigez la politique de rétention de votre entreprise (par exemple --keep-daily 7 --keep-weekly 4 --keep-monthly 12 --keep-yearly 3) et faites-la valider par la direction et, si des données personnelles sont concernées, par le DPO : conserver trop longtemps est aussi un risque.

// formation sur mesure

Former votre équipe sur ce sujet ?

Azur Secure anime des sessions intra-entreprise, à distance ou dans vos locaux sur la Côte d'Azur, adaptées au niveau de vos équipes.

Demander un programme
Défiler vers le haut