La commande tar est utile pour regrouper plusieurs fichiers et/ou répertoires. Dans un sens, c'est similaire à la commande zip. Cependant, les fichiers zip sont compressés par définition; Les fichiers tar peuvent être compressés, mais ce n'est pas obligatoire.
Création d'un fichier tar
Dans les exemples qui suivent, la structure de fichiers suivante est utilisée :un répertoire de niveau supérieur appelé /var/tmp/test contenant les fichiers fichier1, fichier2 et fichier3.
# ls -lR /var/tmp/test /var/tmp/test: total 12 -rw-r--r-- 1 root root 2277 Jan 4 09:57 file1 -rw-r--r-- 1 root root 1611 Jan 4 09:58 file2 -rw-r--r-- 1 root root 1456 Jan 4 09:58 file3
1. En supposant que vous êtes déjà dans le répertoire /var/tmp/test, pour créer un fichier tar de tous les fichiers du répertoire test, lancez la commande ci-dessous.
# tar cvf test.tar . ./ tar: ./test.tar: file is the archive; not dumped ./file1 ./file3 ./file2
Ici,
c – créer (une archive)
v – verbeux (juste parce que)
f – filename (le nom de notre fichier tar)
. – répertoire courant
Affichage du contenu d'un fichier tar
Le répertoire courant contiendra désormais un fichier appelé test.tar . Pour afficher le contenu du fichier tar, nous pourrions émettre cette commande :
# tar tvf test.tar drwxr-xr-x root/root 0 2018-01-04 10:01 ./ -rw-r--r-- root/root 2277 2018-01-04 09:57 ./file1 -rw-r--r-- root/root 1456 2018-01-04 09:58 ./file3 -rw-r--r-- root/root 1611 2018-01-04 09:58 ./file2
Ici,
c – table des matières (liste)
v – verbeux (afficher toutes les informations)
f – nom de fichier (test.tar)
Extraire le fichier tar complet
Pour extraire tout le contenu du fichier tar dans le répertoire courant, nous pouvons taper :
# tar xvf test.tar ./ ./file1 ./file3 ./file2
Ici,
x – extraire
v – verbeux
f – nom de fichier (test.tar)
Extraire des fichiers spécifiques du fichier tar
Vous pouvez également extraire un fichier spécifique du fichier tar au lieu d'extraire l'intégralité du fichier tar. Pour extraire uniquement le fichier file1 de l'archive, tapez la commande suivante :
tar xvf test.tar file1
Utiliser la compression avec tar
Si vous souhaitez également ajouter de la compression à vos fichiers tar, vous pouvez combiner le gzip utilitaire avec tar sur la ligne de commande en ajoutant le z passer à la commande. Habituellement, lorsque cela est fait, nous changeons le suffixe de notre nom de fichier tar de .tar à .tgz ou .tar.gz. Cela permettra à quiconque voit le fichier de savoir qu'il s'agit d'un fichier tar compressé.
# tar zcvf test.tgz . ./ ./file1 ./file3 ./file2 tar: .: file changed as we read it
# ls -lrt total 16 -rw-r--r-- 1 root root 2277 Jan 4 09:57 file1 -rw-r--r-- 1 root root 1611 Jan 4 09:58 file2 -rw-r--r-- 1 root root 1456 Jan 4 09:58 file3 -rw-r--r-- 1 root root 1639 Jan 4 11:27 test.tgz
Ici,
z – compression gzip
c – créer
v – verbeux
f – nom de fichier (test.tgz)
. – répertoire courant
La commande tar connaît un autre algorithme de compression appelé bzip2 . Pour utiliser bzip2 au lieu de gzip, remplacez le 'z ‘ dans la commande ci-dessus avec un ‘j ' Par exemple :
# tar jcvf test.bz2 .
Pour extraire les fichiers compressés, incluez les options 'z' et 'j'. Par exemple,
# tar xzvf test.tgz # tar xjvf test.bz2
Conserver les autorisations avec tar
Si vous souhaitez conserver les autorisations des fichiers que vous sauvegardez, utilisez le p option avec la commande tar. Cela enregistrera l'uid, le gid ainsi que les attributs d'autorisation spécifiques des fichiers (lecture, écriture, exécution, etc.)
# tar pcvf test.tar .
Lors de l'extraction du fichier tar ci-dessus, vous devrez utiliser le p option à nouveau si vous souhaitez extraire les fichiers avec les autorisations de fichier conservées. Par exemple :
# tar pxvf test.tar .