Comment décompresser un fichier tar.gz
Si vous utilisez un logiciel open source, il y a de fortes chances que vous rencontriez un fichier .tar à un moment donné. L’utilitaire d’archivage tar open source existe depuis 1979 , il est donc vraiment omniprésent dans le monde POSIX. Son objectif est simple: il prend un ou plusieurs fichiers et les «encapsule» dans un fichier autonome, appelé archive sur bande car lorsque tar a été inventé, il était utilisé pour placer des données sur bandes de stockage.
Les nouveaux utilisateurs du format tar l’assimilent généralement à un fichier .zip, mais une archive tar n’est notamment pas compressée. Le format tar ne crée qu’un conteneur pour les fichiers, mais les fichiers peuvent être compressés avec des utilitaires séparés. Les compressions courantes appliquées à un fichier .tar sont Gzip, bzip2 et xz. C’est pourquoi vous ne voyez que rarement un fichier .tar et que vous rencontrez plus fréquemment des fichiers .tar.gz ou .tgz.
Installation de tar
Sous Linux, BSD, Illumos et même Mac OS, la commande tar est déjà installée pour vous.
Sous Windows, le moyen le plus simple de gérer les fichiers .tar c’est insta ll l’utilitaire open source 7-Zip de LGPL. Son nom l’indique « un utilitaire zip, mais il fonctionne également avec les archives tar, et fournit même des commandes pour l’interface de ligne de commande cmd.
Si vous voulez vraiment un utilitaire tar sur Windows, GNU tar est installable via WSL sur Windows 10 ou via Cygwin.
Créer une archive tar
Une archive tar est souvent appelée tarball, probablement parce que nous, les pirates, adorons raccourcir les mots en aussi peu de syllabes que possible, et « tarball » est plus court et plus facile que « tar archive ».
Dans une interface graphique, la création d’une archive tar est, tout au plus, un processus en trois étapes. J’utilise KDE, mais le processus est essentiellement le même sur Gnome ou XFCE:
- Créez un répertoire
- Placez vos fichiers dans le répertoire
- Faites un clic droit sur le répertoire et sélectionnez « Compresser »
compress.jpg
Créer une archive tar
Dans un shell, c’est fondamentalement la même chose processus.
Pour rassembler un gr oup des fichiers dans une archive, placez vos fichiers dans un répertoire puis appelez tar, en fournissant un nom pour l’archive que vous voulez créer et le répertoire que vous voulez archiver:
L’utilitaire tar est unique parmi les commandes, car il n’exige pas de tirets devant ses options courtes, ce qui permet aux utilisateurs expérimentés d’abréger des commandes complexes comme celle-ci:
Vous n’êtes pas obligé de mettre des fichiers dans un répertoire avant de les archiver, mais c’est considéré comme une mauvaise étiquette à ne pas le faire, car personne ne veut que 50 fichiers soient dispersés sur son bureau lorsqu’ils désarchivent un répertoire. Ces types d’archives sont parfois appelés une bombe tar, bien que pas toujours avec une connotation négative. Les Tarbombs sont utiles pour les correctifs et les installateurs de logiciels; c’est juste une question de savoir quand les utiliser et quand les éviter.
Compresser des archives
Créer une archive tar ne compresse pas vos fichiers, cela les rend simplement plus faciles à se déplacer comme un seul objet blob. Pour la compression, vous pouvez demander à tar d’appeler Gzip ou bzip:
$ tar --create --bzip2 --file foo.tar.bz2 myfiles
$ tar --create --gzip --file foo.tar.gz myfiles
Les extensions courantes sont tar.gz et .tgz pour un tar avec Gzip fichier, et .tbz et .tar.bz2 pour un fichier tar bzippé.
Extraction d’archives
Si vous avez reçu une archive tar d’un ami ou d’un projet logiciel, vous pouvez extraire dans votre bureau GUI ou dans un shell. Dans une interface graphique, cliquez avec le bouton droit sur l’archive que vous souhaitez extraire et sélectionnez « Extraire ».
extract_0.jpg
Extraction d’une archive
Le gestionnaire de fichiers Dolphin offre une fonction permettant de détecter automatiquement si les fichiers extraits d’une archive sont contenus dans un répertoire ou si un nouveau répertoire doit être créé pour eux. J’utilise cette option pour que lorsque j’extrais des fichiers d’une tarbomb, ils restent rangés et contenus.
Dans un shell, la commande pour extraire une archive est assez intuitive:
Les utilisateurs expérimentés raccourcissent ceci en:
Vous pouvez même utiliser l’utilitaire tar pour décompresser les fichiers .zip:
Tar avancé
Les utilitaires tar sont très robustes et flexibles. Une fois que vous êtes à l’aise avec les bases, il est utile d’explorer d’autres fonctionnalités.
Ajouter un fichier ou un répertoire à une archive tar existante
Si vous avez une archive tar existante et que vous souhaitez ajoutez-y un nouveau fichier, vous n’avez pas à tout désarchiver juste pour ajouter un nouveau fichier.
La plupart des bureaux Linux et BSD sont livrés avec un utilitaire d’archivage graphique. En l’utilisant, vous pouvez ouvrir une archive tar comme s’il s’agissait d’un autre répertoire, jetez un œil à l’intérieur, extrayez des fichiers individuels, ajoutez-y des fichiers et prévisualisez même les fichiers texte et les images qu’il contient.
ark.jpg
L’utilitaire d’archivage Ark
Dans le shell, vous pouvez ajouter un fichier ou un répertoire à une archive tar tant qu’il n’est pas compressé. Si votre archive a été compressée, vous devez la décompresser, mais vous n’avez pas besoin de la désarchiver.
Par exemple, si une archive a été compressée avec Gzip:
$ gunzip archive.tar.gz
$ ls
archive.tar
Maintenant que vous avez une archive tar non compressée, ajoutez-y un fichier et un répertoire:
$ tar --append --file archive.tar foo.txt
$ tar --append --file archive.tar bar/
La version la plus courte:
$ tar rf archive.tar foo.txt
$ tar rf archive.tar bar/
Afficher une liste de fichiers dans une archive tar
Pour voir les fichiers dans une archive, compressés ou non, utilisez le – option de liste:
$ tar --list --file archive.tar.gz
myfiles/
myfiles/one
myfiles/two
myfiles/three
bar/
bar/four
foo.txt
Les utilisateurs expérimentés raccourcissent ceci en:
Extraire un seul fichier ou répertoire
Parfois, vous n’avez pas besoin de tous les fichiers d’une archive, vous voulez juste en extraire un ou deux. Après avoir répertorié le contenu d’une archive tar, utilisez la commande habituelle d’extraction de tar avec la commande chemin du fichier que vous souhaitez extraire:
$ tar xvf archive.tar.gz bar/four
bar/four
L’extraction de plusieurs fichiers ou répertoires est fondamentalement la même:
$ tar xvf archive.tar.gz myfiles/one bar/four
myfiles/one
bar/four
Vous pouvez même utiliser des jokers:
$ tar xvf archive.tar.gz --wildcards "*.txt"
foo.txt
Extraire une tarball dans un autre répertoire
Auparavant, j’ai mentionné que certaines tarballs étaient des tarbombs qui restaient fichiers éparpillés sur votre ordinateur. Si vous listez une archive tar et voyez que ses fichiers ne sont pas contenus dans un répertoire, vous pouvez créer un répertoire de destination pour eux:
$ tar --list --file archive.tar.gz
foo
bar
baz
$ mkdir newfiles
$ tar xvf archive.tar.gz -C newfiles
Ceci place tous les fichiers de l’archive dans le répertoire « newfiles ».
L’option de répertoire de destination est utile pour bien plus que simplement garder les fichiers extraits en ordre, par exemple, distribuer des fichiers qui sont destinés à être copiés dans un structure de répertoires existante. Si vous « travaillez sur un site Web et que vous souhaitez envoyer de nouveaux fichiers à l’administrateur, vous pouvez le faire de différentes manières. La manière la plus évidente consiste à envoyer les fichiers par e-mail à l’administrateur du site avec du texte expliquant l’emplacement de chaque fichier. placé: « Le fichier index.php joint va dans /var/www/example.com/store, et le fichier vouchers.php va dans /var/www/example.com/deals … »
Le moyen le plus efficace serait de créer une archive tar:
Compte tenu de cette structure, l’administrateur du site pourrait extraire votre archive entrante directement dans le répertoire racine du serveur. L’utilitaire tar détecte automatiquement l’existence de /var/www/example.com ainsi que les sous-répertoires stockent, traite et images, et distribue les fichiers dans les répertoires appropriés. C’est une copie et un collage en masse, faits rapidement et facilement.
GNU tar et BSD tar
Le format tar est juste un format, et c’est un format ouvert, donc il peut être créé par plusieurs outils.
Il existe deux utilitaires tar courants: l’utilitaire tar GNU, installé par défaut sur les systèmes Linux, et l’utilitaire tar BSD, installé par défaut sur BSD, Mac OS , et certains systèmes Linux. Pour une utilisation générale, l’un ou l’autre tar fera l’affaire. Tous les exemples de cet article fonctionnent de la même manière sur GNU ou BSD tar, par exemple. Cependant, les deux utilitaires ont quelques différences mineures, donc une fois que vous serez à l’aise avec l’un, vous devriez essayer l’autre.
Vous devrez probablement installer l ‘ »autre » tar (quel qu’il soit sur Pour éviter toute confusion entre les utilitaires, GNU tar est souvent nommé gtar et BSD tar est nommé bsdtar, la commande tar étant un lien symbolique, ou un alias, vers celui qui était préinstallé sur votre ordinateur.