// 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
srv01surbkp01). - Session root sur
srv01avecRESTIC_REPOSITORYetRESTIC_PASSWORD_FILEpointant vers le dépôt SFTP.
Actions à réaliser :
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 fichiersSimuler une politique de rétention.
restic forget --tag fichiers --keep-last 3 --keep-daily 7 --dry-runRestic 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
/etcet/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 7ne 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.Appliquer la politique et libérer l’espace.
restic forget --tag fichiers --keep-last 3 --keep-daily 7 --prune restic snapshots --tag fichiersPendant le
prune, le dépôt est verrouillé : en production, planifiez cette opération hors de la fenêtre de sauvegarde.Contrôler la structure du dépôt.
restic checkRelire 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.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-dataLa vérification signale le fichier pack endommagé : c’est précisément ce type de corruption silencieuse du support que
--read-datadétecte, alors qu’un simplecheckpeut 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 checkse termine sans erreur sur le dépôt distant, etrestic check --read-datadétecte la corruption volontaire du dépôt local.- Vous savez expliquer la différence entre
forget(supprimer des instantanés) etprune(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.
