Comment archiver des fichiers et des répertoires sous Linux [Partie 1]
Dans notre didacticiel précédent, nous avons expliqué comment compresser et décompresser des fichiers à l'aide des programmes gzip et bzip2. Aujourd'hui, nous allons apprendre à archiver des fichiers et des répertoires sous Linux. L'archivage et la compression ne sont-ils pas identiques ? Certains d’entre vous pensent souvent que ces termes ont la même signification. Mais les deux sont complètement différents. L'archivage est le processus de combinaison de plusieurs fichiers et répertoires (de taille identique ou différente) en un seul fichier. D'autre part, la compression est le processus de réduction de la taille d'un ou plusieurs fichiers ou répertoires. L'archivage est souvent utilisé dans le cadre des sauvegardes du système ou lors du déplacement des données d'un système à un autre. J'espère que vous comprenez la différence entre l'archivage et la compression. Passons maintenant au sujet.
Archiver des fichiers et des répertoires sous Linux
Les programmes les plus courants pour archiver des fichiers et des répertoires sont :
- le goudron
- fermeture éclair
C'est un grand sujet. Je vais donc publier cet article en deux parties. Dans la première partie, nous verrons comment archiver des fichiers et des répertoires à l'aide de la commande Tar.
Archiver des fichiers et des répertoires à l'aide de la commande Tar
Tar est une commande Unix qui signifie Tape Archive. Il est utilisé pour combiner ou stocker plusieurs fichiers (de taille identique ou différente) dans un seul fichier. Il existe 4 modes de fonctionnement principaux dans l'utilitaire tar.
- c - Crée une archive à partir d'un ou plusieurs fichiers ou répertoires.
- x - Extraire une archive.
- r : ajoute des fichiers à la fin d'une archive.
- t - Répertorie le contenu de l'archive.
Pour la liste complète des modes, reportez-vous aux pages de manuel.
Créer une nouvelle archive
Pour les besoins de ce guide, j'utiliserai un dossier nommé ostechnix qui contient trois types de fichiers différents.
$ ls ostechnix/
file.odt image.png song.mp3Maintenant, créons une nouvelle archive tar du répertoire ostechnix.
tar cf ostechnix.tar ostechnix/Ici, l'indicateur c fait référence à la création d'une nouvelle archive et f fait référence au nom du fichier.
De même, pour créer une archive à partir d'un ensemble de fichiers dans le répertoire de travail actuel, utilisez cette commande :
tar cf archive.tar file1 file2 file 3Extraire les archives
Pour extraire une archive dans le répertoire courant, faites simplement :
tar xf ostechnix.tarNous pouvons également extraire l'archive dans un répertoire différent en utilisant le drapeau C (c majuscule). Par exemple, la commande suivante extrait le fichier d'archive donné dans le répertoire Téléchargements.
tar xf ostechnix.tar -C Downloads/Vous pouvez également accéder au dossier Téléchargements et extraire l’archive qu’il contient comme ci-dessous.
cd Downloads/tar xf ../ostechnix.tarParfois, vous souhaiterez peut-être extraire des fichiers d'un type spécifique. Par exemple, la commande suivante extrait les fichiers de type ".png".
tar xf ostechnix.tar --wildcards "*.png"Créer des archives gzippées et bzippées
Par défaut, Tar crée le fichier d'archive se terminant par l'extension .tar . De plus, la commande tar peut être utilisée conjointement avec les utilitaires de compression gzip et bzip2. Les fichiers se terminent par les extensions .tar font référence à l'archive tar simple, les fichiers se terminent par tar.gz ou .tgz font référence à une archive gzippée. et les fichiers tar se terminent respectivement par tar.bz2 ou .tbz et font référence à une archive bzippée.
Commençons par créer une archive gzippée :
tar czf ostechnix.tar.gz ostechnix/
Ou,
tar czf ostechnix.tgz ostechnix/Ici, nous utilisons l'indicateur z pour compresser l'archive à l'aide de la méthode de compression gzip.
Vous pouvez utiliser l'indicateur v pour afficher la progression lors de la création de l'archive.
$ tar czvf ostechnix.tar.gz ostechnix/
ostechnix/
ostechnix/file.odt
ostechnix/image.png
ostechnix/song.mp3Ici, v fait référence à verbeux.
Pour créer une archive gzippée à partir d'une liste de fichiers :
tar czf archive.tgz file1 file2 file3Pour extraire l'archive gzippée dans le répertoire courant, utilisez :
tar xzf ostechnix.tgzPour extraire l'archive dans un autre dossier, utilisez l'indicateur -C.
tar xzf ostechnix.tgz -C Downloads/Maintenant, créons une archive bzippée.
Pour ce faire, utilisez le drapeau j comme ci-dessous.
Créez une archive d'un répertoire :
tar cjf ostechnix.tar.bz2 ostechnix/
Ou,
tar cjf ostechnix.tbz ostechnix/Créer une archive à partir de la liste des fichiers :
tar cjf archive.tar.bz2 file1 file2 file3Ou,
tar cjf archive.tbz file1 file2 file3Pour afficher la progression, utilisez le drapeau v.
Maintenant, extrayons l'archive bzippée dans le répertoire courant. Pour ce faire, nous faisons :
tar xjf ostechnix.tar.bz2Ou extrayez l'archive dans un autre répertoire :
tar xjf ostechnix.tar.bz2 -C DownloadsCréer une archive de plusieurs répertoires et/ou fichiers à la fois
C'est une autre fonctionnalité la plus intéressante de la commande tar. Pour créer une archive gzippée de plusieurs répertoires ou fichiers à la fois, utilisez cette commande :
tar czvf ostechnix.tgz Downloads/ Documents/ ostechnix/file.odtLa commande ci-dessus créera une archive des répertoires Téléchargements, Documents et du fichier file.odt dans le répertoire ostechnix et enregistrera l'archive dans le répertoire de travail courant.
Exclure des répertoires et/ou des fichiers lors de la création d'une archive
Ceci est très utile lors de la sauvegarde de vos données. Vous pouvez exclure les fichiers ou répertoires non importants de votre sauvegarde. C'est là que le commutateur --exclude entre en aide. Par exemple, vous souhaitez créer une archive de votre répertoire /home, mais exclure les répertoires Téléchargements, Documents, Images et Musique.
C'est comme ça qu'on fait.
tar czvf ostechnix.tgz /home/sk --exclude=/home/sk/Downloads --exclude=/home/sk/Documents --exclude=/home/sk/Pictures --exclude=/home/sk/MusicLa commande ci-dessus créera une archive compressée de mon répertoire $HOME, à l'exclusion des dossiers Téléchargements, Documents, Images et Musique. Pour créer une archive bzippée, remplacez z par j et utilisez l'extension .bz2 dans l'exemple ci-dessus.
Répertorier le contenu des fichiers d'archive sans les extraire
Pour lister le contenu d'un fichier d'archive, nous utilisons le drapeau t.
$ tar tf ostechnix.tar
ostechnix/
ostechnix/file.odt
ostechnix/image.png
ostechnix/song.mp3Pour afficher la sortie détaillée, utilisez l'indicateur v.
$ tar tvf ostechnix.tar
drwxr-xr-x sk/users 0 2018-03-26 19:52 ostechnix/
-rw-r--r-- sk/users 9942 2018-03-24 13:49 ostechnix/file.odt
-rw-r--r-- sk/users 36013 2015-09-30 11:52 ostechnix/image.png
-rw-r--r-- sk/users 112383 2018-02-22 14:35 ostechnix/song.mp3Ajouter des fichiers aux archives existantes
Des fichiers ou des répertoires peuvent être ajoutés/mis à jour aux archives existantes à l'aide de l'indicateur r. Jetez un œil à la commande suivante.
tar rf ostechnix.tar ostechnix/ sk/ example.txtLa commande ci-dessus ajoutera le répertoire nommé sk et un fichier nommé example.txt à l'archive ostechnix.tar.
Vous pouvez vérifier si les fichiers sont ajoutés ou non à l'aide de la commande :
$ tar tvf ostechnix.tar
drwxr-xr-x sk/users 0 2018-03-26 19:52 ostechnix/
-rw-r--r-- sk/users 9942 2018-03-24 13:49 ostechnix/file.odt
-rw-r--r-- sk/users 36013 2015-09-30 11:52 ostechnix/image.png
-rw-r--r-- sk/users 112383 2018-02-22 14:35 ostechnix/song.mp3
drwxr-xr-x sk/users 0 2018-03-26 19:52 sk/
-rw-r--r-- sk/users 0 2018-03-26 19:39 sk/linux.txt
-rw-r--r-- sk/users 0 2018-03-26 19:56 example.txtTL;DR
Créer des archives tar :
- Archive tar simple : tar -cf archive.tar fichier1 fichier2 fichier3
- Archive tar gzippée : tar -czf archive.tgz fichier1 fichier2 fichier3
- Archive tar compressée : tar -cjf archive.tbz fichier1 fichier2 fichier3
Extraire les archives tar :
- Archive tar simple : tar -xf archive.tar
- Archive tar compressée : tar -xzf archive.tgz
- Archive tar compressée : tar -xjf archive.tbz
Nous venons d'aborder l'utilisation de base de la commande tar. Il suffit de démarrer avec la commande tar. Cependant, si vous souhaitez en savoir plus, reportez-vous aux pages de manuel.
man tarEt c'est tout pour le moment. Dans la partie suivante, nous verrons comment archiver des fichiers et des répertoires à l'aide de l'utilitaire Zip.
- Comment archiver des fichiers et des répertoires sous Linux - Partie 2