Convertir XZ a BZ2

Aquí puedes convertir XZ a BZ2 gratis y sin cuenta: suelta el archivo arriba y en un par de segundos tienes el resultado listo para descargar. El archivo viaja cifrado a nuestro servidor, se convierte allí y se borra en cuanto termina el trabajo.

  • Dónde se ejecuta En nuestro servidor: el programa necesario no funciona en un navegador.
  • Sin pérdida No se pierde nada. BZ2 contiene exactamente lo que contenía XZ.
  • Límite de tamaño Hasta 25 MB por archivo, gratis y sin cuenta.
  • Conviene saberlo Los archivos salen byte a byte iguales. Lo que no sobrevive es lo que el contenedor sabía *sobre* ellos y no lo que había *dentro*: una contraseña y, en algunos formatos, los permisos y las marcas de tiempo originales.

Hasta 100 archivos a la vez. Mezclar formatos no es problema.

La máquina que no consigue abrir el XZ que le has enviado

Esta conversión tiene una sola justificación honesta y conviene ponerla delante, porque cualquier comparación general entre los dos formatos recomienda lo contrario. Descomprimir un XZ obliga a mantener disponible una ventana del tamaño del diccionario con el que se comprimió, y el registro anota 8 MB como valor por defecto de xz. En un portátil eso es invisible. En un equipo empotrado, dentro de un contenedor con un límite de memoria estricto, en un entorno de rescate o en una máquina de instrumentación con un sistema antiguo, puede ser la diferencia entre que el archivo se abra y que el proceso muera.

La segunda versión del mismo problema es que xz sencillamente no está instalado. Llegó en 2009, lo bastante tarde como para que muchos sistemas de vida larga —equipamiento industrial, aparatos de medida, una imagen de compilación que alguien congeló— tengan bzip2 y gzip y nada más moderno. Añadir un binario a una máquina así suele ser imposible por motivos que no tienen nada que ver con la técnica: una certificación, un contrato de mantenimiento. Convertir el archivo es el cambio que sí te dejan hacer.

Un diccionario de 8 MB frente a un bloque de 900 KB

XZ, de 2009, es LZMA2: un compresor de ventana deslizante con un diccionario que por defecto ocupa 8 MB. Comprimiendo el byte diez millones todavía puede mirar hacia atrás dentro de esa ventana, y por eso nota que un fichero del final del archivo se parece a otro del principio. Para descomprimirlo, el lector tiene que tener esa misma ventana disponible, porque cualquier referencia hacia atrás puede apuntar a cualquier punto de ella.

BZ2, de 1996, no desliza nada, y esa distinción importa. Corta la entrada en bloques de como mucho 900 KB, ordena cada bloque con la transformada de Burrows-Wheeler y codifica el resultado. Un bloque es autónomo, así que el descompresor sostiene un bloque y nada más: sus necesidades las fija el tamaño del bloque y no el tamaño del archivo. Ese diseño es la razón de que bzip2 pierda en proporción, porque no ve más allá de 900 KB, y es exactamente la misma decisión que lo hace barato de abrir. Son la misma propiedad mirada desde los dos extremos.

Cuenta con que el archivo engorde, y mira cuánto

El coste en tamaño es real y su magnitud depende por completo del contenido. Con un árbol de código, un corpus de documentos, registros o cualquier cosa con estructura que se repite entre muchos miembros, xz habrá encontrado mucho que bzip2 no puede ver, y el BZ2 saldrá visiblemente mayor. Ese es el precio del ahorro de memoria y no hay forma de esquivarlo.

Con otros archivos el peaje se queda en nada. Si el XZ lleva fotografías, vídeo, audio o un volcado de base de datos ya comprimido, el compresor fuerte nunca tuvo con qué trabajar: los dos formatos se limitan a envolver los datos y los dos ficheros quedan a unos pocos puntos porcentuales. Mira las dos cifras antes de comprometerte con nada aguas abajo, porque esta es de las pocas conversiones donde la respuesta cambia en un orden de magnitud entre un archivo y el siguiente.

Se comprime más rápido y se descomprime más despacio

Es fácil suponer que el formato más débil es más rápido en todo, y no es lo que pasa. XZ es lento comprimiendo, porque buscar dentro de un diccionario grande cuesta, y comparativamente ágil descomprimiendo, porque seguir una referencia hacia atrás se parece a copiar memoria. Bzip2 va al revés en la mitad que aquí importa: deshacer una transformada de Burrows-Wheeler es cálculo de verdad, así que bzip2 desempaqueta despacio.

Vale la pena tenerlo en cuenta, porque contrapesa parte del motivo de la conversión. El aparato limitado necesita ahora menos memoria y más tiempo, y si además tiene un procesador lento —que es lo normal en equipos pequeños—, la extracción puede tardar bastante más de lo que habría tardado el XZ. La memoria es la restricción que hace una tarea imposible; el tiempo es la que la hace molesta. Convierte cuando manda la primera, y mide la segunda antes de prometerle una cifra a nadie.

El TAR de debajo y el nombre que ninguno de los dos guarda

Ambos son compresores de un solo flujo y ninguno sabe qué es un fichero. El registro anota la ausencia de estructura de directorios como problema conocido de los dos, y por eso ambos se encuentran casi siempre con un TAR dentro. Esta conversión desenvuelve el tarball que había en el XZ, escribe uno nuevo y lo comprime con bzip2. Ese tarball se construye desde dentro del directorio extraído, de modo que tus ficheros quedan en el primer nivel y no dentro de una carpeta envolvente.

Ninguno de los dos formatos guarda un nombre de fichero original —gzip sí, y estos dos no—, así que la extensión que le pongas a la descarga es la única etiqueta que ese archivo va a tener nunca. Esa misma propiedad provocó un fallo real en este conversor: el tar interior llegaba con el nombre que eligiera el extractor en vez de con algo reconocible, y una comprobación por nombre no lo encontraba. Hoy el tipo se fuerza en lugar de deducirse del nombre, que es la razón de que un origen xz se desenvuelva bien.

Qué descargas exactamente y cómo debe llamarse

Un fichero terminado en .bz2 cuyo contenido es un TAR; es decir, un .tar.bz2. Renómbralo así antes de guardarlo o publicarlo. No se rompe nada si lo dejas, porque las herramientas miran los bytes y no la extensión, pero cualquier persona y la mitad de la automatización leen primero el nombre.

Con el nombre correcto, una sola orden de tar atraviesa las dos capas de una pasada, que es justo lo que espera quien recibe tus instrucciones. Un .bz2 a secas invita a descomprimirlo y deja a quien lo hace con un fichero sin extensión que en realidad es un archivo empaquetado, y esa confusión acaba con frecuencia en un correo pidiendo explicaciones.

Bloques independientes y qué ocurre cuando algo se corrompe

La memoria acotada es el titular, y hay una segunda consecuencia que le conviene al mismo lector. Como los bloques de bzip2 se comprimen de forma independiente, un archivo dañado no pierde necesariamente todo lo que viene después del daño: hay herramientas de recuperación que localizan los límites de bloque intactos y rescatan lo que sobreviva. Un flujo xz truncado suele terminar ahí.

Encaja con los entornos para los que está escrita esta página, donde el almacenamiento es memoria flash barata, la corriente se corta sin avisar y rara vez hay una segunda copia cerca. No es una estrategia de copias de seguridad: el TAR de dentro es un flujo continuo, así que recuperar algunos bloques deja un tarball con agujeros. Es sencillamente un modo de fallar mejor que el otro.

Antes de decidirte por bzip2, mira gzip

Si el motivo para abandonar XZ es la memoria o un binario que falta, gzip resuelve las dos cosas al menos igual de bien y cuesta menos tiempo. Su ventana es de 32 KB, es decir, nada, está presente en prácticamente cualquier sistema que tenga algún compresor, y descomprime mucho más rápido que bzip2 en los procesadores lentos que suelen llevar estos aparatos. Lo único que cede es proporción, y cede más que bzip2.

Así que el argumento a favor de bzip2 en concreto es estrecho: que la diferencia de tamaño entre gzip y bzip2 importe de verdad para tu transferencia o para el espacio de la memoria flash, y que el tiempo extra de descompresión sea asumible. Si no importa, gzip es el destino correcto y esa conversión también existe en este sitio. Que te digan cuál de las dos páginas usar es más útil que venderte aquella en la que has aterrizado.

Permisos, fechas y acentos: comprueba en lugar de suponer

Los ficheros salen byte a byte, porque es un reempaquetado sin pérdida en las dos direcciones. Lo que no siempre sobrevive es lo que el contenedor guardaba sobre ellos y no dentro de ellos: en algunos formatos, los permisos originales y las marcas de tiempo. La contraseña, que es la otra cosa que suele perderse en estas conversiones, aquí no aplica: ni XZ ni BZ2 admiten cifrado, así que no había ninguna.

Si tu entrega necesita que un ejecutable llegue con permiso de ejecución, compruébalo en el tarball resultante y arréglalo ahí, en vez de descubrirlo en la máquina de otra persona. Y si dentro hay nombres con tildes o con eñe, míralos también en el listado: cada contenedor guarda los nombres a su manera, y verlo aquí cuesta un segundo mientras que verlo en un informe de error escrito en otro huso horario cuesta una tarde.

Dónde se descomprime el xz camino de bzip2

En nuestro servidor y no en tu navegador. La mayoría de las herramientas de este sitio convierten en tu propio equipo y lo dicen; reempaquetar archivos es una de las excepciones, porque necesita 7-Zip y bzip2 como programas reales. El fichero viaja por una conexión cifrada hasta un contenedor que los ejecuta, y ese contenedor está configurado sin salida a internet.

Cada trabajo recibe un directorio propio que se borra al terminar, sea cual sea el desenlace, y el archivo se guarda con un nombre neutro para que el que tú le habías puesto no llegue a escribirse en disco. Antes de extraer nada se le pregunta al archivo a cuánto declara expandirse, y por encima de 2 GiB se rechaza. Sobre los registros del servidor no vamos a hacer una afirmación absoluta: el nombre de tu fichero no aparece en ellos, pero lo que hay dentro de un archivo comprimido es una cuestión abierta que preferimos no dar por cerrada.

Los límites y el corte de sesenta segundos

El plan gratuito acepta 25 MB por archivo subido y hasta cien conversiones de servidor por visitante y día, contadas por día UTC, con un tope de ráfaga de cinco peticiones por minuto. Las conversiones que ocurren en tu navegador no gastan ese cupo, porque no nos cuestan nada.

El límite de tiempo conviene entenderlo bien: se corta cada proceso a los sesenta segundos, no la petición entera. Como esta conversión encadena varios —listar, extraer, empaquetar en TAR y comprimir—, una petición legítima puede pasar del minuto sin que nada haya ido mal. Las dos mitades de este par son lentas, xz para desplegar su diccionario y bzip2 para comprimir, así que aquí ese margen queda más ajustado que en la mayoría.

Prueba el resultado en la máquina que no pudo con el XZ

La única verificación que significa algo se hace en el destino. Copia el BZ2 al aparato, al contenedor o al equipo que falló con el xz y extráelo allí, no en tu estación de trabajo, donde los dos formatos habrían funcionado y no aprenderías nada. Si resulta que bzip2 también falta, te has enterado por el precio de una transferencia y no en mitad de un despliegue.

Después compara los listados: el del XZ y el del BZ2 deben mostrar el mismo número de entradas y las mismas rutas. Es un reempaquetado sin pérdida, así que una diferencia nunca es un fichero dañado; es estructural, y casi siempre un directorio de primer nivel presente en uno y ausente en el otro. Cuando los listados coincidan y la máquina de destino haya desempaquetado el resultado, el XZ puede irse.

Cómo convertir XZ a BZ2

  1. Suelta tu archivo XZ en esta página, o haz clic para elegir uno.
  2. Elige BZ2 como destino e inicia la conversión.
  3. Descarga el archivo BZ2 terminado.

XZ frente a BZ2: qué cambia

XZ frente a BZ2
XZBZ2
Nombre completoArchivo XZArchivo Bzip2
Extensión de archivo.xz.bz2
Tipo de medioapplication/x-xzapplication/x-bzip2
CompresiónSin pérdida — no se descarta nadaSin pérdida — no se descarta nada
Publicado por primera vez20091996
LicenciaEstándar abiertoEstándar abierto
Situación actualVigenteAntiguo, aún se lee en todas partes
Se abre en el navegadorNingún navegadorNingún navegador
Considerado en su lugarGZ, 7ZGZ

Qué se conserva

No se descarta nada. XZ y BZ2 guardan su contenido sin pérdida, así que la conversión cambia el envoltorio y no la calidad, y puede repetirse sin que el daño se acumule.

Abrir el resultado

7-Zip y Keka leen tanto XZ como BZ2, así que puedes comparar el resultado con el original sin un segundo programa.

Tamaño y calidad

BZ2 trabaja por tramos de 900 KB frente a los 8 MB de XZ: para comprimirse, una repetición tiene que caber entera dentro de uno. De ahí viene la diferencia de compresión y por eso es el más rápido de los dos.

Para qué sirve cada formato

BZ2 es de 1996. bzip2, 7-Zip y Keka lo leen.

De XZ a BZ2: preguntas frecuentes

¿Se sube a algún sitio mi archivo XZ?

Sí: esta conversión necesita software que no puede funcionar en un navegador. El archivo viaja cifrado a nuestro servidor, se borra en cuanto termina el trabajo y el resultado a los 60 minutos. El trabajo lo hace 7-Zip, el archivador, en su forma de línea de comandos.

¿Convertir XZ a BZ2 es gratis?

Sí, hasta 100 conversiones al día para archivos de hasta 25 MB. Ese único límite existe porque esta conversión se ejecuta en un servidor que pagamos nosotros. Por lo demás aquí no hay nada limitado, y marca de agua no hay en ningún caso. El límite existe porque 7-Zip necesita una máquina nuestra para funcionar.

¿Se pierde calidad al convertir XZ a BZ2?

No. BZ2 guarda el mismo contenido sin tirar nada: el resultado es idéntico en calidad al original. Los archivos salen byte a byte iguales. Lo que no sobrevive es lo que el contenedor sabía *sobre* ellos y no lo que había *dentro*: una contraseña y, en algunos formatos, los permisos y las marcas de tiempo originales.

¿Es sin pérdida la conversión de XZ a BZ2?

No se descarta nada. XZ y BZ2 guardan su contenido sin pérdida, así que la conversión cambia el envoltorio y no la calidad, y puede repetirse sin que el daño se acumule.

Más sobre estos formatos