La commande tar, ses options et commutateurs. Sauvegarde sous Linux – commande tar Commandes Tar ubuntu

le goudron est un archiveur de GNU. tar prend plusieurs fichiers et/ou répertoires et les combine en un seul gros fichier. Cela vous permet de compresser une arborescence de répertoires entière, ce qui est impossible à faire avec bzip ou bzip2. tar a de nombreuses options, qui sont décrites en détail sur sa page de manuel.

$ man tar tar -xvvf foo.tar extrait foo.tar tar -xvvzf foo.tar.gz extrait gzippé foo.tar.gz tar -cvvf foo.tar foo/ tar contenu du dossier foo dans foo.tar

Options de commande tar couramment utilisées

    C – créer une nouvelle archive

    X – extraire les fichiers de l'archive

    –delete – supprimer (supprimer) les fichiers de l'archive

    R – ajouter des fichiers à une archive existante

    A – ajouter des fichiers tar à une archive existante

    T – liste des fichiers dans l'archive (contenu de l'archive)

    U – mettre à jour les archives

    D – opération de comparaison d’une archive avec un système de fichiers donné

    Z – traitement des archives à l'aide d'exemples d'utilisation de gzip et gunzip. Compression ou décompression, selon la combinaison des commutateurs -c ou -x qui l'accompagnent.

    J – traitement des archives à l’aide de bzip2. Compression ou décompression, selon la combinaison des commutateurs -c ou -x qui l'accompagnent.

tar est lancé avec l'indication obligatoire de l'une des actions principales, dont la plus courante est la création et le déballage des archives, puis d'autres paramètres sont définis en fonction de l'opération spécifique.

L'utilisation la plus courante de tar consiste à décompresser et décompresser un package téléchargé à partir d'un site Web ou d'un site FTP. La plupart des fichiers ont l'extension .tar.gz. Très souvent, on les appelle "tarballs". Cela signifie plusieurs fichiers compressés avec tar puis compressés avec gzip. Vous pouvez également trouver des fichiers .tar.Z. Ce sont essentiellement la même chose, mais on les trouve principalement sur les anciens systèmes Unix.

De plus, vous pouvez rencontrer des fichiers .tar.bz2. Le code source du noyau est distribué sous cette forme car il occupe moins d'espace de téléchargement. Comme vous l'avez probablement déjà deviné, il s'agit de fichiers archivés avec tar et compressés avec bzip.

Vous pouvez extraire tous les fichiers d'une telle archive en utilisant tar avec plusieurs options de ligne de commande. La décompression d'une archive tar se fait à l'aide de l'option -z, ce qui signifie que le fichier doit d'abord être exécuté via gunzip puis décompressé. La méthode la plus courante pour déballage des archives tar :

% tar -xvzf fichier.tar.gz

Il y a beaucoup d'options ici. Que signifient-ils? L'option -x signifie extraire. Ceci est important car il indique à tar ce qu'il doit faire exactement avec le fichier d'entrée. Dans ce cas, il sera divisé en fichiers à partir desquels il a été bricolé. L'option -v signifie activer le mode détaillé. Cela affichera le noms de tous les fichiers extraits de l'archive. Ce serait une bonne idée d'utiliser cette option pour que la décompression ne paraisse pas trop ennuyeuse. Vous pouvez également utiliser -vv pour rendre la sortie encore plus détaillée et vous donner encore plus d'informations sur les fichiers en cours d'extraction. L'option -z indique à tar" que le fichier .tar.gz doit d'abord être exécuté via gunzip. Enfin, l'option -f indique à tar que la ligne suivante sur la ligne de commande est le fichier avec lequel travailler.

Il existe plusieurs façons d'écrire la même commande. Sur les systèmes plus anciens qui ne disposent pas d'une copie appropriée de GNU tar, vous pouvez voir l'entrée suivante pour la même commande :

% fichier gunzip.tar.gz | tar-xvf-

Dans cette commande, le fichier est d'abord décompressé et le résultat est envoyé à tar. Parce que gzip écrit par défaut la sortie sur stdout, cette commande écrira le fichier décompressé sur stdout. Le pipeline transmet ensuite ce flux à tar pour décompression. Le signe « - » signifie que les données proviennent de l'entrée standard. Cette commande décompressera le flux de données obtenu à partir de gzip et l'écrira sur le disque.

Une autre façon d'écrire la commande originale consiste à supprimer le signe « - » avant les options :

% fichier tar xvzf.tar.gz

Vous pouvez également rencontrer une archive bzippée. La version tar fournie dans Slackware Linux peut fonctionner avec elles de la même manière qu'avec les archives gzippées. Au lieu de l'option -z, vous devez utiliser -j :

% tar -xvjf fichier.tar.bz2

Veuillez noter que tar enregistrera les fichiers extraits de l'archive dans le répertoire actuel. Donc, si vous avez une archive dans /tmp que vous souhaitez extraire dans votre répertoire personnel, vous disposez de quelques options. La première est que l'archive peut être déplacée vers votre répertoire personnel, puis développée à l'aide de tar. Deuxièmement, vous pouvez spécifier le chemin d'accès à l'archive sur la ligne de commande. Troisièmement, vous pouvez utiliser l'option -C pour décompresser l'archive tar dans le répertoire spécifié après cette option.

% cd $HOME % cp /tmp/file.tar.gz . % tar -xvzf fichier.tar.gz % cd $HOME % tar -xvzf /tmp/file.tar.gz % cd / % tar -xvzf /tmp/file.tar.gz -C $HOME

Toutes les entrées ci-dessus sont équivalentes. Dans chacun d'eux, l'archive est étendue à votre répertoire personnel et l'archive compressée d'origine reste en place.

Alors à quoi sert de pouvoir décompresser des archives si on ne peut pas les créer ? tar peut le faire aussi. Dans la plupart des cas, vous pouvez simplement remplacer l'option « -x » par « -c ».

% tar -cvzf fichier.tar.gz .

Dans cette commande, l'option -c indique à tar de créer une archive, et l'option -z compresse l'archive résultante pour la compresser. file.tar.gz est le nom du fichier à créer.

Spécifier l’option « -f » n’est pas toujours nécessaire, mais dans tous les cas il vaut mieux l’utiliser. Sans cela, tar écrira ses données sur la sortie standard, qui est généralement utilisée pour rediriger un flux vers un autre programme, comme ceci :

% tar -cv fichier.tar . | gpg --chiffrer

Cette commande crée une archive tar non compressée avec le contenu du répertoire actuel, puis exécute l'archive tar via le programme gpg, qui crypte et compresse l'archive, rendant impossible la lecture de toute personne ne disposant pas de votre clé privée.

tar via ssh

Si l'ordinateur source et l'ordinateur cible sont connectés via LAN ou WAN, alors pour gagner du temps, vous pouvez combiner l'utilisation de SSH (Secure Shell) et tar pour archiver, copier et extraire des fichiers en une seule fois. Voici comment procéder :

$ (cd ~/stuff; tar --create --gzip --file - *) | \ ssh destination tar --extract --gunzip --file --verbose -C stuff

Cette commande effectue plusieurs actions à la fois. Décomposons-le :

    La séquence de commandes entre parenthèses est appelée un sous-shell. Les modifications apportées au sous-shell - telles que le changement de répertoire - n'affecteront pas la commande dans son ensemble, mais affecteront uniquement l'environnement du sous-shell. Ainsi, la première séquence d'échappement - (cd ~/stuff; tar –create –gzip –file - *) change le répertoire de travail actuel en ~/stuff puis exécute tar. Puisque le sous-shell est suivi d'une redirection vers le tube, tous les résultats du sous-shell sont envoyés à la commande suivante en ligne.

    Comme beaucoup d'autres utilitaires UNIX, tar peut écrire sur la sortie standard (stdout) et lire depuis l'entrée standard (stdin). stdout et stdin sont généralement désignés par un trait d'union (-). Par conséquent, la commande –create –file crée une archive sur la sortie standard.

    Le canal (|) transfère tous les résultats du sous-shell à l'utilitaire ssh, qui, à son tour, transfère toutes les données nécessaires de l'ordinateur source vers l'ordinateur distant.

    Enfin, l'ordinateur distant exécute sa propre instance de l'utilitaire tar pour extraire les données de l'archive. Maintenant, –extract –file lit l'archive à partir de l'entrée standard. L'option -C force tar sur la machine cible à modifier son répertoire de travail actuel en stuff avant de commencer toute opération de décompression. Le résultat final de cette commande sera en général de transférer l'archive via ssh et de la décompresser dans ~/stuff.

Ainsi, à l'aide d'une seule commande, l'archive a été créée, transférée et décompressée. À propos, en modifiant légèrement cette commande, vous pouvez copier l'archive d'un ordinateur distant vers un ordinateur local et la décompresser. Voici la commande qui doit être exécutée sur l'ordinateur local :

$ ssh destination cat archive.tgz | \ (cd ~/stuff; tar --extract --gunzip --file -)

L'archive sur la machine distante sera ouverte, puis le flux d'octets de cat sera envoyé au shell imbriqué, qui modifiera le répertoire de travail puis extraira l'archive. (L'ajout de -C ~/stuff à la commande tar produira les mêmes résultats ; l'exemple montre uniquement que les sous-shell peuvent également gérer les entrées.)

tar exclure

-exclure modèle (-W exclure=modèle) Ne traite pas les fichiers ou répertoires qui correspondent au modèle spécifié. Notez que les exceptions ont priorité sur les modèles ou les noms de fichiers spécifiés sur la ligne de commande.

    Exemple : lors de l'archivage de tar, excluez le sous-répertoire .svn du répertoire de test tar -czf test1.tar.gz --exclude=".svn" test/

    Exemple : lors de l'archivage du répertoire actuel et de la compression. Exemples d'utilisation de gzip et gunzip , excluez le fichier avec les extensions .tar.gz .iso .deb .py $ tar -czf test.tar.gz *.* --exclude="*. tar.gz " --exclude="*.iso" --exclude="*.deb" --exclude="*.zip" --exclude="*.py"

tar avec droits d'accès préservés

Créez une archive tout en conservant les droits d'accès. Switch -p, –preserve-permissions, –same-permissions récupère des informations sur les droits d'accès aux fichiers (par défaut pour le superutilisateur)

Tar -cvpf archive.tar.gz rép1

Décompressez l'archive tout en conservant les droits d'accès

Tar -xvpf archive.tar.gz

tar extraire dans le répertoire souhaité

Pour décompresser l'archive dans le répertoire souhaité, utilisez la touche -C

# man tar ... -C répertoire En mode c et r, cela change le répertoire avant d'ajouter les fichiers suivants. En mode x, changez de répertoire après avoir ouvert l'archive mais avant d'extraire les entrées de l'archive. ...

Par exemple, l'exemple est testé pour FreeBSD :

# tar -xvf /usr/home/darkfire/backup.ns.server.254/usr/ports/distfiles.tar -C /usr/ports/

tar split divise une archive en plusieurs parties

Split -b 1000m distfiles.tar distfiles.split.tar

En conséquence, vous obtiendrez beaucoup de fichiers comme

Distfiles.split.taraa distfiles.split.tarab distfiles.split.tarai

100 millions signifie 100 mégaoctets. Vous pouvez écrire 100 000 - ce sera 100 kilo-octets. Vous pouvez les remonter comme ceci :

Cat distfiles.split.tar* | tar zxvf -

De nos jours, nous rencontrons très souvent des fichiers d’archives et sur toutes les plateformes : Windows, Mac ou Linux. Il peut s'agir de programmes, de sauvegardes de système ou de bases de données, ou simplement d'une archive de fichiers. Nous devons aussi souvent créer nos propres archives sous Linux afin de transférer plusieurs fichiers à des amis ou de les télécharger sur un service d'hébergement de fichiers. Les progiciels, les codes sources et bien d'autres fichiers diffusés sur Internet le sont sous forme d'archives. Apprendre à archiver des fichiers sous Linux via le terminal est très important ; vous en aurez peut-être besoin lorsque vous n'avez pas accès à l'interface graphique, ou il deviendra simplement plus agréable de travailler dans le terminal avec le temps.

Dans ce manuel, je souhaite examiner en détail les utilitaires d'archivage sous Linux ; nous examinerons non seulement l'utilitaire le plus populaire et universel - tar, mais également d'autres algorithmes de compression moins connus et populaires.

Il est important de noter que l’archivage sous Linux n’est pas la même chose que la compression de fichiers Linux. L'archivage est la combinaison de plusieurs petits fichiers en un seul dans le but d'un transfert, d'un stockage, d'un cryptage ou d'une compression ultérieurs plus pratiques. Comme je l'ai déjà dit, l'archivage est effectué par des utilitaires spéciaux. Nous ne toucherons pas à l'archivage des fichiers dans l'interface graphique, vous les découvrirez vous-même, notre sujet est le terminal.

L'utilitaire d'archivage le plus populaire pour Linux est tar. Il est utilisé presque partout, pour archiver des sources, conditionner des packages. D'autres utilitaires sont utilisés pour la compression, en fonction de l'algorithme de compression, par exemple zip, bz, xz, lzma, etc. L'archivage est d'abord effectué, puis la compression, à l'aide de programmes distincts. Le lancement automatique de certains utilitaires de compression pour une archive nouvellement créée est pris en charge dans tar et d'autres programmes similaires à l'aide d'options spéciales.

Le cryptage est également une fonctionnalité d'archivage utile. Mais regardons maintenant quels utilitaires existent qui peuvent être utilisés pour archiver des fichiers Linux et comment les utiliser.

Le goudron

Tar est un utilitaire standard pour l'archivage de fichiers Linux. Peu à peu, il est passé d'un petit programme d'archivage à un outil puissant prenant en charge de nombreuses options d'archivage et algorithmes de compression. Le programme prend en charge un grand nombre de paramètres. Regardons sa syntaxe et ses principaux paramètres :

Options $tar F fichier_vers_écriture /dossier_files_for_archive

Voyons maintenant les principales options :

  • UN- ajouter un fichier à l'archive
  • c- créer une archive sous Linux
  • d- comparer les fichiers d'archives et les fichiers décompressés dans le système de fichiers
  • j- compresser l'archive en utilisant Bzip
  • z- compresser l'archive en utilisant Gzip
  • r- ajouter des fichiers à la fin de l'archive
  • t- afficher le contenu des archives
  • toi- mettre à jour l'archive par rapport au système de fichiers
  • X- extraire les fichiers de l'archive
  • v- afficher des informations détaillées sur le processus de travail
  • F- fichier pour l'enregistrement de l'archive
  • -C- décompresser dans le dossier spécifié
  • --strip-composants- supprimer n sous-dossiers

Voyons maintenant l'archivage de fichiers sous Linux. Pour créer une archive, utilisez la commande suivante :

tar -cvf archive.tar.gz /chemin/vers/fichiers

Et pour décompresser l'archive tar Linux :

tar -xvf archive.tar.gz

Il est très facile de rappeler d'utiliser l'option emballage c - Cà manger et à déballer - X-e X tract.

L'archive compressée est créée exactement de la même manière, uniquement avec l'option -z, c'est si le cryptage gizp a été utilisé ; si bzip est nécessaire, alors l'option -j est utilisée :

tar -zcvf archive.tar.gz /chemin/vers/fichiers

$ tar -zxvf archive.tar.gz

Par exemple, regardons comment archiver un dossier sous Linux :

tar -zcvf home.tar.gz ~/

Bien que nous puissions le faire différemment, nous obtenons la même archive si nous créons d'abord une archive standard à l'aide de tar, puis la compressons avec un utilitaire de compression, seulement ici, nous obtenons plus de contrôle sur le processus de compression :

gzip archive.tar

Vous pouvez également supprimer la compression :

archive gunzip.tar.gz

Nous examinerons les utilitaires de compression ci-dessous.

Pour ajouter un fichier à l'archive, utilisez :

tar -rvf archive.tar fichier.txt

Pour extraire un seul fichier, la syntaxe est la même :

tar -xvf archive.tar fichier.txt

Vous pouvez extraire plusieurs fichiers en faisant correspondre un modèle à l'aide du paramètre wildcard, par exemple, extraire tous les fichiers php :

tar -xvf archive.tar --wildcards "*.php"

Par défaut, vous pouvez décompresser une archive tar Linux dans le dossier actuel portant le nom de l'archive ; pour décompresser dans le dossier souhaité, utilisez le commutateur -C :

tar -xvf archive.tar -C /chemin/vers/rép

Nous avons examiné l'utilitaire standard, examinons maintenant brièvement ses alternatives. Il n’y en a pas beaucoup et la plupart d’entre eux sont déjà obsolètes.

Partager

Shar vous permet de créer des archives auto-extractibles. Il s'agit essentiellement d'un script shell et nécessite un shell compatible Bash ou Bourne Shell pour le décompresser. Shar présente plusieurs avantages, mais il est également potentiellement non sécurisé puisque l'archive est un fichier exécutable.

Options de partage :

  • -o- enregistrer l'archive dans un fichier au lieu de la sortie standard
  • -l- limiter la taille du fichier de sortie
  • -L- limiter la taille du fichier de sortie et le diviser en parties
  • -n- le nom de l'archive ne sera pas inclus dans l'en-tête
  • -un- permettre la génération automatique de titres

Exemples d'utilisation de Shar pour archiver un dossier Linux :

Créez une archive partagée :

partager nom_fichier.extension > nom de fichier.shar

Décompressez l'archive partagée :

Ar

ar est un utilitaire de création et de gestion d'archives. Principalement utilisé pour archiver des bibliothèques statiques, mais peut être utilisé pour créer n'importe quelle archive. Auparavant utilisé assez souvent, mais a été supplanté par l'utilitaire tar. Actuellement utilisé uniquement pour créer et mettre à jour des fichiers de bibliothèque statiques.

  • - d- supprimer des modules de l'archive
  • -m- déplacer les membres dans les archives
  • -p- imprimer des membres d'archives spécifiques
  • -q- ajout rapide
  • -r- ajouter un membre à l'archive
  • -s- créer un index d'archives
  • -un- ajouter un nouveau fichier à une archive existante

Voyons maintenant des exemples d'utilisation. Créons une bibliothèque statique libmath.a à partir des fichiers objets substraction.o et division.o :

ar cr libmath.a soustraction.o division.o

Extrayons maintenant les fichiers de l'archive :

De cette façon, vous pouvez décompresser n'importe quelle bibliothèque statique.

Cpio

cpio - signifie Copier entrée et sortie (copier l'entrée et la sortie). Il s'agit d'un autre archiveur standard pour Linux. Activement utilisé dans le gestionnaire de packages Red Hat, ainsi que pour créer des initramfs. L'archivage sous Linux pour les fichiers normaux à l'aide de ce programme n'est pas applicable.

Options utilitaires :

  • -un- réinitialiser le temps nécessaire pour accéder aux fichiers après les avoir copiés
  • -UN- ajouter le fichier
  • -d- créer des répertoires si nécessaire

Exemple d'utilisation. Créez une archive cpio :

fichier1.o fichier2.o fichier3.o

ls | cpio -ov > /chemin/vers/output_folder/obj.cpio

Décompressez l'archive :

cpio-idv< /path/to folder/obj.cpio

L'archivage du dossier Linux se fait également automatiquement.

Compresser des archives sous Linux

Nous avons examiné comment créer une archive sous Linux. Parlons maintenant de la compression. Comme je l'ai dit, des utilitaires spéciaux sont utilisés pour la compression. Examinons brièvement quelques-uns d'entre eux

Gzip

Le plus couramment utilisé est Gzip. Il s'agit d'un utilitaire de compression standard sous Unix/Linux. Pour la décompression, utilisez gunzip ou gzip -d Tout d'abord, regardons sa syntaxe :

Fichier d'options $gzip

$ fichier d'options gunzip

Examinons maintenant les options :

  • -c- archive de sortie vers la sortie standard
  • -d- déballer
  • -F- décompresser ou compresser avec force
  • -l- afficher des informations sur les archives
  • -r- parcourir récursivement les répertoires
  • -0 - niveau de compression minimum
  • -9 - niveau de compression maximum

Vous avez déjà vu des exemples d'utilisation dans la description de l'utilitaire tar. Par exemple, compressons un fichier :

fichier gzip -c > archive.gz

Maintenant, déballons :

gunzip -c archive.gz

Mais pour compresser un dossier sous Linux, vous devrez d'abord l'archiver à l'aide de tar, puis compresser ensuite le fichier d'archive à l'aide de gzip.

Bzip

bzip2 est un autre utilitaire de compression alternatif pour Linux. Il est plus efficace que gzip, mais plus lent. Pour décompresser, utilisez l'utilitaire bunzip2.

Je ne décrirai pas les options de bzip2, elles sont similaires à celles de gzip. Pour créer une archive sous Linux, utilisez :

Le fichier file.bz2 sera créé dans le répertoire courant

Lzma

Nouvel algorithme de compression très efficace. La syntaxe et les options sont également similaires à celles de Gzip. Utilisez unlzma pour déballer.

Xz

Un autre algorithme de compression très efficace. Rétrocompatible avec Lzma. Les paramètres d'appel sont également similaires à Gzip.

Fermeture éclair

Utilitaire multiplateforme pour créer des archives zip compressées. Implémentations compatibles Windows de cet algorithme. Les archives Zip sont très souvent utilisées pour échanger des fichiers sur Internet. Avec cet utilitaire, vous pouvez compresser les deux fichiers et compresser le dossier Linux.

Syntaxe de l'utilitaire :

$ fichiers d'options zip

$ archives des options de décompression

Options utilitaires :

  • -d supprimer le fichier de l'archive
  • -r- parcourir récursivement les répertoires
  • -0 - archive uniquement, pas de compression
  • -9 - meilleur taux de compression
  • -F- réparer le fichier zip
  • -e- crypter les fichiers

Pour créer une archive Zip sous Linux, utilisez.

Comment créer une archive .tar.gz

tar -cvf fichier.tar /full/path - create.tar

tar -czvf fichier.tar.gz /full/path - create.tar.gz (archive)

tar -cjvf fichier.tar.bz2 /full/path - create.tar.bz2 (archive)

La syntaxe de ces exemples est la suivante :
tar [-keys] [nom de l'archive] [chemin, quoi emballer]

Comment ouvrir (décompresser) .tar

Pour décompresser, compressez le .tar : tar -xvf file.tar.gz

Syntaxe: tar [-keys] [nom de l'archive]

Clés de l'archiveur

c - (Créer) créer une archive.
z – crée archive.tar.gz
j - crée archive.tar.bz2
x - (eXtract) vous permet d'extraire des fichiers d'une archive.
v - Rend la sortie tar verbeuse. Cela signifie que tous les fichiers trouvés dans l'archive seront affichés à l'écran. Si cette option est omise, la sortie d'informations pendant le traitement sera limitée.
f - est une option obligatoire. Sans cela, tar essaie d'utiliser la bande au lieu du fichier d'archive.
z - vous permet de traiter une archive gzippée (avec une extension .gz). Si vous oubliez de spécifier cette option, tar générera une erreur. À l'inverse, cette option ne doit pas être utilisée pour les archives non compressées.
t - (Test) afficher le contenu de l'archive.

Vous pouvez en savoir plus sur les touches et capacités en tapant la commande dans l'environnement Unix
[~]# homme tar

Vous pouvez stocker plusieurs dossiers (structure de dossiers et de fichiers) dans des fichiers .tar.
Il est préférable d'utiliser avec des clés d'archivage un fichier .tar, afin que les fichiers résultants aient l'extension .tar.gz (un fichier .tar compressé avec l'archiveur gzip) ou .tar.bz2 (un fichier .tar compressé par bzip2).
bzip2 se compresse mieux, mais avec gzip c'est plus courant, il est donc préférable de compresser avec cet archiveur.
Si WinRAR est installé, il n'y aura aucun problème pour ouvrir .tar.bz2 et .tar.gz.

Histoire de l'archiveur

le goudron(archive sur bande anglaise) - le format d'un flux binaire ou d'un fichier d'archive, ainsi que le nom d'un programme Unix traditionnel pour travailler avec de telles archives. Le programme tar a été standardisé en POSIX.1-1998, et aussi plus tard dans POSIX.1-2001. Le programme tar était à l'origine utilisé pour créer des archives sur bande magnétique, et aujourd'hui tar est utilisé pour stocker plusieurs fichiers dans un seul fichier, pour distribuer des logiciels, et également pour son objectif prévu - pour créer une archive de système de fichiers. L'un des avantages du format tar lors de la création d'archives est que l'archive enregistre des informations sur la structure des répertoires, le propriétaire et le groupe de fichiers individuels, ainsi que l'horodatage des fichiers.
Comme les autres utilitaires Unix, tar est un programme spécialisé qui suit la philosophie Unix consistant à « ne faire qu'une seule chose » (gérer les archives), « mais en la faisant bien ». Par conséquent, tar ne crée pas d'archives compressées, mais utilise des utilitaires externes tels que gzip et bzip2 pour la compression. Auparavant, l'utilitaire de compression était également utilisé pour la compression, qui est pratiquement tombée en désuétude.

Note

En raison d'une normalisation assez tardive, il existe plusieurs formats similaires, mais pas totalement compatibles. En particulier, la différence entre GNOU le goudron et SOLEIL Solaris tar est observé lorsque la longueur du nom de fichier inclus dans l'archive est supérieure à 100 caractères ou que la taille du fichier inclus dans l'archive est supérieure à 8 Go.

Extensions de nom de fichier

Pour les fichiers contenant des archives tar, les extensions de nom de fichier suivantes sont traditionnellement utilisées :

archive tar :
.le goudron

archive tar compressée avec gzip :
.tar.gz
.tgz (en cas de restrictions du système de fichiers sur la longueur de l'extension)
.tar.gzip

archive tar compressée avec bzip2
.tar.bz2
.tar.bzip2
.tbz2
.tb2
.tbz

archive tar compressée avec compress
.tar.Z
.taz

archive tar compressée avec le programme LZMA
.tar.lzma

archive tar compressée avec le programme XZ
.tar.xz

archive tar compressée avec lzop

La commande « tar » sous Linux est utilisée pour créer une archive de fichiers et de répertoires. À l'aide de la commande « tar », vous pouvez créer un fichier d'archive dans les formats suivants : « .le goudron“, “.tar.gz“, “.tar.bz2" Ils sont connus sous le nom de « archive tar“, “bouffon“, “bzip"V. Tar est plus flexible que ZIP, qui est largement utilisé dans les environnements multiplateformes.

Nous montrerons exemples de commandes tar Dans cet article.

Tout d’abord, regardez combien d’options sont disponibles pour la commande

Mode de fonctionnement de base :

  • -A, -catenate, -concatenate Ajouter des fichiers à l'archive tar
  • -c, -create créer une nouvelle archive
  • -d, -diff, -compare recherche les différences entre l'archive et le système de fichiers
  • -supprimer supprimer de l'archive (pas sur les bandes magnétiques !)
  • -r, -append ajoutant des fichiers à la fin de l'archive
  • -t, -list liste le contenu de l'archive
  • -test-label vérifie l'archive et l'étiquette du volume de sortie
  • -u, -update ajoute uniquement les fichiers les plus récents à l'archive
  • -x, –extract, –get extraire les fichiers de l'archive

Options de compression :

  • -a, le suffixe -auto-compress utilise l'archive pour déterminer la compression du programme
  • -I, –use-compress-program=PROG filtre via PROG (doit accepter -d)
  • -j, -bzip2 filtre d'archivage via bzip2
  • -J, -xz filtre l'archivage via XZ
  • -lzip filtre archivage via Lzip
  • -archivage du filtre lzma via lzma
  • -lzop
  • -no-auto-compress n'utilise pas le suffixe d'archive pour déterminer le programme de compression
  • -z, -gzip, -gunzip, -ungzip filtrer les archives via GZIP
  • -Z, -compress, -uncompress filtrent l'archive par compression

Je choisis l'installateur pour la démonstration. La taille totale du programme d'installation est de 26 Mo. Nous vérifierons la taille du fichier compressé de chaque méthode de compression proposée.

1. Créez une archive de fichiers à l'aide de tar

L'archive Tar compresse automatiquement les fichiers et les dossiers. L'archive peut être stockée sur un disque ou peut être déplacée vers un autre disque ou elle peut être utilisée comme pièce jointe à un e-mail.

Tar -caf wordpress.tar wordpress/

La taille de l'archive est réduite à 23 Mo.

2. Créez une archive de fichiers tar.gz

GZ signifie Gunzip. L'archive .tar.gz peut compresser des fichiers et des dossiers de manière efficace.

Tar -czf wordpress.tar.gz wordpress/

La taille de l'archive est réduite à 7,6 Mo. Assez impressionnant !

# ls -lh -rw-r--r-- 1 racine racine 23 M 5 janvier 22:09 wordpress.tar -rw-r--r-- 1 racine racine 7,6 M 5 janvier 22:15 wordpress.tar.gz

3. Créez une archive tar.bz2

BZIP est plus efficace pour réduire la taille du fichier d'archive.

Tar -cjf wordpress.tar.bz2 wordpress/

La taille de l'archive est réduite à 6,9 Mo.

# ls -lh -rw-r--r-- 1 racine racine 23 M 5 janvier 22:09 wordpress.tar -rw-r--r-- 1 racine racine 6,9 M 5 janvier 22:27 wordpress.tar.bz2 - rw-r--r-- 1 racine racine 7,6 Mo 5 janvier 22:26 wordpress.tar.gz

4. Décompresser l'archive du fichier tar

Commodité et facilité d'utilisation de toute archive, si utile, lorsqu'elle peut être facilement décompressée. Décompressez le fichier .le goudron

Tar -xf wordpress.tar ou tar -xf wordpress.tar /home/andreyex/extracted

« X » signifie déballage.

5. Décompressez le fichier d'archive tar.gz

tar -xzf wordpress.tar.gz

6. Déballage de l'archive du fichier tar.bz2

tar -xjf wordpress.tar.bz2 tar tf wordpress.tar wordpress/ wordpress/wp-blog-header.php wordpress/wp-login.php wordpress/wp-config-sample.php wordpress/wp-admin/ wordpress/wp- admin/link-parse-opml.php wordpress/wp-admin/ms-upgrade-network.php wordpress/wp-admin/themes.php

8. Décompressez un fichier spécifique d'un fichier d'archive tar

tar -xf wordpress.tar wordpress/wp-config-sample.php

C'est tout pour le moment. Ce sont les principaux exemples de commandes tar sous Unix/Linux.

le goudron- l'archiveur le plus couramment utilisé sur les systèmes Linux. tar lui-même n'est pas un archiveur au sens habituel du terme, car il n'utilise pas lui-même la compression. Dans le même temps, de nombreux archiveurs (par exemple, Gzip ou bzip2) ne savent pas comment compresser plusieurs fichiers, mais ne fonctionnent qu'avec un seul fichier ou flux d'entrée. Par conséquent, le plus souvent, ces programmes sont utilisés ensemble. tar crée une archive non compressée contenant les fichiers et répertoires sélectionnés, tout en préservant certains de leurs attributs (tels que les autorisations). Après cela, le fichier *.tar résultant est compressé avec un archiveur, par exemple gzip. C'est pourquoi les archives portent généralement l'extension .tar.gz ou .tar.bz2 (pour les archiveurs gzip et bzip2, respectivement)

Usage

tar est lancé avec l'indication obligatoire de l'une des actions principales, dont la plus courante est la création et le déballage des archives, puis d'autres paramètres sont définis en fonction de l'opération spécifique.

Création d'une archive

Pour créer une archive, vous devez indiquer à tar l'action appropriée, qui s'effectue à l'aide du commutateur -c. De plus, le commutateur -f est requis pour regrouper le contenu dans un fichier. Ensuite, nous indiquerons d'abord le nom de la future archive, puis les fichiers que nous souhaitons compresser.

Tar -cf txt.tar *.txt

Cette commande regroupera tous les fichiers avec une extension txt dans une archive txt.tar. C'est ainsi qu'une archive simple sans compression est créée. Pour utiliser la compression, vous n'avez pas besoin d'exécuter autre chose ; il vous suffit d'indiquer à tar quel archiveur utiliser pour compresser l'archive. Pour les deux archiveurs les plus populaires, gzip et bzip2, les clés seront respectivement -z et -j.

Tar -cvzf fichiers.tar.gz ~/files

regroupera le dossier ~/files avec tout son contenu dans une archive compressée par gzip.

Tar -cvjf fichiers.tar.bz2 ~/fichiers

créera une archive similaire en utilisant bzip2 pour la compression.

Le commutateur -v permet d'afficher une liste des fichiers compressés pendant le fonctionnement. Malheureusement, tar ne fournit pas d'indications plus avancées sur la progression du processus (par exemple, indiquant le degré d'achèvement en pourcentage). Pour ce faire, utilisez des archiveurs graphiques (par exemple, Xarchiver) ou utilisez des outils de gestion de fichiers.

En plus de gzip et bzip2, vous pouvez utiliser, par exemple, lzma (switch –lzma) ou xz (switch -J), et l'archiveur correspondant doit être installé sur le système.

Déballage de l'archive

L'action « déballage » est spécifiée à l'aide du commutateur -x. Et là encore, vous aurez besoin du commutateur -f pour spécifier le nom du fichier d'archive. Nous ajouterons également le commutateur -v pour afficher visuellement la progression du processus.

Tar -xvf /chemin/vers/archive.tar.bz2

décompressera le contenu de l'archive dans le dossier actuel. Un autre emplacement pour le déballage peut être spécifié à l'aide du commutateur -C :

Tar -xvf archive.tar.bz2 -C /chemin/vers/dossier

Affichage du contenu des archives

Pour afficher le contenu de l'archive, utilisez la commande suivante :

Tar -tf archive.tar.gz

Il affichera une simple liste de fichiers et de répertoires dans l'archive. Si vous ajoutez le commutateur -v, une liste détaillée s'affichera indiquant la taille, les droits d'accès et d'autres paramètres (les mêmes qu'avec ls -l)

Autres caractéristiques

tar fournit de nombreuses fonctionnalités utiles. Par exemple, vous pouvez spécifier des fichiers et des répertoires qui ne seront pas inclus dans l'archive, ajouter des fichiers à une archive existante, prendre une liste d'objets à compresser à partir d'un fichier texte, et bien plus encore. Comme toujours, cela vous aidera à comprendre toute la variété des options.

homme tar tar --aide