rsync --compress-level: quels niveaux de compression peuvent être utilisés?

13

Rsync a des arguments en ligne de commande pour la compression:

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

Que veut --compress-leveldire? Quels nombres peuvent être utilisés comme niveau?

cronfy
la source

Réponses:

16

ce sont des valeurs comprises entre 0 et 9. Où 1 est le plus rapide, 9 est le plus compressé. En dehors de cela, il existe une corrélation entre rsync et zlib où about rsync indique à la bibliothèque zlib "d'utiliser la compression par défaut", dans les documents de zlib, il dit ceci:

Z_DEFAULT_COMPRESSION demande un compromis par défaut entre vitesse et compression (actuellement équivalent au niveau 6).

Michal
la source
Donc, l'origine de ces niveaux est zlib?
cronfy
oui, mais vous pourrez si vous définissez une valeur par exemple dans rsync 0 alors elle sera décompressée puis envoyée sous cette forme.
Michal
0

L'environnement utilisé était composé de deux conteneurs docker utilisés avec MACVLAN + du trafic de bruit (ce qui donne une erreur d'environ ± 1%) Le fichierX - dans mon cas - est binaire

Donc, ci-dessous sont le résultat des fichiers goudronnés rsync par rapport à rsync avec compression (option -z) des fichiers non goudronnés

      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) 
Zatarra
la source