Commandes de base

tar : Gestion des archives sous Linux

Table des matières

tar_gz



Introduction



La commande tar est une vielle commande UNIX (qui est donc disponible sous Linux) dont le nom veut dire "Tape ARchiver". Par défaut, cette commande va chercher à faire des acrions sur des lecteurs de bande.
Aujoud'hui, sur nos serveurs et nos systèmes bureautique, on va surtout maniipuler des fichiers .tar.

Sous Linux, on va pouvoir manipuler des archives (non compressées) qui ont l'extension .tar ou des archives compressées qui ont une double extension, comme .tar.gz (archive .tar compressée avec gzip .gz par exemple)

Syntaxe



La commande tar va être utilisée de cette façon :
Code BASH :
tar [options] [nom_de_l_archive] [fichiers_ou_repertoires]


On utilisera très souvent l'option -f pour signaler que les données à extraire ou à archiver sont à traiter dans un fichier.
Comme dit en introduction, tar va opérer par défaut sur des lecteurs de bande.

A propos des archives TAR compressées



Autant la commande tar historique POSIX ne gère pas la compression. Mais la version GNU de tar est capable d'appeler un logiciel de compression/décompression et donc traiter.

Dans les versions modernes de GNU tar, la détection de l'outil de décompression est faite sur l'extension du nom de fichier. Evidemment, les outils concernés doivent être disponlbles.

Contrairement à la décompression et au tests, la compression demandera d'expliciter l'algorithme via les options :
-z : gzip
-j : bzip2
-J : xz


Manipuler des archives TAR



Créer une archive



Pour créer une archive tar, on utilisera l'option -c (pour Create) :
Code BASH :
tar -cf archive.tar fichier1 fichier2 dossier1 *.txt

Le nom des fichiers est indiqué APRÈS le nom de l'archive. Des jockers sont utilisables.
L'option -v est utilisable aussi et va afficher sur la sortie standard (la console) les fichiers traités.

Poour compresser avec gzip, on ajoutera l'option -z :
Code BASH :
tar -czf archive.tar.gz fichier1 fichier2 


Si on traite un dossier complet, on a la possibilité d'exclure des fichiers via des motifs :
Code BASH :
tar -cvf archive.tar undossier --exclude="*.log"



Lister le contenu d'une archive



Pour lister le contenu d'une archive tar, on utilisera l'option -t (pour Tester) :
Code BASH :
tar -xvf archive.tar

L'option -v va permettre d'afficher plus de détails comme les permissions notamment.

Cette option est particulièrement utile si vous faites par exemple des archives pour faire des sauvegardes via des scripts.
Si l'archive n'est pas corrompue, le code retour est de 0.



Extraire des archives



Pour extraire une archive tar, on utilisera l'option -x (pour eXtract) :
Code BASH :
tar -xf archive.tar

L'option -v est utilisable aussi et va afficher sur la sortie standard (la console) les fichiers traités.

Les données qui sont extraites le sont dans le répertoire courant !
Donc si un fichier est présent dans l'archive ET dans le répertoire courant, il sera remplacé.


On pourra utiliser l'option -C pour extraire l'archive dans un autre répertoire :
Code BASH :
tar -xf archive.tar -C /tmp/undossier 


Lors de l'extraction, on pourra n'extraire que certains éléments de l'archive. On les spécifie en fin de commande :
Code BASH :
tar -xf archive.tar fichier1


Usages avancés de tar



Utiliser un outil de compression spécifique



Le format zstd est en phase montante. Cependant, tar ne dispose pas d'option pour compresser en zstd.
Si on veut spécifier un outil spécifique pour la compression, on utilisera l'option -I (i majuscule) :
Code BASH :
tar -cf archive.tar.zstd -I zstd fic1 fic2


Comme pour gzip, bzip2 et xz, la décompression peut se faire sans option particulière dans le cas de GNU tar.


Ajouter des fichiers à une archive



Si on a une archive existante, on pourra rajouter des fichiers dedans avec l'option -r :
Code BASH :
tar -rf archive.tar nouveau_fichier.txt

Le nom des fichiers est indiqué APRÈS le nom de l'archive. Des jockers sont utilisables.
L'option -v est utilisable aussi et va afficher sur la sortie standard (la console) les fichiers traités.

Cette fonctionalité n'est pas disponible avec une archive compressée

Cette page a été vue 62 fois