9
votes

Les liens durs sont-ils possibles dans une archive ZIP?

Je crée une archive zip contenant deux fichiers identiques sur différents chemins. Le format ZIP ARCHIVE supporte-t-il quelque chose d'appartenance au concept UNIX de liens durs? Par cela, je veux dire la possibilité de stocker le fichier une seule fois (sauvegarder l'espace), mais d'indexer que les données blob de deux chemins différents dans les archives ZIP.

Si le format de fichier prend en charge cela, comment pourrais-je créer une telle archive à l'aide d'outils gratuits à Ubuntu?


0 commentaires

3 Réponses :


9
votes

Non, le Format de fichier zip ne supporte pas cela. En effet, l'en-tête de fichier local contient des informations sur le fichier, y compris son nom, suivie immédiatement par les données compressées pour le fichier. Il n'est pas possible pour deux en-têtes de fichier locaux différents de pointer vers les mêmes données compressées.


2 commentaires

Merci - je soupçonnai autant, mais j'espérais y avoir une astuce que je n'avais pas pensée.


Selon pkware.cachefly.net/webdocs/casestudes/appnote.txt , Dans le champ Extra Unix, le champ de données de longueur variable peut contenir des informations sur les "liens symboliques ou durs". Cela suggère que certaines implémentations pourraient supporter cela. Tu ne penses pas?



11
votes

Comme @greg dit, ZIP ne supporte pas les lignes hardlinks.

Mais si je comprends bien, votre objectif est de réduire la taille de l'archive comprimée. Alors pensons à une solution alternative. P>

permet d'exécuter des tests simples pour vérifier le rapport de compression de différentes bibliothèques d'archives. J'ai créé deux fichiers binaires identiques et les a comprimés à l'aide de ZIP, BZ2, RAR et 7Z. P>

$rar a -m5 test1.rar test.bin
$rar a -m5 test2.rar test.bin test2.bin 

 8649970  test1.rar
17299916  test2.rar


2 commentaires

Comment ça va le meilleur travail? Est le plus grand le nombre le mieux?


@ user321627 Le numéro est la taille du fichier compressé, de sorte que la plus petite taille des archives est la meilleure



4
votes

Archives de goudron prend en charge les liens durs


1 commentaires

Cette réponse est trop terres. Sauvegardez votre affirmation avec des liens et des informations de base.