75 votes

Qu'est-ce qui est le plus efficace - la compression tar ou zip ? Quelle est la différence entre tar et zip ?

Je travaille dans un environnement Linux et je veux connaître les commandes tar et zip.

Qu'est-ce qui est le plus efficace - tar ou zip ? J'ai également besoin de connaître les différences entre les commandes tar et zip. Quelqu'un peut-il me les expliquer ?

7voto

Les archives Zip contiennent un répertoire central de leur contenu à la fin (probablement pour éviter d'avoir à créer le répertoire au préalable, où vous ne savez pas encore ce qu'il y aura à l'intérieur). Cela permet d'extraire rapidement des fichiers individuels sans avoir à décompresser l'archive entière : Il suffit de lire le répertoire de l'archive et d'extraire uniquement ce qui est nécessaire. Cependant, cela nécessite que l'archive entière soit accessible, et requiert accès aléatoire qui n'est disponible que sur les périphériques en bloc (disquettes, disques durs). En outre, le répertoire d'archives est vulnérable : Si l'archive est tronquée pour une raison ou une autre, il faut faire preuve de beaucoup d'ingéniosité pour extraire tout ce qui est utile de l'archive.

Les archives Zip ont été créées pour les BBS, où il était important de pouvoir regrouper le contenu d'un répertoire en un seul fichier (compressé), au lieu de devoir télécharger des milliers de fichiers. De la même manière que la plupart des sites Web regroupent leurs téléchargements aujourd'hui encore, pour les mêmes raisons.

Les archives Tar ont été conçues pour regrouper les sauvegardes afin de les utiliser pour les lecteurs de bandes, et donc pour accès séquentiel . Il n'y a pas de répertoire central, mais l'archive contient des blocs d'en-tête à intervalles réguliers qui indiquent les fichiers qui suivront dans les blocs suivants. Les archives Tar sont destinées à être lues d'un seul coup ; si un seul fichier doit être extrait, l'archive est lue séquentiellement, en commençant par le tout début jusqu'à ce que le fichier demandé soit trouvé (ce qui peut aussi bien être à la toute fin). La compression est appliquée en plus de cela ; chacun des divers programmes de compression appliqués aux archives tar ( compress , gzip , bzip2 etc.) sont des compresseurs de flux et n'altèrent en rien la nature séquentielle de l'archive. Dans le pire des cas, vous aurez besoin d'un peu plus de blocs avant de pouvoir commencer à extraire.

Cette différence peut sembler insignifiante, mais elle représente en fait un opposé polaire dans la philosophie. Avec les archives zip, il est toujours nécessaire d'avoir le fichier entier à portée de main pour faire quoi que ce soit d'utile avec lui, alors qu'une archive tar peut être transmise en continu à un pipeline. Je peux télécharger une grosse archive tar et commencer à l'extraire dès le début, dès que les premiers blocs arrivent (et éventuellement interrompre le téléchargement dès que j'obtiens le fichier que je cherche). Pour une archive Zip, je dois attendre l'apparition du répertoire d'archivage, qui se trouve à la toute fin de l'archive. Mais une fois que j'ai hacer avoir le fichier entier à portée de main, l'extraction d'une partie de son contenu sera beaucoup plus rapide à partir d'un fichier tar.

Les deux formats ont un point fort, selon le lieu et la manière dont ils sont utilisés. Étant donné que les pipelines (et donc la notion de flux de données d'un processus à un autre) n'existent réellement que dans le monde Unix, le principal avantage des archives tar est perdu sur les autres systèmes, c'est pourquoi les archives Zip y sont beaucoup plus populaires. Mais les archives tar sont plus flexibles, c'est pourquoi je les préfère quand j'ai le choix.

5voto

IanH Points 1232

Comme les autres l'ont déjà dit, tar crée un grand "bloc" de tous les fichiers qui peuvent être compressés avec un compresseur de flux comme gzip ou bzip2.

L'inconvénient de cette méthode est que vous devez décompresser l'ensemble du fichier pour accéder à un fichier de l'archive.

L'avantage de cette méthode est que le taux de compression est généralement plus élevé, surtout lorsque les fichiers compressés sont très similaires.

D'autres emballeurs comme "rar" ont un "mode bloc" (ou similaire) pour avoir le même effet.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X