7zip
ist eher ein Verdichter (wie PKZIP) als ein Kompressor. Es ist für Linux verfügbar, kann jedoch nur komprimierte Archive in regulären Dateien erstellen. Beispielsweise kann es keinen Stream komprimieren. Es ist nicht in der Lage, die meisten Unix-Dateiattribute wie Eigentümer, ACLs, erweiterte Attribute, feste Links ... zu speichern.
Unter Linux als Kompressor , haben Sie , xz
dass der gleichen Kompressionsalgorithmus wie verwendet 7zip
(LZMA2). Sie können es verwenden, um Tar-Archive zu komprimieren.
Wie für gzip
und bzip2
gibt es eine parallele Variante pixz
, die mehrere Prozessoren nutzen kann, um die Komprimierung zu beschleunigen ( xz
kann dies seit Version 5.2.0 mit der -T
Option auch von Haus aus tun ). Die pixz
Variante unterstützt auch die Indizierung eines komprimierten tar
Archivs, was bedeutet, dass eine einzelne Datei extrahiert werden kann, ohne dass die Datei von Anfang an dekomprimiert werden muss.
lrzip ist , was Sie wirklich suchen, vor allem , wenn Sie Quellcode sind komprimiert!
Zitieren der README:
lrzip sucht zunächst mit einem rzip-basierten Algorithmus nach Datenredundanz über große Entfernungen und entfernt diese. Anschließend werden die nicht redundanten Daten komprimiert.
Con Kolivas bietet ein fantastisches Beispiel in der Linux-Kernel-Mailingliste . Dabei komprimiert er einen 10,3-GB-Tarball von 40 Linux-Kernel-Releases auf 163,9 MB (1,6%) und zwar schneller als xz. Er verwendete nicht einmal den aggressivsten Second-Pass-Algorithmus!
Ich bin sicher, Sie werden großartige Ergebnisse beim Komprimieren massiver Tarballs von Quellcode erzielen :)
Beispiel (Standard für andere Optionen verwenden):
Ultra-Kompression, Hund langsam:
Ändern Sie
lrzip
für Ordner nur fürlrztar
quelle
lrzip
auch sehr gut für Backups von Dateibäumen vontar/cpio/pax
Ed-Systemen funktioniert, da diese normalerweise viele Redundanzen mit großer Reichweite enthalten, waslrzip
sich sehr gut zum Komprimieren eignet.lrzip
undpixz
auf eine 19 GB Textdatei. Beide brauchten ungefähr eine halbe Stunde, um es zu komprimieren (auf einem Hexa-Core-Computer), aber dielrz
Datei war halb so groß wie diexz
Datei (2,7 gegenüber 4,4 GB). Also noch eine Stimme für diese Antwort statt.Wenn Sie unabhängig von der Komprimierungsgeschwindigkeit die größtmögliche Größenreduzierung wünschen,
LZMA
ist dies wahrscheinlich die beste Option.Beim Vergleich der verschiedenen Komprimierungen ist der Kompromiss im Allgemeinen Zeit vs. Größe.
gzip
neigt dazu, relativ schnell zu komprimieren und zu dekomprimieren, während sich ein gutes Kompressionsverhältnis ergibt.bzip2
ist etwas langsamer alsgzip
sowohl in der Komprimierungs- als auch in der Dekomprimierungszeit, ergibt jedoch noch größere Komprimierungsverhältnisse.LZMA
hat die längste Komprimierungszeit, liefert aber die besten Verhältnisse, während die Dekomprimierungsrate die von übertrifftbzip2
.Quellen: http://bashitout.com/2009/08/30/Linux-Compression-Comparison-GZIP-vs-BZIP2-vs-LZMA-vs-ZIP-vs-Compress.html
http://tukaani.org/lzma/benchmarks.html
quelle
zpaq
oderpaq8l
. Sie sind jedoch so langsam, dass sie für die meisten realen Anwendungen unpraktikabel sind.sudo apt-get install zpaq
, ich habe einige Tests gemacht, laut Wiki , dass die App die neueste von 2009 sein würde, aber sie verliert immer noch für kg (die PAQ6 verwendet), aber kg ist VIEL langsamer ...zpaq pvc/usr/share/doc/zpaq/examples/max.cfg file.zpaq file.tar
komprimiert mehr alskgb -9
(aktualisierte Antwort) Wenn die Zeit keine Rolle spielt, verwenden Sie ZPAQ v1.10 (oder neuer). Beispiel:
zpaq pvc/usr/share/doc/zpaq/examples/max.cfg file.zpaq file.tar
(Der Speicherort der Datei max.cfg kann variieren. Überprüfen Sie die Liste der installierten Paketdateien.)zpaq
eigentlich mehr als komprimiertkgb -9 newFileName.kgb yourFileName.tar
.Das basiert auf dem älteren Algorithmus PAQ6 und ist sehr langsam ...
Ich habe mit allen anderen Kompressoren wie 7zip, lrzip, bzip2, kgb .. und zpaq am meisten komprimiert!
Wenn
kgb
dich nochimmer Folgendes interessiert: (Da dies meine erste Wahl für diese Antwort war, behalte ich die Informationen hier) Ubuntu 14.04 hat kgb 1.0b4 , starte es , um es
sudo apt-get install kgb
zu installieren.Im Folgenden geht es um eine Windows-Version, die Sie unter
kgb
Linux ausführen / kompilieren können , die mir jedoch nicht gelungen ist.Version 2 Beta2 ist auf SourceForge verfügbar, es sind jedoch keine Linux-Binärdateien verfügbar. Sie können versuchen, es in der Konsole mit auszuführen
wine kgb2_console.exe -a7 -m9
(Methode-a6 -m9
scheint der besten Methode in 1.0b4 zu entsprechen,-a7
ist neu in 2 Beta2). Obwohl ich durch die Installation von .NET 2.0 mit Winetricks und dem Laufen eine bessere Stabilität hattewine "KGB Archiver 2 .net.exe"
(ich mag das ein bisschen nicht, also bleibe ich bei nativem Linux 1.0b4, das fast dasselbe Ergebnis wie 2 Beta2 hat).Wie auch immer, Version 2 Beta2 verdient ernsthaft eine native Linux-Version! Vielleicht kann mit MinGW etwas erreicht werden, siehe dies , aber dieser Befehl schlägt immer noch fehl:
i586-mingw32msvc-g++ kgb2_console.cpp -o kgb
. Vielleicht versuchen Sie es mitdmcs
(Mono) zu kompilieren ? siehe diesen tipp .quelle
7zip ist keine einzigartige Technologie, sondern unterstützt verschiedene Komprimierungsmethoden (siehe Wikipedia 7z dazu).
Eine Reihe von Tests wurde mit verschiedenen Tools speziell für C-Quelldateien durchgeführt. Ich bin mir nicht sicher, welches der Tools für Linux noch vorhanden ist. Sie können jedoch feststellen, dass der beste Algorithmus PPM mit Modifikationen (PPMII, dann PPMZ) war.
Wenn Sie an den Tools interessiert sind, können Sie die Website durchsuchen. Sie ist auf Russisch, aber Google Translate kann hilfreich sein. Es gibt eine große Anzahl von Binärdateien , die Sie bei Bedarf unter Linux mit Wein verwenden können (oder nicht können).
quelle