Solution 1 :
export BZIP=--fast
tar cjf foo.tar.bz2 foo
Ou dirigez la sortie de tar
à bzip2
.
Bien que vous devriez noter à partir de la page de manuel bzip2 :
-1 (or --fast) to -9 (or --best) Set the block size to 100 k, 200 k .. 900 k when compressing. Has no effect when decompressing. See MEMORY MANAGEMENT below. The --fast and --best aliases are primarily for GNU gzip compat- ibility. In particular, --fast doesn't make things signifi- cantly faster. And --best merely selects the default behaviour.
Solution 2 :
tar -cjf dir.tar.bz2 --options bzip2:compression-level=9 path/to/dir/
Solution 3 :
bzip2
tailles de bloc
bzip2
a quelques options de taille de bloc. À partir de la page de manuel bzip2(1)
:
-1 (or --fast) to -9 (or --best)
Set the block size to 100 k, 200 k .. 900 k when compressing.
Has no effect when decompressing. See MEMORY MANAGEMENT below.
The --fast and --best aliases are primarily for GNU gzip
compatibility. In particular, --fast doesn't make things
significantly faster. And --best merely selects the default
behaviour.
Comme vous voulez une compression plus rapide avec moins de taux de compression, utilisez bzip2
, vous semblez vouloir le -1
(ou --fast
).
Réglage bzip2
taille de bloc lors de l'utilisation de tar
Vous pouvez définir bzip2
taille de bloc lors de l'utilisation de tar
de plusieurs façons.
La méthode UNlX
Ma méthode préférée, la méthode UNlX, est celle où vous utilisez chaque outil indépendamment et les combinez via des canaux.
$ tar --create [FILE...] | bzip2 -1 > [ARCHIVE].tar.bz2
Vous pouvez lire cela comme "créer .tar avec tar
-> bzippez-le avec bzip2
-> écrivez-le en [ARCHIVE].tar.bz2
".
Variable d'environnement
Il est également possible de définir bzip2
options via la variable d'environnement BZIP2
. À partir de la page de manuel bzip2(1)
:
bzip2 will read arguments from the environment variables BZIP2 and BZIP,
in that order, and will process them before any arguments read from the
command line. This gives a convenient way to supply default arguments.
Donc, pour l'utiliser avec tar
, vous pourriez par exemple faire :
$ BZIP2=-1 tar --create --bzip2 --file [ARCHIVE].tar.bz2 [FILE...]
Alternatives plus rapides
bzip2
utilise un algorithme de compression lente. Si vous êtes préoccupé par la vitesse, vous pouvez rechercher des algorithmes alternatifs, tels que ceux utilisés par gzip
ou lzop
. Voici un bel article comparant les outils de compression :https://aliver.wordpress.com/2010/06/22/huge-unix-file-compresser-shootout-with-tons-of-datagraphs/