Compresión de archivos de Linux: todo lo que necesita saber

La compresión es una técnica informática importante que utilizan los programas, los servicios y los usuarios para ahorrar espacio y mejorar la calidad del servicio. Por ejemplo, si descarga un juego a través de una plataforma de juegos, generalmente descarga una versión comprimida para ahorrar tiempo y espacio. La descompresión tiene lugar después de descargar el archivo o durante el proceso de instalación.

Pero, ¿por qué les cuento todo esto? Bueno, hoy, revisaré la compresión de archivos de Linux y le mostraré todo lo que necesita saber.

Entendiendo la Compresión

Antes de seguir adelante y aprender sobre la compresión de Linux, primero comprendamos más cosas sobre la compresión.

La compresión es una técnica para reducir el tamaño del archivo en un disco dado usando diferentes cálculos matemáticos y algoritmos. El propósito principal de la compresión es ahorrar espacio. Esto es posible en la forma en que se almacenan los archivos en las unidades de disco duro. Los algoritmos o cálculos matemáticos encuentran un patrón y comprimen esa parte para que pueda volver a generarlo con poca o ninguna pérdida de detalle. En resumen, el contenido repetido allana el camino para que funcione la compresión.

Hay dos tipos de compresión que debe conocer. Son compresión con pérdida y sin pérdida.

Compresión sin perdidas

Es una técnica de compresión que no pierde información y los datos reales se pueden recuperar del archivo comprimido. La compresión con pérdida es útil para reducir el tamaño del archivo sin perder la calidad del archivo original.

Compresión con pérdida

Por otro lado, existe una técnica de compresión con pérdida que comprime un archivo para ahorrar espacio, pero el archivo comprimido no se puede utilizar para recuperar el contenido del archivo original. En este caso, se pierde información.

Para entender esto, veamos un ejemplo. Puede tomar una imagen sin procesar y luego comprimir usando el modo con pérdida y sin pérdida. En la compresión sin pérdida, el tamaño de la imagen disminuirá ligeramente y podrá retener la imagen original si descomprime la imagen. En la mayoría de los casos, se utiliza un formato PNG para la compresión sin pérdidas. Sin embargo, si usa la compresión con pérdida, obtendrá una salida de imagen que no se puede revertir a la original. En este caso, la imagen resultante es un formato JPEG / JPG.

Los algoritmos de compresión son excelentes a su manera y aportan valor al usuario. Los algoritmos más nuevos utilizan un método adaptativo en el que son rápidos y más precisos en su técnica de compresión.

Diferentes formas de comprimir archivos en Linux

Para comprender la compresión en Linux, primero debemos crear un archivo para probar los métodos de compresión. Para hacerlo, podemos generar aleatoriamente un archivo usando el siguiente procedimiento.

base64 /dev/urandom | head -c 3000000 > mynewfile.txt

Para conocer el tamaño del archivo recién creado, puede ejecutar el siguiente comando.

ls -l --block-size=MB

verificación de tamaño de archivo
Comprobación del tamaño de archivo del archivo recién creado

También puede verificar el tamaño del archivo utilizando el explorador de archivos y verificando el tamaño del archivo en sus propiedades.

informacion del archivo
Comprobando las propiedades del archivo

Creemos varias copias del archivo para que podamos usarlo para probar técnicas de compresión.

creando-copias-múltiples
Creando múltiples copias

El tamaño total de la carpeta en la que se almacenan los archivos es de 150 MB.

Compresión de cremallera

Una de las técnicas de compresión estándar que encontrará en Linux es la técnica de compresión zip. Para ejecutar el comando zip en los archivos que tenemos, debe ejecutar el siguiente comando.

zip <output>.zip <input>

Entonces, para comprimir los cinco archivos que tenemos en la carpeta, necesitamos ejecutar el siguiente comando.

zip testing1.zip *

El comando tardará algún tiempo en ejecutarse y lo verá suceder frente a sus ojos.

zip-compresión-en-acción
Compresión de cremallera en acción

Como puede ver, cada uno de los archivos se redujo en un 24%. Con un ahorro del 24%, el tamaño final es de 114 MB. Eso es bastante bueno. El resultado habría sido diferente si hubiéramos utilizado archivos fuente adicionales. Una cosa más que habrías notado es que utiliza la técnica de compresión desinflada.

carpeta-zip-tamaño-final
El tamaño final de la cremallera después de la compresión.

Para descomprimir el archivo, debe usar el siguiente comando.

descomprimir &ampltnombre de archivo&ampgt .zip -d &ampltdestino&ampgt

Como puede ver, puede establecer un destino. También puede descomprimir en la misma carpeta simplemente usando el comando sin el parámetro de destino.

Compresión Gzip

Ahora que hemos pasado por la compresión zip, es el momento de la compresión GNU Zip o gzip. También es un método popular para comprimir archivos en Linux. Jean-Loup Gailly y Mark Adler lo crean.

Además, es mejor que el método de compresión zip, ya que ofrece una mejor compresión. La sintaxis para usar la compresión Gzip es la siguiente.

gzip <option> <input>

Para comprimir los archivos que tenemos, necesitamos usar el siguiente comando.

gzip -v mynewfile1.txt

Esto comprimirá el archivo, “mynewfile1.txt”, y luego lo llamará “mynewfile1.txt.gz”.

prueba-gzip
Probando Gzip

El tamaño final del archivo es de 22,8 MB, que es una compresión bastante impresionante.

También puede comprimir toda la carpeta utilizando el indicador recursivo -r. La sintaxis es la siguiente:

gzip -r <folder_path>

También puede personalizar el nivel de compresión para Gzip. El valor del nivel de compresión se puede establecer entre 1 y 9. 1 representa la compresión más rápida y mínima, mientras que nueve representa la compresión más lenta pero la mejor compresión.

gzip -v -9 mynewfile1.txt

Para descomprimir el archivo gzip, debe usar el siguiente comando.

gzip -d <gzip_file>

Compresión Bzip2

El último tipo de compresión que vamos a discutir es Bzip2. Es una herramienta gratuita y de código abierto. Utiliza el algoritmo de Burrows-Wheeler.

La técnica de compresión es bastante antigua, ya que se introdujo por primera vez en 1996. Puede utilizar Bzip2 en su trabajo diario. Es rápido y funciona de manera similar a la de la herramienta gzip. La sintaxis de la técnica de compresión Bzip2 es la siguiente:

bzip2 <option> <input>

Intentemos comprimir el archivo usando bzip2.

compresión bzip2
Compresión bzip 2

Al igual que con gzip, también puede establecer la fuerza de la compresión de 1 a 9.

Para descomprimir el archivo, debe usar el siguiente comando.

bzip2 -d <filename>

Archivo

Hay otro término importante que debemos aprender aquí.

El archivo es el método de hacer una copia de seguridad de los datos en una ubicación segura utilizando un formato comprimido (generalmente). En el servidor Linux, encontrará la extensión de archivo tar que significa que es un archivo archivado. El formato tar es excelente cuando se trata de manipular y direccionar diferentes archivos. Puede mantener intactos los metadatos y los permisos y, por lo tanto, se utiliza principalmente con fines de archivo en sistemas Linux.

La sintaxis del comando tar es la siguiente.

tar <option> <output_file> <input>

compresión de alquitrán
Compresión de alquitrán

Para extraer, debe usar el siguiente comando.

tar -xvf <archieved-file-name>

Conclusión

Esto nos lleva al final de nuestra guía de compresión de Linux. Como puede ver, hay muchas formas de realizar la compresión de archivos. Además, el proceso de archivo tiene un uso exclusivo. Entonces, ¿qué opinas sobre la compresión de archivos de Linux? ¿Lo usas mucho? Háganos saber en los comentarios a continuación.

Leave a Comment

Your email address will not be published. Required fields are marked *

Hazlo Linux