it-swarm-es.com

¿Cómo configura el tamaño de Bzip2 Block al usar TAR?

Estoy usando tar para hacer una copia de seguridad de un servidor Linux para grabar. Estoy usando el -j Opción para comprimir el archivo con bzip2, sin embargo, no puedo ver una manera de ajustar las opciones de tamaño de bloque para BZIP2 de TAR. El tamaño de bloque predeterminado es de 900,000 bytes, lo que da la mejor compresión, pero es la más lenta. No me molesta la proporción de compresión, por lo que estoy buscando hacer que BZIP2 se ejecute más rápido con un tamaño de bloque más pequeño.

9
Guy C
export BZIP=--fast
tar cjf foo.tar.bz2 foo

O ponga la salida de tar a bzip2.

Aunque debe tener en cuenta de la página de hombre BZIP2:

 -1 (o - rápido) a -9 (o --Best) 
 Establezca el tamaño del bloque a 100 K, 200 k .. 900 K cuando se comprime. 
 Tiene Sin efecto cuando descomprime. Consulte la gestión de la memoria a continuación. [.____] los alias de pieles y más rápidos son principalmente por GNU GZIP Compat - 
 Ibility. En particular, -fast no " T Hacemos las cosas signifi - 
 Cantly más rápido. Y --Best simplemente selecciona el comportamiento predeterminado. 
9
Brian Campbell
tar -cjf dir.tar.bz2 --options bzip2:compression-level=9 path/to/dir/
4
steveayre

Envíe la salida tar a stdout y luego pídalo a través de bzip2 por separado:

% tar cvf - _file_ | bzip2 _opts_ > output.tar.bz2
1
Alnitak

Es aún más fácil:

% tar -cvf dir.tar path/to/dir/ && bzip2 -9 dir.tar
0
Andreas Spindler