Como la mayoría de las distribuciones modernas de Linux, Ubuntu viene con muchas herramientas por defecto para cada necesidad. Entre ellos, encontrará un Administrador de archivos con el que puede almacenar archivos en paquetes comprimidos. Sin embargo, hay un pequeño problema: es posible que aún sean demasiado grandes para lo que necesita. En tales casos, lo mejor que puede hacer es comprimir y dividir el archivo en partes más pequeñas.
Aunque Ubuntu viene con las herramientas para hacer precisamente eso, desafortunadamente, el Administrador de archivos no es el mejor para tales tareas. Ahí es cuando tendrás que dirigirte a la terminal. Afortunadamente, el proceso es fácil y puede comprimir y dividir sus archivos en trozos más pequeños con un solo comando. Veamos cómo.
Conozca su compresión
Antes de comenzar, tenemos que explicar algo sobre todas las formas de compresión que terminarán ahorrándole un tiempo precioso: no se acumula.
Con eso, queremos decir que si tienes un montón de archivos muy comprimidos, no ganarás mucho al volver a comprimirlos con un tipo de compresión diferente. Suponga que desea compartir archivos como imágenes JPG ya muy comprimidas, archivos de video MP4 u otros archivos comprimidos. En ese caso, no tiene sentido utilizar la configuración de compresión más alta disponible. Es mejor seleccionar «almacenarlos» (sin compresión) en un archivo.
Sin embargo, para archivos sin comprimir o ligeramente comprimidos, como archivos TXT, bases de datos grandes o medios sin comprimir, optar por la configuración de compresión más alta puede producir archivos radicalmente más pequeños.
El enfoque clásico de Linux
Digamos que desea comprimir un archivo como el ISO de Windows 10 que se usa aquí. Puede recurrir a herramientas clásicas como tar
, split
, y bzip
para comprimirlo y dividirlo en archivos más pequeños.
1. Encienda su terminal. La forma rápida es presionando CONTROL + ALT + T. Luego, muévase a la carpeta donde tiene el archivo grande que le gustaría almacenar en un archivo dividido. Para mantener las cosas limpias, cree una subcarpeta llamada «dividir», donde almacenaremos el archivo dividido, con:
mkdir split
Luego, ingréselo con:
cd split
- Utilice el siguiente comando para comprimir su archivo o carpeta en un archivo dividido:
tar -cvj FILENAME | split -b SIZE_OF_PARTS -d - "BASE NAME OF ARCHIVE"
Para nuestra ISO de Windows 10, nuestro comando se veía así:
tar -cvj ~/Data/Windows10.iso | split -b 50m -d - "Windows10_ISO.tar.bz."
- El “~ / Data / Windows10.iso” es la ruta y el nombre del archivo que queríamos comprimir.
-
split -b 50m
afirma que queremos dividir nuestro archivo en partes de 50 MB. Cambie ese valor para reflejar el tamaño que prefiere. -
Windows10_ISO.tar.bz.
es el nombre de archivo de los archivos comprimidos divididos. Observe que hay un punto adicional al final. Esto se debe a que cada fragmento también tendrá un número al final, que refleja su posición en la secuencia.
Poco después, según el tamaño de los archivos que esté comprimiendo y la velocidad de su computadora, encontrará las partes de su archivo dividido en la subcarpeta dividida.
Si comprueba su tamaño colectivo, será más pequeño que su total sin comprimir.
Para recuperar sus archivos originales, primero tendrá que volver a ensamblar todas las partes en un solo archivo con:
cat BASE_NAME_OF_PARTS.* > BASE_NAME_OF_PARTS.bz
Luego, extrae su contenido con:
tar -xvj REASSEMBLED_ARCHIVE.bz
En nuestro caso, los dos comandos anteriores se verían así:
cat Windows10_ISO.tar.bz.* tar -xvj Windows10_ISO.tar.bz
Sin embargo, podemos hacerlo mejor utilizando una herramienta de compresión más nueva, como verá a continuación.
La solución moderna de alta compresión
7Zip es un archivador moderno que ofrece altas tasas de compresión y también viene con soporte para archivos divididos. Por lo tanto, es una mejor solución para la tarea en cuestión. Sin embargo, Ubuntu no viene con él. Para instalar su versión de Linux, p7zip, use:
sudo apt install p7zip-full
Comprimir sus archivos en un archivo dividido con él es incluso más fácil que la solución predeterminada que vimos antes. Solo tiene que indicar el tamaño de cada archivo dividido, el nombre del archivo del archivo base y lo que desea comprimir, con:
7z -vSIZE_OF_SPLIT_FILES a ARCHIVE_FILENAME FILE_TO_COMPRESS
Para nuestro ejemplo de la ISO de Windows 10, para comprimirlo en un archivo de varias partes donde cada parte tendría un tamaño de 50 MB, el comando se ve así:
7z -v50m a Windows10_iso.7z ~/Data/Windows10.iso
Después de un tiempo, encontrará los resultados en la subcarpeta dividida, y tomarán menos tamaño que si usara el enfoque tar-split-bzip que vimos antes.
Para recuperar sus archivos, extraiga solo el primer archivo de la secuencia, y 7z pasará por el resto automáticamente:
7z e FIRST_PART_OF_COMPRESSED_ARCHIVE
En nuestro ejemplo, esto fue:
7z e Windows10_iso.7z.001
También vale la pena señalar que, hoy en día, tiene muchas más opciones disponibles para crear archivos comprimidos con herramientas como pigz o plzip.
¿Le parecen prácticos los archivos divididos comprimidos? ¿Qué herramientas de compresión estás usando para lidiar con ellos? Cuéntanos en la sección de comentarios a continuación.