GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo se configura el tamaño del bloque bzip2 cuando se usa tar?

Solución 1:

export BZIP=--fast
tar cjf foo.tar.bz2 foo

O canalice la salida de tar a bzip2 .

Aunque debe tener en cuenta en la página de manual de 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.

Solución 2:

tar -cjf dir.tar.bz2 --options bzip2:compression-level=9 path/to/dir/

Solución 3:

bzip2 tamaños de bloque

bzip2 tiene algunas opciones de tamaño de bloque. Desde la página del manual 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.

Como desea una compresión más rápida con menos relación de compresión, use bzip2 , parece que quieres el -1 (o --fast ) opción.

Configuración bzip2 tamaño de bloque cuando se usa tar

Puede configurar bzip2 tamaño de bloque cuando se usa tar en un par de formas.

Al estilo UNlX

Mi forma favorita, la forma UNlX, es aquella en la que usa cada herramienta de forma independiente y las combina a través de tuberías.

$ tar --create [FILE...] | bzip2 -1 > [ARCHIVE].tar.bz2

Puede leerlo como "crear .tar con tar -> comprímalo con bzip2 -> escribirlo en [ARCHIVE].tar.bz2 ".

Variable de entorno

También es posible configurar bzip2 opciones a través de la variable de entorno BZIP2 . Desde la página del manual 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.

Entonces, para usar eso con tar , podría, por ejemplo, hacer:

$ BZIP2=-1 tar --create --bzip2 --file [ARCHIVE].tar.bz2 [FILE...]

Alternativas más rápidas

bzip2 utiliza un algoritmo de compresión lenta. Si le preocupa la velocidad, puede investigar algoritmos alternativos, como los utilizados por gzip o lzop . Aquí hay un buen artículo que compara las herramientas de compresión:https://aliver.wordpress.com/2010/06/22/huge-unix-file-compresser-shootout-with-tons-of-datagraphs/


Linux
  1. ¿Qué edad tenías cuando empezaste a usar Linux?

  2. [Linux]:cómo excluir el directorio cuando se usa el comando de shell "tar"

  3. ¿Cómo establecer el límite de tamaño de carga de archivos en Apache?

  4. Cómo configurar el bloque GeoIP usando Apache

  5. ¿Cómo descargo recursivamente un directorio usando smbclient?

Cómo mostrar asteriscos cuando escribe una contraseña en la terminal

Cómo bloquear un puerto usando un firewall en Linux

Cómo bloquear XML-RPC en WordPress usando Nginx/Apache

Cómo bloquear ataques de fuerza bruta SSH usando SSHGUARD

Cómo configurar el servidor APT-Caching usando Apt-Cacher NG en Ubuntu 20.04

¿Cómo bloquear una dirección IP usando .htaccess?