TAR: Sauvegarde incrémentielle – Linux

TAR est un utilitaire de sauvegarde Linux conçu pour sauvegarder et restaurer des fichiers à partir d’une archive tar. Les options de la commande détermine l’action à exécuter:

  • -c: Crée une nouvelle archive,
  • -f: Indique le nom du fichier de sauvegarde,
  • -z: Compresse l’archive au format gzip,
  • -g: Gère les sauvegardes incrémentielles à l’aide du fichier donné,
  • –one-file-system: reste dans la même partition que celle de l’archive créée,
  • –exclude=MOTIF: Exclut de l’archive les fichiers correspondants au motif.

Faire une sauvegarde complète d’un système peut prendre pas mal de temps. Et est-il vraiment nécessaire de sauvegarder des fichiers déjà présents dans une sauvegarde et qui n’ont pas changés?

Sauvegarde avec tar, gz: compressée
Sauvegarde avec tar, gz: compressée

La sauvegarde incrémentielle crée d’abord une sauvegarde complète puis, lors des sauvegardes suivantes, n’incorpore que les fichiers nouvellement créés ou changés. Ainsi, le temps de traitement en est considérablement réduit.

Création de sauvegardes:

Pour tester cela, on crée un dossier ~/backup: et l’on y copie deux fichiers file1.txt et file2.txt:

Le dossier contient deux fichiers file1.txt et file2.txt (remplis avec la redirection des commandes ls et man ls).

On fait alors une sauvegarde complète du repértoire ~/backup:

La commande a créé un fichier backup-0.tar.gz qui contient les deux fichiers file1.txt et file2.txt ainsi que le fichier qui liste les fichiers de la sauvegarde files.list.

On liste le contenu de la sauvegarde backup-0.tar.gz:

Maintenant, ajoutons un nouveau fichier file3.txt:

Effectuons une nouvelle sauvegarde en excluant les fichiers commençant par backup (ce seront nos divers fichiers de sauvegarde incrémentielle).:

La sauvegarde n’incorpore que le nouveau fichier file3.txt.

La liste des fichiers du répertoire est maintenant:

Le contenu de la sauvegarde backup-1.tar.gz est:

Modifions le fichier file1.txt et effaçons le fichier file2.txt:

Le contenu du répertoire est maintenant:

Faisons une nouvelle sauvegarde dans backup-2.tar.gz:

Restauration de sauvegarde:

Effaçons les fichiers file1.txt, file2.txt, file3.txt.

On désire restaurer l’archive à l’étape 1: on restaure l’archive complète backup-0.tar.gz, puis l’archive incrémentielle backup-1.tar.gz: en se plaçant à la racine / puisque les chemins ont été donnés en absolu:

Dans le cas de 5 archives, une complète puis 4 incrémentielles, pour restaurer l’archive 3, il faut restaurer les archives 1 (la complète) puis l’archive 2, et l’archive 3, dans cet ordre.

Note: Certaines versions de TAR plantent si l’on écrit les options avec un -. Dans ce cas, enlever le -, comme dans tar zcvf.

Et hop, voilà présenté le processus d’une sauvegarde incrémentielle. Penser à refaire régulièrement une sauvegarde complète pour reprendre le processus du début.

Soumettre un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *