Compresser et décompresser en xz et tar.xz sous Linux
Sommaire
I. Présentation
Dans ce tutoriel, nous allons voir comment compresser et décompresser au format xz et tar.xz sous Linux.
Pour rappel, les fichiers en .tar ne sont que des archives. Les fichiers en .xz sont des fichiers compressés, donc les .tar.xz sont des archives compressées.
Une archive, c'est le fait de mettre dans un même fichier, plusieurs fichiers ou dossiers. Les fichiers en .tar cachent souvent tout une arborescence, mais ils sont plus facile à manier.
La compression va être le moyen de réduire la place que prend cette archive. Généralement, on croisera des fichiers en .tar.xz, mais il peut également arriver que l'on croise des fichiers au format .xz seulement.
II. Compresser et décompresser au format XZ
Pour compresser un format .xz, il faut utiliser la commande "xz" qui est normalement disponible à partir de la version "1.22" de tar. Vous pourrez déterminer la version de tar avec la commande suivante :
tar --version
Si vous avez la bonne version, voici la commande à utiliser pour compresser au format .xz :
xz -k9 monfichier
L'option "-k" permet de compresser, "9" est le niveau de compression à appliquer, il va de 0 à 9 et 6 est le niveau par défaut.
Attention : Si vous souhaitez compresser un dossier et non un fichier unique, il faut le mettre dans une archive avant, nous verrons cela dans le point suivant.
Pour décompresser le format xz, il faut utiliser la commande suivante :
xz -d monfichier.xz
Ici, l'option -d permet de spécifier que l'on veut décompresser un fichier.
III. Compresser et décompresser au format tar.xz
Quand le fichier est en réalité une archive, c'est-à-dire un fichier contenant un ensemble de fichiers et dossiers qu'il faut désarchiver, il faut utiliser une commande supplémentaire. Pour construire une archive et la compresser au format XZ, utiliser la commande suivante :
tar cfJ fichier.tar.xz mondossier
- c : Permet de créer une archive
- f : Permet de spécifier le nom de l'archive
- J : Permet de spécifier que l'on compresse au format "xz"
Pour décompresser une archive compressée au format .tar.xz, il faut utiliser la commande suivante :
tar -xJf fichier.tar.xz
La différence ici est que l'on utilise l'option -x qui permet de spécifier une décompression.
Bonjour Mickael,
Bravo pour ce tutoriel.
Librement.
Christian
Bonjour Mickael,
Ton tutoriel n’est pas mal, mais il serait bon d’indiquer que le format .xz correspond a un protocol de compression bien precis: Tu indiques: ‘…Les fichiers en .xz sont des fichiers compressés…’. Oui mais Il s’agit d’un protocol particulier de compression; il peut y en avoir d’autres (bzip2, gunzip…).
Il n’est plus nécessaire de preciser le format de decompression avec une version récente de tar
co tmp # tar xjf ffmpeg-git-32bit-static.tar.xz
bzip2: (stdin) is not a bzip2 file.
tar: Child returned status 2
tar: Error is not recoverable: exiting now
co tmp # tar xJf ffmpeg-git-32bit-static.tar.xz
ok
salut je n’arrive pas à decompresser python-3.6.1.tar.xz
je tape la commande indiquée (tar -xJf python-3.6.1.tar.xz ) mais voici ce qui s’affiche:
tar (child): python-3.6.1.tar.xz : open impossible: Aucun fichier ou dossier de ce type
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
comment je dois m’y prendre
J’ai la même erreur que elrey
Il faut vous loger dans le dossier où vous avez téléchargé python
Et comment spécifie-t-on le niveau de compression via tar ? JAMAIS expliqué ça …