====== La commande tar ====== Cette page est en cours de rédaction ===== Présentation ===== tar (//tape archiver//, archiveur d'enregistrements) est un outil très puissant pour la manipulation d'archives sous les systèmes Unix et les dérivés dont Linux. Il ne compresse pas les fichiers mais les concatène au sein d'une seule et même archive. La majorité des programmes sous Linux utilisent ce système d'archivage. ===== Installation ===== Le programme tar est disponible par défaut sous Ubuntu. Il fait parti de l'installation minimale. ===== Utillisation en archivage simple ===== ==== Utilisation tar seul : concaténation de fichiers ==== Création d'une archive, archivage de plusieurs fichiers : tar -cvf archive.tar fichierarchive1 fichierarchive2... De même pour un dossier : tar -cvf archivedossier.tar dossier/ Pour l'extraction : tar -xvf archive.tar ===== Utilisation avec compression ===== Il est possible d'utiliser tar pour l'archivage et la compression de fichiers. Dans ce cas, il fait appel à d'autres utilitaires comme Bzip2 et Gzip. L'archivage se fait alors en deux temps, d'abord la concaténation des fichiers en un seul puis la compression du tout. ==== Compression avec gzip, l'option z ==== Création tar -zcvf votre_archive.tar.gz votre_dossier/ Extraction tar -zxvf votre_archive.tar.gz ==== Compression avec Bzip2, l'option j ==== Création tar -jcvf votre_archive.tar.bz2 votre_dossier/ Extraction tar -jxvf votre_archive.tar.bz2 votre_dossier/ ===== Utillisation en archivage incrémentiel ===== ==== Pourquoi utiliser un archivage incrémentiel ? ==== La taille des archives et leur stockage peut très vite poser problème. Voici un cas d'utilisation illustrant l'utilité de cet archivage. Vous désirez sauvegarder le /home (données des utilisateurs) toutes les semaines sur un second disque dur, tout en gardant les données antérieures. Vous avez en tout 50 Go de données et le second disque dur fait 500Go. 10% de ces données changent toutes les semaines (5Go). Dans le cas d'une sauvegarde complète, chaque archive fait 50Go, votre disque serait rempli en deux mois de temps. Nous remarquons que si 10% de ces données changent toutes les semaines, 90% sont identiques et ne nécessites pas d'être sauvegardées à chaque fois. Il nous faut donc sauvegarder uniquement les nouvelles données en utilisant la sauvegarde incrémentielle. La premières sauvegarde est complète, la suivante copie uniquement les nouveaux fichiers et ainsi de suite. Vous gardez ainsi chaque sauvegarde dans l'état à différentes dates. ==== Utilisation ==== Créer la première sauvegarde (sauvegarde complète) : tar --create --file=archive.1.tar --listed-incremental=/save/save.list /home Seconde sauvegarde (incrémentée avec uniquement les fichiers ayant changés) : tar --create --file=archive.2.tar --listed-incremental=/save/save.list /home Restauration : tar --extract --listed-incremental=/dev/null --file archive.1.tar tar --extract --listed-incremental=/dev/null --file archive.2.tar Utiliser la date pour incrémenter le numéro : tar --create --file=/save/archive.`date --rfc-3339=seconds`.tar --listed-incremental=/save/archive.list /home ===== Liens ===== * [[http://www.gnu.org/software/tar/tar.html|Site officiel de GNU Tar]] * [[http://rd2b-log.blogspot.com/2008/08/linux-utiliser-tar-pour-la-sauvegarde.html|Article expliquant la sauvegarde incrémentielle]] ---- //Contributeurs : [[utilisateurs:guerillero62|guerillero62]].//