Comment compresser et décompresser des fichiers à l'aide de tar sous Linux

  • Principal
  • Nouvelles
  • Comment compresser et décompresser des fichiers à l'aide de tar sous Linux

Shutterstock / iunewind

tar est plus qu'un simple utilitaire d'archivage : tar est livré avec de superbes fonctions intégrées qui vous permettent de compresser et de décompresser des fichiers, simultanément à l'archivage. Apprenez tout dans cet article et plus encore !

Qu'est-ce que le goudron et comment puis-je l'installer?

Selon le goudron manuel (auquel vous pouvez accéder en tapant |__+_| une fois installé), tar est un utilitaire d'archivage. Il prend en charge de nombreuses fonctionnalités, notamment la compression et la décompression de fichiers à la volée lors de l'archivage. Commençons par installer le goudron :

Installer le goudron sur votre distribution Linux basée sur Debian/Apt (comme Ubuntu et Mint), exécutez la commande suivante dans votre terminal :

|__+_|

Installer le goudron sur votre distribution Linux basée sur RedHat/Yum (telle que RHEL, Centos et Fedora), exécutez la commande suivante dans votre terminal :

|__+_|

Ensuite, nous allons créer des exemples de données :

|__+_|

Définir les exemples de données à compresser

Ici, nous avons créé un répertoire de test et créé six fichiers vides en utilisant l'extension |__+_| J'envoie. Nous avons également ajouté quelques numéros aux fichiers. un , c'est , c'est deuxième , même si en particulier les fichiers deuxième a des données répétitives, qui se comprimeront très bien.

Si vous voulez en savoir plus sur le fonctionnement de la compression, vous pouvez consulter la nôtre. Comment fonctionne la compression de fichiers ? Article.

Créer un fichier non compressé

Création facile d'archives tar non compressées

|__+_|

Ici, nous avons créé un fichier non compressé en utilisant l'extension |__+_| J'envoie. Examinons les options utilisées dans cette commande.

Tout d'abord, nous avons |_+_| que bien que ce ne soit pas obligatoire dans ce cas particulier, je vous recommande de toujours inclure dans le vôtre |__+_| commandes. Cette option signifie déréférencement , qui déréférencera (ou suivra) les liens symboliques, stockant et téléchargeant les fichiers vers lesquels ils pointent.

Ensuite, nous avons le fichier |__+_| est |__+_| options. Notez qu'ils ne sont écrits qu'avec le fichier |__+_| dans |__+_|, c'est-à-dire qu'au lieu de spécifier un autre |_+_|, nous les marquons simplement dans les autres options de raccourci. Rapide et facile.

le |__+_| option signifie créer un nouveau fichier . Notez que, par défaut, les répertoires sont archivés de manière récursive à moins qu'une option --no-recursion ne soit également utilisée. le |__+_| L'option nous permet de spécifier le nom du fichier. Il doit donc être le dernier de notre chaîne d'options (puisqu'il nécessite une option) afin que nous puissions ajouter le nom de l'archive directement après. Utiliser |__+_| ça ne marchera pas:

Les raccourcis nécessitant une option ne peuvent pas être mis au premier plan

Une fois le tar généré, nous utilisons un fichier |__+_| sortie qui nous montre clairement le nombre d'octets par fichier. Comme vous pouvez le voir, le fichier tar est beaucoup plus volumineux que tous nos fichiers combinés. Les fichiers sont simplement archivés et certains frais généraux le goudron C'est ajouté.

Comme remarque intéressante, nous pouvons également voir avec quels types de fichiers nous travaillons simplement en utilisant le |_+_| commande à l'invite de commande :

|__+_|

Utilisation du fichier pour afficher le type de fichier

Créer un fichier non compressé

Un algorithme de compression très courant est GZIP. Ajoutons l'option pour même (|_+_|) à notre chaîne d'options de ligne de commande abrégée et voyons comment cela affecte la taille du fichier :

|__+_|

Regarder la taille d'un fichier compressé par rapport à un fichier non compressé

Cette fois, nous spécifions une expression régulière pour n'utiliser que des fichiers nommés un pour F , empêchant le |__+_| commande pour inclure le |__+_| fichier dans le nouveau |__+_| Fichier, archive !

Vous voyez comment vous utilisez les expressions régulières ? et Modifier le texte à l'aide d'expressions régulières à l'aide de sed si vous souhaitez en savoir plus sur les expressions régulières.

Nous avons également inclus le |__+_| option qui utilisera la compression GZIP pour compresser le fichier |__+_| fichier une fois le téléchargement des données terminé. Il est bon de voir qu'il nous reste un fichier de 186 octets, qui nous dit que, dans ce cas, le |__+_| L'en-tête/overhead d'environ 10 Ko peut être très bien compressé.

La taille totale du fichier est 7,44 fois la taille totale du fichier, mais cela n'a pas d'importance, car cet exemple fictif n'est pas représentatif de la compression de fichiers volumineux où vous voyez presque toujours des gains plutôt que des pertes, à moins que les données n'aient pas été pré-compressées ou est dans un format qui ne peut pas être facilement condensé à l'aide d'une variété d'algorithmes. Cependant, un algorithme (tel que GZIP) peut être meilleur qu'un autre (tel que BZIP2) et vice versa pour différents ensembles de données.

Obtenez plus d'octets en utilisant la compression de haut niveau

Pouvons-nous rendre le fichier encore plus petit ? Oui. Nous pouvons définir l'option de compression GZIP maximale en utilisant |__+_| option pour |__+_| qui nous permet de spécifier un programme de compression à utiliser (merci à débordement de pile idées de userman42):

|__+_|

Utilisez l'option -I pour tar afin de spécifier un programme de compression

Ici, nous avons spécifié |__+_| comme programme de compression pour utiliser et supprimer le fichier |__+_| option (puisque nous spécifions maintenant un programme personnalisé spécifique à utiliser au lieu d'utiliser la configuration tar GZIP intégrée). Le résultat est que nous avons 12 octets de moins en raison de la meilleure tentative de compression (mais généralement plus lente) de GZIP (niveau |_+_|).

En général, plus la compression est rapide (faible niveau de tentatives de compression, par exemple |_+_|), plus la taille du fichier est grande. De plus, plus la compression est lente (niveau élevé de tentatives de compression, par exemple |_+_|), plus le fichier est petit. Vous pouvez définir vos propres préférences en faisant varier le niveau de compression de |__+_| (rapide) à |_+_| (lent)

Autres programmes de compression

Il existe deux autres algorithmes de compression courants que vous pouvez explorer et essayer (différentes options d'algorithme donnent également des résultats de taille différente et peuvent avoir des options de compression supplémentaires), à savoir bzip2 , qui peut être utilisé en spécifiant le fichier |__+_| option pour |__+_|, est XZ qui peut être utilisé en spécifiant le |__+_| option.

Alternativement, vous pouvez utiliser le |__+_| pour définir les options de compression maximale pour |__+_| (|_+_|) :

bzip -9 exemple de programme de compression

FR | _ + _ | pour | _ + _ | :

xz -9e exemple de programme de compression

Comme vous pouvez le constater, les résultats sont moins bons dans ce cas qu'avec l'algorithme GZIP assez classique. cependant, le |_+_| est |__+_| les algorithmes peuvent montrer des améliorations avec d'autres ensembles de données.

Décompresser un fichier

Décompresser un fichier est très facile, quelle que soit la méthode originale de compression, tant que cet algorithme de compression est présent sur votre ordinateur. Par exemple, si l'algorithme de compression d'origine était bzip2 (indiqué par une extension |_+_| au nom du fichier tar), alors vous voudriez avoir |_+_| (ou |__+_|) sur l'ordinateur de destination qui doit décompresser le fichier.

|__+_|

Décompresser un fichier tar compressé (ou non compressé)

Nous spécifions simplement |__+_| pour développer ou déballez le nôtre |__+_| fichier et indiquez le nom du fichier en utilisant à nouveau le fichier |__+_| option de raccourci comme avant.

La compression de fichiers peut vous aider à économiser beaucoup d'espace sur vos périphériques de stockage et à savoir comment les utiliser. |__+_| en combinaison avec les options de compression disponibles, cela vous aidera à le faire. Une fois que le fichier doit être extrait à nouveau, il est facile de le faire tant que le bon logiciel de décompression est disponible sur l'ordinateur utilisé pour décompresser ou extraire les données du fichier. Prendre plaisir!

Qu'est-ce que tu penses?