Ist es möglich, eine sehr große Datei (~ 30 GB) mit gzip zu komprimieren?


17

Ist es möglich, eine sehr große Datei (~ 30 GB) mit gzip zu komprimieren? Wenn ja, welche Befehle, Schalter und Optionen sollte ich verwenden?

Oder gibt es ein anderes Programm (vorzugsweise eines, das auf Ubuntu-Distributionen allgemein verfügbar ist), mit dem ich sehr große Dateien komprimieren / komprimieren kann? Hast du irgendwelche Erfahrungen damit?


Der meiste Hardcore-Kompressor ist xz oder seine parallele Version pxz. pxz -9ve - <in >out.xzund Sie werden ein Huhn auf Ihrem PC backen, aber das Ergebnis wird rund 60% des GZIP-Ergebnisses sein. Sie benötigen dafür ca. 7 GB.
Peterh - Wiedereinsetzung von Monica

Antworten:


22

AFAIK gibt es keine Größenbeschränkung für gzip- mindestens nicht 30GB. Natürlich benötigen Sie den Speicherplatz für die gezippte Datei auf Ihrer Disc. Beide Versionen werden beim Komprimieren gleichzeitig angezeigt.

bzip2 komprimiert Dateien (nicht nur große :-) besser, aber es ist (manchmal viel) langsamer.


4
bzip2 ist besonders gut bei der Komprimierung von Quellcode (und dergleichen). Es ist ein guter Konkurrent, Gzip auch für den generischen Gebrauch zu verwenden. Die Verfügbarkeit von gzip unter verschiedenen Betriebssystemen ist besser als bei bzip2
jippie

Ist bzip2 verlustfrei komprimiert? Vielen Dank.
Andrew

3
@ Andrew Ja, gzip / bzip2 / etc ... sind alle verlustfrei.
Renan

1
Und es gibt pbzipauch - das wird mehr als einen CPU-Kern verwenden. Aber immer noch viel langsamer als gzip.
Nils

1
@Nils: Auf meinem Ubuntu gibt es nurpbzip2
rubo77

8

Wenn Sie eine gute Komprimierungsrate benötigen, können Sie lzma ausprobieren. es ist schneller und effizienter als bzip2 und möglicherweise sogar schneller als gzip (das weiß ich nicht genau)

http://www.thegeekstuff.com/2010/06/lzma-better-compression-than-bzip2-on-unix-linux/


4
lzmawird zu Gunsten von xzjetzt veraltet . Gleicher Algorithmus, etwas anderes (verbessertes?) Dateiformat. LZMA ist langsamer als gzip, aber bei maximaler Geschwindigkeit ist es immer noch eine ziemlich gute Komprimierung für hochredundante Inhalte wie JSON-Daten. ( xz -0)
Peter Cordes

3

Wenn Sie das Limit erreichen, ordnen Sie es neu an. Anstatt von:

gzip file

tun:

gzip < file > file.gz

Funktioniert gut.


2

Das gzip-Format repräsentiert die Eingabegröße modulo 2 ^ 32, daher --listmeldet die Option falsche unkomprimierte Größen und Komprimierungsverhältnisse für unkomprimierte Dateien ab 4 GB.

Nehmen Sie also bzip2(v1.0.2 und höher) oder xz.


Wenn es sich genau genommen nur um gzip handeln soll, muss Ihre Datei in kleinere Teile mit jeweils bis zu 4 GB aufgeteilt werden.
Keilschrift

Hierfür stehen Dateisplitter zur Verfügung.
Vérace

Nun, es nicht hat aufgeteilt werden, es ist nur , dass die gemeldeten Größen falsch sein.
Law29

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.