Tar

De Wiki de Geonov
Révision datée du 23 avril 2021 à 09:09 par Mathieu Ambrosy (discussion | contributions) (→‎Décompression d'un tar =)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

GNU tar ("tape archiver") est l'implémentation GNU/Linux du programme d'archivage Unix tar.

Un fichier tar (tarball) est une archive non compressée de fichiers que l'on associe généralement à un logiciel de compression comme :

  • bzip2 (algorithme de compression bzip2)
  • gzip (algorithme de compression Deflate)
  • xz (algorithme de compression LZMA)

Généralement on peut affirmer que gzip est le plus rapide mais le moins compressé et xz le moins rapide mais le plus compressé.

1 Compression d'un tar

On ajoute les options suivantes à la ligne de commande tar :

  • –c (create) pour créer une archive
  • -v (verbose) pour afficher un retour à l'utilisateur
  • –f (file) pour spécifier le nom du fichier d'archive destination

Et on ajoute l'une des options suivantes pour spécifier la méthode de compression :

  • -j : bzip2
  • -z : gzip
  • -J : xz

Ensuite on indique le nom de l'archive à créer et le chemin à archiver et compresser.

Exemple pour compresser le répertoire /tmp en gzip :

tar -cvfz archive.tar.gz /tmp

1.1 Exclusion

On peut également ajouter un masque d'exclusion avec "--exclude=". Par exemple, pour exclure les fichiers *.log :

tar -cvfz archive.tar.gz /tmp --exclude=*.log

2 Décompression d'un tar

On ajoute les options suivantes à la ligne de commande tar :

  • –x (extract) pour extraire une archive
  • -v (verbose) pour afficher un retour à l'utilisateur
  • –f (file) pour spécifier le nom du fichier d'archive à décompresser

Et on ajoute l'une des options suivantes pour spécifier la méthode de décompression :

  • -j : bzip2
  • -z : gzip
  • -J : xz

Ensuite on indique le nom de l'archive à décompresser.

Par exemple :

tar -xvfz archive.tar.gz

2.1 Destination

Pour spécifier un répertoire de destination, on ajoute l'option "-C" :

tar -xvfz archive.tar.gz -C /home/geonov

2.2 Exclusion

On peut également ajouter un masque d'exclusion avec "--exclude=". Par exemple, pour exclure le répertoire "logs" :

tar -xvf archive.tar.gz --exclude='logs'