Existen varios formatos para comprimir y descomprimir desde la terminal en Linux. Estos permiten reducir el espacio que ocupan en disco los ficheros o hacer que su envío por Internet sea más cómodo.
En el mundo GNU/Linux los mas comunes son tar.bz2, tar.gz y zip, pero otra cosa es cual usar en cada momento.
Los formatos de compresión reducen el tamaño en disco de los ficheros, lo cual es muy útil cuando se anda escaso de espacio en disco. También podemos «empaquetar» varios archivos juntos, por lo que se puede usar para enviar varios archivos a través de la red, a una memoria USB y ahorrarnos la labor de ir adjuntando los ficheros uno a uno, ademas de tiempo de transferencia.
La respuesta es sencilla:
Tabla de contenido
Formato tar.bz2
Se usarán cuando se desee comprimir mucho la información. Comparado con los otros 2 es el que más comprime, pero esto tiene un coste. Es el que más tarda en comprimir/descomprimir la información.
Formato tar.gz
Se usará cuando se desee comprimir la información rápidamente y con un grado de compresión aceptable. Comprime menos que el formato tar.bz2, pero es mucho más rápido.
Formato zip
Tiene unas características similares al formato tar.gz, pero se comporta muy bien cuando hay que descomprimir sólo una parte del fichero.
Por ejemplo, imagina que se tuviera una gran cantidad de documentación separada en muchos ficheros. De vez en cuando tuvieseis que leer la documentación de alguno de dichos ficheros. El formato idóneo para esta situación sería comprimir todos los ficheros en zip, pues el formato zip permite extraer rápidamente porciones del fichero comprimido.
Otro ejemplo, imagina que quieres hacer copias de seguridad periódicas de la información de tu ordenador. Los formatos más recomendables serían el tar.bz2 o el tar.gz, dado el alto grado de compresión. Si se dispone de mucho tiempo para hacer la copia de seguridad sería bueno usar el formato tar.bz2, pues comprime mucho más que los otros dos. Si nos corre prisa, se debería usar el formato tar.gz, pues es más rápido que el tar.bz2.
¿Cómo comprimir/descomprimir?
Para comprimir o descomprimir un arhivos tenemos por ejemplo a file-roller en Gnome, o el programa Ark en KDE. En ambos casos se nos proporciona una interfaz gráfica en la que es fácil realizar estas acciones.
Si nos gusta la consola, se usará:
.tar (tar)
Instalar
sudo apt-get install tar
Empaquetar
tar cvf archivo.tar /archivo/mayo/*
Desempaquetar
tar xvf archivo.tar
Ver el contenido
tar tvf archivo.tar
.tar.gz – .tar.z – .tgz (tar con gzip)
Empaquetar y comprimir
tar czvf archivo.tar.gz /archivo/mayo/*
Desempaquetar y descomprimir
tar xzvf archivo.tar.gz
Ver el contenido
$ tar tzvf archivo.tar.gz
Las opciones de tar:
-z: Comprimir archivos usando gzip
-c: Crear un nuevo archivo
-v: Verbose, es decir, mostrar el proceso durante la creacion del archivo
-f: Nombre de archivo
-x: Extrae el contenido del archivo comprimido
.gz (gzip)
Instalar:
sudo apt-get install gzip
Comprimir (comprime y renombra como «archivo.gz»):
gzip -q archivo
Descomprimir (Descomprime y lo deja como «archivo»:
gzip -d archivo.gz
Nota: gzip solo comprime archivos, no directorios. Si quisiéramos comprimir varios ficheros y archivarlos en uno solo, como los casos de los compresores zip o rar, hay que combinar tar con gzip o con bzip2 como muestro a continuación.
.bz2 (bzip2)
Instalar:
sudo apt-get install bzip2
Comprimir (Comprime y lo renombra como «archivo.bz2»):
bzip2 archivo
bunzip2 archivo
Descomprimir (Descomprime y lo deja como «archivo»)
bzip2 -d archivo.bz2
bunzip2 archivo.bz2
Nota: bzip2 solo comprime archivos, no directorios. Para comprimir varios ficheros y archivarlos en uno solo, al estilo de los compresores zip o rar hay que combinar tar con gzip o con bzip2 como muestro a continuación.
.tar.bz2 (tar con bzip2)
Comprimir:
tar -c archivos | bzip2 > archivo.tar.bz2
Descomprimir:
bzip2 -dc archivo.tar.bz2 | tar -xv
tar jvxf archivo.tar.bz2
Ver contenido:
bzip2 -dc archivo.tar.bz2 | tar -tv
.zip (zip)
Instalar:
sudo apt-get install zip unzip
Comprimir:
zip archivo.zip /mayo/archivos
Descomprimir:
unzip archivo.zip
Ver contenido:
unzip -v archivo.zip
.lha (lha)
Comprimir:
lha archivo.lha /mayo/archivos
Descomprimir:
lha -x archivo.lha
Ver contenido:
lha -v archivo.lha o $ lha -l archivo.lha
.zoo (zoo)
Instalar:
sudo apt-get install zoo
Comprimir:
zoo -a archivo.zoo /mayo/archivos
Descomprimir:
zoo -x archivo.zoo
Ver contenido:
zoo -v archivo.zoo o $ zoo -L archivo.zoo
.arj
Instalar:
sudo apt-get install arj unarj
Comprimir:
arj a archivo.arj ficheros
Descomprimir:
unarj archivo.arj
arj x archivo.arj
Ver contenido:
arj v archivo.arj
arj l archivo.arj
.rar (rar)
Instalar:
sudo apt-get install rar
Comprimir:
rar -a archivo.rar /mayo/archivos
Descomprimir:
rar -x archivo.rar
Ver contenido:
rar -v archivo.rar
rar -l archivo.rar
Para profundizar mas en el tema, abajo dejo las paginas que me ayudaron:
http://www.linuxtotal.com.mx/?cont=info_admon_004
Y una guia muy buena que consegui a ultima hora:
http://www.emezeta.com/articulos/la-guia-definitiva-de-formatos-de-compresion
Cuéntanos en los comentarios que formato utilizas y porqué.
Saludos!