Ich hatte eine große (~ 60G) komprimierte Datei ( tar.gz
).
Ich habe split
es in 4 Teile zerlegt und sie dann cat
wieder zusammengefügt.
Wenn ich jetzt jedoch versuche, die Größe der unkomprimierten Datei zu schätzen, stellt sich heraus, dass sie kleiner als das Original ist. Wie ist das möglich?
$ gzip -l myfile.tar.gz
compressed uncompressed ratio uncompressed_name
60680003101 3985780736 -1422.4% myfile.tar
compression
gzip
split
pkaramol
quelle
quelle
split
wirklich relevant? Haben Sie das Problem erst, nachdem Sie sie aufgeteilt und wieder zusammengefügt haben?Antworten:
Dies wird durch die Größe des Felds verursacht, in dem die unkomprimierte Größe in komprimierten Dateien gespeichert wird: Es sind nur 32 Bit, sodass
gzip
nur Dateigrößen bis zu 4 GiB gespeichert werden können. Alles, was größer ist, wird korrekt komprimiert und dekomprimiert,gzip -l
ergibt jedoch eine falsche unkomprimierte Größe.Das Aufteilen und Rekonstruieren des Tarballs hat dies also nicht verursacht und sollte die Datei nicht beeinträchtigen. Wenn Sie sicherstellen möchten, können Sie dies überprüfen
gzip -tv
.Weitere Informationen finden Sie unter Schnellste Methode zum Ermitteln der unkomprimierten Größe einer großen GZIPPED-Datei sowie im
gzip
Handbuch :quelle