Compression et archivage de fichiers — Gzip, Zip, et Tar

Compression avec Gzip et Zip

Les fichiers comprimés utilisent moins d'espace disque et se téléchargent plus rapidement que les grands fichiers non comprimés. Vous pouvez comprimer les fichiers Linux à l'aide de l'instrument de compression open-source Gzip ou Zip, qui est reconnu par la plupart des systèmes d'exploitation.

Par convention, les fichiers comprimés se voient attribuer l'extension .gz. La commande Gzip crée un fichier comprimé terminant par .gz; Gunzip extrait les fichiers comprimés et efface le fichier .gz.

Pour comprimer un fichier, entrez la commande suivante à l'invite du shell :

gzip filename.ext

Le fichier sera comprimé et sauvegardé comme filename.ext.gz.

Pour décompresser un fichier comprimé, tapez :

gunzip filename.ext.gz

Le filename.ext.gz est effacé et remplacé par filename.ext.

Si vous échangez des fichiers avec des utilisateurs non LINUX, vous devriez utiliser zip pour éviter les problèmes de compatibilité. Red Hat Linux peut facilement ouvrir des fichiers zip ou gzip, mais les systèmes d'exploitation non-Linux pourraient avoir des problèmes avec les gzip.

Pour comprimer un fichier à l'aide de zip, entrez ceci :

zip -r filename.zip files

Dans cet exemple, filename représente le fichier que vous créez, et files représente les fichiers que vous voulez placer dans le nouveau fichier :

Pour extraire le contenu d'un fichier zip, entrez :

unzip filename.zip

Vous pouvez compresser plusieurs fichiers en même temps avec zip ou gzip. Enumérez les fichiers en les séparant par un espace.

gzip filename.gz file1 file2 file3 /user/work/school 

La commande ci-dessus compresse les file1, file2, file3, et le contenu du répertoire /user/work/school pour les placer dans filename.gz.

Archiver avec Tar

Les fichiers tar placent plusieurs fichiers ou le contenu d'un répertoire ou de plusieurs répertoires dans un seul fichier. Il s'agit d'une bonne manière de créer des sauvegardes et des archives. Généralement, les fichiers tar terminent par l'extension .tar.

Pour créer un fichier tar, tapez :

tar -cvf filename.tar files/directories

Dans cet exemple, filename.tar représente le fichier que vous créez et files/directories représente les fichiers ou répertoires que vous voulez placer dans le nouveau fichier.

Vous pouvez utiliser des noms d'accès absolus ou relatifs pour ces fichiers et répertoires (pour plus d'informations concernant les noms d'accès, consultez la la section intitulée Changement de répertoire au moyen de cd dans Chapitre 10). Séparez les noms de fichiers et de répertoires par un espace.

La saisie suivante créera un fichier tar en utilisant un nom d'accès absolu :

 tar -cvf foo.tar /home/mine/work /home/mine/school

La commande ci-dessus placera tous les fichiers dans les sous-répertoires /work et /school dans un nouveau fichier appelé foo.tar dans le répertoire dans lequel vous travaillez actuellement.

Commande tar -cvf foo.tar file1.txt file2.txt file3.txt would place file1.txt, file2.txt et file3.txt dans un nouveau fichier appelé foo.tar.

Pour afficher la liste du contenu d'un fichier tar, entrez :

tar -tvf foo.tar

Pour extraire le contenu d'un fichier tar, entrez :

tar -xvf foo.tar

Cette commande n'élimine pas le fichier .tar, mais elle place des copies du contenu de .tar dans le répertoire dans lequel vous travaillez actuellement.

La commande tar ne compresse pas automatiquement les fichiers. Vous pouvez compresser les fichiers tar avec :

tar -czvf foo.tar

Les fichiers tar compressés se voient attribuer l'extension .tgz et sont comprimés avec gzip.

Pour décompresser un fichier tar, entrez :

tar -xzvf foo.tgz