rsync --compress-level: Welche Komprimierungsstufen können verwendet werden?


13

Rsync verfügt über Befehlszeilenargumente für die Komprimierung:

-z, --compress              compress file data during the transfer
    --compress-level=NUM    explicitly set compression level

Was --compress-levelbedeutet Welche Zahlen können als Level verwendet werden?

Antworten:


16

es sind Werte zwischen 0-9. Wo 1 am schnellsten ist, ist 9 am stärksten komprimiert. Ansonsten besteht eine Korrelation zwischen rsync und zlib, wobei rsync der zlib-Bibliothek anweist, "die Standardkomprimierung zu verwenden". In den Dokumenten von zlib heißt es:

Z_DEFAULT_COMPRESSION fordert einen Standardkompromiss zwischen Geschwindigkeit und Komprimierung an (entspricht derzeit Stufe 6).


Der Ursprung dieser Ebenen ist also zlib?
— Cronfy

Ja, aber Sie werden in der Lage sein, wenn Sie den Wert zum Beispiel in rsync 0 einstellen, dann würde er dekomprimiert und dann in dieser Form gesendet.
— Michal

0

Die verwendete Umgebung bestand aus zwei Docker-Containern, die mit MACVLAN + etwas Rauschverkehr verwendet wurden (was ungefähr ± 1% Fehler ergibt). Die Datei X ist - in meinem Fall - eine Binärdatei

Im Folgenden finden Sie das Ergebnis von rsync-geteerten Dateien im Vergleich zu rsync mit Komprimierungsdateien (Option -z), die nicht geteert wurden

      1. File tarred + rsync without compression (rsync -axvPAH fileX.tar destination:/path)

    File size is 56933 bits (fileX.tar)
    Transfer difference is 4735665-4673346=62319 bits

      2. File tarred + rsync with default compression (rsync -axvPAH -z fileX destination:/path)

    File size is 56933 (fileX.tar)
    Transfer difference is 4933845-4871608=62237

      3. File tarred + rsync with maximum compression (rsync -axvPAH -z --compress-level=9 fileX.tar destination:/path)

    File size is 56933 bits (fileX.tar)
    Transfer difference is 4870664-4808387=62277

      4. File untarred + rsync with default compression (rsync -axvPAH -z fileX destination:/path)

    File size is 237525 bits (fileX)
    Transfer difference is 4669946-4607637=62309 bits

      5. File untarred + rsync with maximum compression (rsync -axvPAH -z --compress-level=9 fileX destination:/path)

    File size is 237525 bits (fileX)
    Transfer difference is 4806735-4744764=61971 bits

      6. File untarred + rsync without compression (makes no sense since it’s the most bandwidth consuming one) 
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.