GNU/Linux >> Tutoriels Linux >  >> Linux

Pourquoi les hachages md5 de deux archives tar du même fichier diffèrent-ils ?

Pour MacOS :

Dans man tar nous pouvons regarder --options section et nous y trouverons !timestamp option, qui exclura l'horodatage de notre archive gzip. Utilisation :

tar --options '!timestamp' -cvzf archive.tgz filename

Il produira la même somme md5 pour les mêmes fichiers avec les mêmes noms


tar czf outfile infiles est équivalent à

tar cf - infiles | gzip > outfile

La raison pour laquelle les fichiers sont différents est que gzip place son nom de fichier d'entrée et son heure de modification dans le fichier compressé. Lorsque l'entrée est un tube, elle utilise une chaîne vide comme nom de fichier et l'heure actuelle comme heure de modification.

Mais il a aussi un --no-name option, qui lui dit de ne pas mettre le nom et l'horodatage dans le fichier. Donc, si vous écrivez explicitement la commande développée, au lieu d'utiliser le -z option à tar , vous pouvez utiliser cette option.

tar cf - testfile | gzip --no-name > a.tar.gz
tar cf - testfile | gzip --no-name > b.tar.gz

J'ai testé cela sur OS X 10.6.8 et cela fonctionne.


Linux
  1. Comment obtenir la taille de tar.gz dans le fichier (Mo) en python

  2. Pourquoi le noyau est-il mappé sur le même espace d'adressage que les processus ?

  3. Comment combiner la commande 'tar' avec 'find'

  4. Pourquoi les liens durs semblent-ils occuper le même espace que les originaux ?

  5. Deux sous-répertoires avec la même racine sont-ils garantis d'être sur le même système de fichiers monté ?

Comment utiliser la commande Gzip sous Linux ?

comment puis-je différencier deux sections du même fichier ?

Est-ce que tar.gz et tgz sont la même chose ?

Extraire tar l'erreur de fichier tar.bz2

Comment compresser plusieurs fichiers dans un seul fichier gz?

Pourquoi le répertoire racine est-il désigné par un signe / ?