Checksumme und tar-Archiv

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
mario.neudeck
Beiträge: 455
Registriert: 07.09.2004 08:51:47
Wohnort: Dresden

Checksumme und tar-Archiv

Beitrag von mario.neudeck » 12.06.2006 21:46:59

Hallo,
ich erstelle aus einem Verzeichnis mit allen Unterverzeichnis ein archiv.tgz
Über archiv.tgz bilde ich dann eine Checksumme, mit perl (hexdigest). Die wird dann weggeschrieben. Unmittelbar darauf mache ich das ganze noch einmal, bilde aus dem gleichen Verzeichnis wieder ein archiv.tgz, und dann wieder die Checksumme. Vergleiche dann alt mit neu.

An den Verzeichnissen hat sich nichts geändert. Ich hatte gedacht, die Checksumme müßte damit die gleiche sein. Es kommt jedoch eine ganz andere raus. Ist mein Ansatz ein falscher und muß die Checksumme in jedem Fall unterschiedlich sein?

-Danke, Mario

nepos
Beiträge: 5238
Registriert: 05.01.2005 10:08:12

Beitrag von nepos » 13.06.2006 11:25:31

Wie erzeugst du die Checksumme genau?
Ueber welche Daten wird die Checksumme berechnet?

mario.neudeck
Beiträge: 455
Registriert: 07.09.2004 08:51:47
Wohnort: Dresden

Beitrag von mario.neudeck » 13.06.2006 11:54:59

Ich erzeuge die Checksumme über das erstellte archiv.tgz. In etwa so (gekürzt):

Code: Alles auswählen

#!/usr/bin/perl -w
use Digest::MD5;
my $ctx = Digest::MD5->new;
$ctx->addFile($archiv);
my $new_md5=$ctx->hexdigest;
Ich bin mir sicher, daß es am Inhalt des Archives keine Änderungen gibt.
Deshalb nehme ich an, daß mein Ansatz wegen dem Tar so nicht funktionieren kann? Oder sollte es doch?

Benutzeravatar
Joghurt
Beiträge: 5244
Registriert: 30.01.2003 15:27:31
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Joghurt » 13.06.2006 12:34:48

MD5 kannst du auch einfach mit dem Programm md5sum berechnen und überprüfen.

mario.neudeck
Beiträge: 455
Registriert: 07.09.2004 08:51:47
Wohnort: Dresden

Beitrag von mario.neudeck » 13.06.2006 18:06:42

Mit "md5sum" gibt es auch Differenzen. Offensichtlich kann ich das Verfahren so nicht nutzen.

mario.neudeck
Beiträge: 455
Registriert: 07.09.2004 08:51:47
Wohnort: Dresden

Beitrag von mario.neudeck » 13.06.2006 18:33:55

Dann hat sich das Probieren doch gelohnt: wenn ich die Checksumm nur über das ".tar" bilde , klappt es. Erst das "gzip" für zur Veränderung der Checksumme.

Benutzeravatar
Joghurt
Beiträge: 5244
Registriert: 30.01.2003 15:27:31
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Joghurt » 13.06.2006 18:50:03

Das liegt daran, dass gzip die Erstellungszeit der Originaldatei mit abspeichert. Und die ist ja nun nicht identisch. Wenn du das nicht willst, musst du die Option -n nutzen.

Antworten