Il est indispensable de faire la différence entre l'archivage et la compression puisque ces deux mécanismes sont différents.
Il s'agit de la concaténation d'un ensemble de fichiers et de répertoire en un seul fichier. La taille totale n'est pas particulièrement diminuée. Cette opération permettant de manipuler un ensemble de fichiers ou une arborescence plus facilement lors d'actions telles que l'envoi ou le téléchargement.
Nous verrons la commande tar
mais il faut savoit que la commande cpio
est également très utilisée sur les systèmes UNIX même si son usage la réserve particulièrement aux sauvegardes sur bandes. rsync
est également une commande très intéressante car elle permet de faire des réplicats et peut fonctionner en mode "client/serveur" avec le démon rsyncd
La compression agit fichier par fichier. Son but est de réduire au maximum la taille des fichiers (de préférence les "gros" fichiers) pour accélérer les transferts ou minimuser l'espace disque des sauvegardes.
L'usage conjoint des deux outils est très courant puisque cela facilite la manipulation et le transfert de fichiers sur des liaisons lentes telles qu'Internet et la copie des sauvegardes sur le support de stockage.
Le premier argument de tar
doit obligatoirement être une de ces lettres Acdrtux
et suivi par n'importe quelles fonctions optionnelles.
Les arguments finaux de tar
sont les noms des fichiers ou des répertoires qui doivent être archivés.
L'utilisation d'un nom de répertoire implique toujours que les sous-répertoires seront inclus dans l'archive.
Il faut obligatoirement utiliser l'une des options suivantes :
Options les plus courantes | Descriptions |
---|---|
-c ou --create |
Création d'une nouvelle archive |
-u ou --update |
Ajoute seulement les fichiers plus récents que ceux de l'archive |
-t ou --list |
Liste le contenu d'une archive |
-x ou --extract ou --get |
Restaure les fichiers contenus dans unea rchive |
Options les moins courantes | Descriptions |
---|---|
-d ou --diff ou --compare |
trouver les différences entre une archive et les fichiers indiqués |
-r ou --append |
Ajouter des fichiers à la fin d'une archive |
-A ou --catenate ou --concatenate |
Ajouter des fichiers archives dans une archive |
Options | Descriptions |
---|---|
-C <dir> |
Extrait dans le répertoire <dir> |
-f <archive.tar> |
utilise le fichier <archive.tar> |
-z |
Pour les distributions GNU/LINUX, compresse l'archive avec gzip |
-v |
Active le mode verbeux |
--exclude <FILE> |
Exclut le fichier <FILE> du traitement |
-X ou --exclude-fom <FILE> |
Exclut du traitement les fichiers dont les noms sont contenus dans <FILE> |
-m |
Ne restaure pas la date de modification du fichier |
-N <date> |
Enregistre seulement les fichiers plus récent que <date> |
-p |
Restaure toutes les informations de protection |
--atime-preserve |
Ne modifie pas les dates d'accès des fichiers de l'archive |
--same-owner |
Conserve les appartenances des fichiers restaurés |
gzip
permet de réduire la taille d'un ou plusieurs fichiers.
Le résultat de la compression remplace le fichier d'origine par le fichier compressé avec l'extension gz
.
Syntaxe :
gzip [OPTIONS] <nom_fichier(s)>
Options | Descriptions |
---|---|
-c ou --stdout |
Ecrit sur la sortie standard en conservant le fichier d'origine |
-f ou --force |
Force la compression si un fichier .gz existe déjà |
-v ou --verbose |
Affiche le pourcentage de compression de chaque fichier |
-1 ou --fast |
Compresse rapidement |
-9 ou --best |
Meilleur taux de compression |
<nom_fichier(s)> |
Nom du ou des fichiers à compresser |
La commande bzip2
est un équivalant de la commande gzip
cependant l'algorithme de compression utilisé est plus efficace, au détriment de la rapidité d'exécution.
L'extension utilisée par bzip2
est bz2
.
Options | Descriptions |
---|---|
-d ou --decompress |
Pour décompresser |
-k ou --keep |
Conserve le fichier d'origine |
-f ou --force |
Ecrase le fichier de destination s'il existe déjà |
-c ou --stdout |
Compresse vers la sortie standard et ne supprime pas le fichier |
-v ou --verbose |
Mode verbeux |
-1 .. -9 |
Utilise des tailles de blocks de 100k à 900k |
--fast |
Identique à -1 |
--best |
Identique à -9 |
L'option
-k
ou--keep
permet de ne pas supprimer le fichier d'origine sans avoir besoin d'utiliser la sortie standard. L'option-v
permet d'avoir des informations sur la compression.
Syntaxe :
gunzip [Option] <nom_fichier.gz>
zcat [OPTIONS] <nom_fichier.gz>
bzip2 <nom_fichier.bz2>
bzcat <nom_fichier.bz2>
Options | Descriptions |
---|---|
gunzip |
Permet de retrouver le ou les fichiers originaux à partir d'un fichier gz |
bunzip2 |
Permet la restauration d'un fichier bz2 compressé |
zcat |
Fonctionnement identique à gunzip -c |
bzcat |
Fonctionnement identique à bunzip2 -c |
-c
: Permet d'écrire sur la sortie standard, ne supprime pas le fichier compressé.
<nom_fichier.gz>
: Nom du ou des fichiers à décompresser. Le nom peut être générique.