Archiving and compression (Español)
Las herramientas tradicionales de archivado y compresión de Unix se separan de acuerdo con la filosofía de Unix:
- Un archivador combina varios archivos en uno solo, por ejemplo tar.
- Una herramienta de compresión comprime y descomprime datos, por ejemplo gzip.
Estas herramientas a menudo se utilizan en secuencia creando primero un archivo de almacenamiento y luego comprimiéndolo.
Por supuesto, también hay herramientas que hacen ambas cosas, que tienden a ofrecer adicionalmente cifrado, detección de errores y recuperación.
Solo archivado
Nombre | Paquete | Manuales | Descripción |
---|---|---|---|
GNU tar | tar | tar(1), info | Utilidad principal para manipular los archivos de tar ubicuos (tarballs), que son utilizados por pacman y AUR. |
libarchive | libarchive |
bsdtar(1) bsdcpio(1) |
Implementación de tar y cpio que también ofrece una biblioteca. Utilizado por pacman y mkinitcpio. |
ar | binutils | ar(1) | Archivador de Unix heredado anterior a tar. Hoy solo se utiliza para crear archivos de biblioteca estáticos. |
cpio | cpio | cpio(1) | Archivador a través de stdin/stdout, soporta los formatos cpio y tar. |
DAR | darAUR | dar(1) | Archivador para hacer copias de seguridad de grandes sistemas de archivos en vivo, se encarga de los enlaces duros, atributos extendidos, archivos dispersos y tipos de inodo. |
-a
para filtrar automáticamente el archivo creado a través del programa de compresión adecuado en función de la extensión del archivo. Mientras que tar de BSD reconoce los formatos de compresión basados en el formato, tar de GNU lo adivina según la extensión del archivo.Véase también #Utilización para solo archivado.
Herramientas de compresión
Solo compresión
Estos programas de compresión implementan su propio formato de archivo de almacenamiento.
Nombre | Paquete | Manual | Ext | Ext tar | Descripción | Implementación multihilo |
---|---|---|---|---|---|---|
bzip2 | bzip2 | bzip2(1) | .bz2, .bz | .tbz2, .tbz | Utiliza el algoritmo Burrows–Wheeler. | lbzip2, pbzip2 |
gzip | gzip | gzip(1) | .gz, .z | .tgz, .taz | GNU zip, basado en el algoritmo DEFLATE. | pigz |
lrzip | lrzip | lrzip(1) | .lrz | Versión mejorada de rzip, utiliza varios algoritmos. | es multihilo | |
LZ4 | lz4 | lz4(1) | .lz4 | Escrito en C, orientado a la velocidad de compresión y descompresión. | es multihilo | |
lzip | lzip | lzip(1) | .lz | Utiliza LZMA. | plzipAUR | |
lzop | lzop | lzop(1) | .lzop | .tzo | Utiliza la biblioteca LZO (lzo). | |
xz | xz | xz(1) | .xz, .lzma | .txz, .tlz | Utiliza LZMA, predeterminado para GNU coreutils y el archivo del kernel. | is multihilo, pixz, pxz-gitAUR |
zstd | zstd | zstd(1) | .zst | Utiliza el algoritmo Zstandard. | es multihilo |
- Las implementaciones multihilo ofrecen velocidades mejoradas mediante el uso de múltiples núcleos de CPU.
- Las extensiones de tar se refieren a archivos comprimidos donde se utiliza
tar
y la herramienta de compresión, por ejemplo..tzo
es.tar.lzo
. - Véase también #Utilización para solo compresión.
Archivado y compresión
Nombre | Paquete(s) | Manuale(s) | Ext | Descripción |
---|---|---|---|---|
7z | p7zip | 7z(1) | .7z | Port POSIX de la línea de órdenes 7-zip. Véase p7zip. |
RAR | rarAUR, unrar | rar(1) | .rar | Tanto el formato como la utilidad rar son propietarios. |
ZIP | zip, unzip | zip(1), unzip(1) | .zip | Ampliamente utilizado fuera del mundo Linux. |
Unarchiver | unarchiver | unar(1), lsar(1) | many | Herramienta de línea de órdenes de una aplicación Mac, soporta más de 40 formatos de archivo de almacenamiento. |
ZPAQ | zpaqAUR | zpaq(1) | .zpaq | Un archivador de alta tasa de compresión escrito en C++, utiliza varios algoritmos. |
LHa | lhasa, lhaAUR | lha(1) | .lzh (en Amiga: .lha) | archivador LZH/LHA, soporta el método-lh7. |
Véase también #Utilización para archivado y compresión.
Tablas de características
Algunas de las herramientas anteriores son capaces de manejar múltiples formatos, lo que permite instalar menos paquetes.
Descompresión
Nombre | gzip | bzip2 | ZIP | LHa/LZH | RAR | compress | pack | CAB | ARJ |
---|---|---|---|---|---|---|---|---|---|
gzip | Sí | No | Parcial1 | No | No | Sí | Sí | No | No |
p7zip | Sí | Sí | Sí | Sí | Sí | No | Sí | Sí | Sí |
unarchiver | Sí | Sí | Sí | Sí | Sí | Sí | No | Sí | Parcial |
- gunzip de gzip solo puede descomprimir archivos ZIP de miembro simple.
Comparación de utilización
Utilización para solo archivado
Nombre | Crear archivo | Extraer archivo | Listar contenido |
---|---|---|---|
tar(1) | tar cfv archivo_almacenamiento.tar archivo1 archivo2 |
tar xfv archivo_almacenamiento.tar |
tar -tvf archivo_almacenamiento.tar
|
cpio(1) | ls archivo1 archivo2 | cpio -o > archivo_almacenamiento.cpio |
cpio -i -vd < archivo_almacenamiento.cpio |
cpio -t < archivo_almacenamiento.cpio
|
Utilización para solo compresión
Nombre | Comprimir | Descomprimir | Descomprimir a la salida estándar |
---|---|---|---|
bzip2(1) | bzip2 archivo |
bzip2 -d archivo.bz2 |
bzcat archivo.bz2
|
gzip(1) | gzip archivo |
gzip -d archivo.gz |
zcat archivo.gz
|
lrzip(1) |
lrzip archivo lrztar carpeta
|
lrzip -d archivo.lrz lrztar -d carpeta.tar.lrz
|
lrzcat archivo.lrz
|
xz(1) | xz archivo |
xz -d archivo.xz |
xzcat archivo.xz
|
Utilización para archivado y compresión
Nombre | Comprimir | Descomprimir | Descomprimir a la salida estándar | Listar contenido |
---|---|---|---|---|
7z(1) | 7z a archivo_almacenamiento.7z archivo1 archivo2 |
7z x archivo_almacenamiento.7z |
7z e -so archivo_almacenamiento.7z archivo1 |
7z l archivo_almacenamiento.7z
|
rar(1) y unrar | rar a archivo_almacenamiento.rar archivo1 archivo2 |
rar x archivo_almacenamiento.rar |
rar p -inul archivo_almacenamiento.rar archivo1 |
rar l archivo_almacenamiento.rar
|
zip(1), unzip(1) | zip archivo_almacenamiento.zip archivo1 archivo2 |
unzip archivo_almacenamiento.zip |
unzip -p archivo_almacenamiento.zip archivo1 |
unzip -l archivo_almacenamiento.zip
|
lha(1) | lha ao7 archivo.lzh archivo1 archivo2 |
lha x archivo.lzh |
mínimo: lha l archivo.lzh verboso: lha v archivo.lzh
|
Herramientas convenientes
- atool — Script para gestionar archivos de almacenamiento de varios tipos.
- dtrx — Una herramienta inteligente de extracción de archivos.
- unp — Herramienta de línea de órdenes que puede descomprimir archivos fácilmente.
- unpack — Script Wrapper para manejar múltiples formatos de archivo.
Determinar el formato de archivo
Para extraer un archivo, se debe determinar su formato. Si el archivo tiene el nombre correcto, puede deducir su formato a partir de su extensión.
De lo contrario, puede utilizar la herramienta file, véase file(1).
Herramientas esotéricas, raras u obsoletas
Nombre | Paquete(s) | Ext | Descripción |
---|---|---|---|
ARC | arcAUR | .arc, .ark | Fue muy popular durante los inicios de las BBS. Reemplazado por ZIP. |
ARJ | arj | .arj | Un archivador utilizado en DOS/Windows a mediados de la década de 1990. Este es una copia de código abierto. |
compress | ncompress | .Z | La utilidad clásica de compresión de Unix que puede manejar el antiguo archivo .Z. |
PAR2 | par2cmdline | .par2 | Archivador con paridad para una mayor integridad de los datos. Véase también Parchive. |
shar | sharutils | .shar | Crea archivos autoextraíbles que son scripts de shell válidos. |
Zoo | zooAUR | .zoo | Era sobre todo popular en el sistema operativo OpenVMS antes de que PKZIP se hiciera popular. |
Compresión del asignador de dispositivos
Se está trabajando para integrar (en el proyecto del kernel de Linux) el reciente proyecto VDO de código abierto, que proporciona una capa de deduplicación y compresión del asignador de dispositivos para aumentar la eficiencia del almacenamiento. Los siguientes paquetes están disponibles:
- vdo — Herramientas del espacio de usuario para gestionar volúmenes VDO
- kvdo — Un par de módulos del kernel que proporcionan grupos de almacenamiento de bloques deduplicados y/o comprimidos
Bibliotecas de compresión
- Brotli — Algoritmo de compresión para flujos de datos utilizando el algoritmo LZ77, la codificación de Huffman y el modelado de contexto de segundo orden.
- libzip — Proporciona la creación y extracción de archivos ZIP. Utilizado por KDE y Deepin en lugar de las herramientas de zip/unzip.
- zlib — Biblioteca de compresión que implementa el método de compresión deflate que se encuentra en gzip y PKZIP.
- Zopfli — Compresor de archivos de alta tasa de compresión de Google, utilizando un algoritmo compatible con deflate llamado zopfli.