12 votos

¿Cómo uso un archivo .img.xz o obtengo un archivo .img a partir de él?

Tengo un archivo con extensión xz, ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz. ¿Cómo puedo extraer el .img de él?

Mi objetivo es grabar el archivo en una tarjeta SD. Quiero usar www.etcher.io. Finalmente logré que funcione, pero etcher solo manejará archivos .iso y .img.

0 votos

Relacionado, si no es un duplicado: askubuntu.com/q/92328/249734 , pero cualquier cantidad de referencias de "descomprimir y pasar por dd" serán suficientes.

27voto

Benoît Puntos 321

Xz es un formato de compresión como zip o gz. Para poder descomprimirlo desde la línea de comandos, necesitas instalar xz-utils:

$ sudo apt-get install xz-utils

y luego usar este comando para descomprimir tu archivo:

$ unxz ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz

Si estás en Windows, puedes usar 7zip

1 votos

¿Actualmente hay lanzamientos de Ubuntu soportados en los que xz-utils no está instalado por defecto?

7 votos

Puedes usar 7zip en Linux también.

1 votos

Si deseas mantener el archivo comprimido, utiliza la opción -k

8voto

Ken Liu Puntos 123

Descomprimir archivos .xz en general

ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz es el resultado de comprimir un único archivo, ubuntu-19.10-preinstalled-server-arm64+raspi3.img, con xz. Puedes descomprimirlo con:

unxz ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz

Eso extraerá ubuntu-19.10-preinstalled-server-arm64+raspi3.img y, suponiendo que tenga éxito, eliminará ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz. Si deseas conservar ese archivo original .xz, puedes usar la opción -k/--keep:

unxz -k ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz

Es importante tener en cuenta que esto es diferente de lo que normalmente se haría para un archivo .tar.xz, ya que tar permite descomprimir y extraer con un solo comando. En el caso de un archivo .xz (a menos que el archivo esté nombrado de manera muy engañosa), solo se necesita descomprimir.

Flasheando la imagen preinstalada de Ubuntu Server en particular

El archivo en particular que has descargado es una imagen preinstalada para Ubuntu Server 19.10. Suponiendo que el archivo se haya descargado correctamente y con éxito (ver abajo), puedes seguir las instrucciones oficiales para flashear esta imagen en un dispositivo de almacenamiento. La mejor forma de hacerlo difiere según el sistema operativo que estés utilizando. Pero si estás utilizando Ubuntu, aquí tienes un resumen:

  • Encuentra el nombre del dispositivo en el que lo vas a escribir. Una forma de hacerlo es en Discos (tu explorador de archivos). Asegúrate de que este no sea el nombre de un dispositivo que contenga ningún dato que desees conservar.

  • Ejecuta este comando, reemplazando dispositivo con el nombre del dispositivo que encontraste:

    xzcat ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz | sudo dd of=dispositivo bs=32M

    Allí, xzcat realiza el trabajo de unxz. Si tienes un archivo corrupto, xzcat fallará, al igual que lo haría unxz.

    Si ejecutaste unxz y obtuviste un archivo .img, entonces no uses ese comando anterior con xzcat. En ese caso, utiliza este comando en su lugar:

    sudo dd if=ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz of=dispositivo bs=32M

Normalmente no es posible escribir en una unidad flash con dd en un sistema WSL. Por lo tanto, si estás ejecutando Ubuntu en Windows 10 con WSL, esas instrucciones no aplican. Pero en ese caso puedes utilizar un método de Windows (consulta las instrucciones oficiales).

Manejando archivos posiblemente incompletos o corruptos

Si la descompresión falla con un mensaje de error indicando que el formato del archivo no es reconocido, entonces especialmente si al ejecutar file no se logra identificar el formato como XZ compressed data (aunque a veces de otra forma), es probable que tengas una descarga corrupta o incompleta. Puedes utilizar ls -l para encontrar la longitud de tu archivo en bytes y comparar esa longitud con la longitud esperada; para ese archivo en particular, la longitud debería ser 661217868. Esto aborda la mayoría de los casos de descargas incompletas y algunos casos de descargas corruptas, aunque está lejos de ser perfecto.

Muchos archivos disponibles para descargar, incluyendo ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz todas las imágenes de Ubuntu, tienen checksums que se pueden utilizar para evaluar de manera más confiable si el archivo se descargó de manera completa y correcta. Por razones de seguridad, es una buena idea verificar la firma GPG en el archivo que proporciona los checksums (y evitar los checksums MD5, que son débiles frente a ataques deliberados). Pero para verificar la corrupción inadvertida, es suficiente buscar el checksum y probar tu archivo.

El tipo de checksum proporcionado y recomendado para verificar las imágenes de Ubuntu en la actualidad es un SHA256SUM. Este archivo contiene los SHA256SUMs para las imágenes del servidor 19.10, incluyendo ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz. Una de sus líneas es:

52ca28f21685eef965d476a716a7bc01237456d6a8770a56630299036eade0bf *ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz

Ejecutar la utilidad sha256sum en tu archivo debería producir un checksum que coincida exactamente, como sigue:

$ sha256sum ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz
52ca28f21685eef965d476a716a7bc01237456d6a8770a56630299036eade0bf  ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz

Si no coincide, entonces tu descarga estaba corrupta o incompleta y esa probablemente sea la explicación de la dificultad para descomprimir o usar el archivo.

0 votos

Dice que el formato de archivo no es reconocido cuando hago esto.

0 votos

@BJsgoodlife ¿Cuál es el comando exacto que estás ejecutando y el mensaje de error exacto que recibes? Además, ¿cuál es la salida de ls -l ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz y file ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz? (Una forma de proporcionar esta información podría ser editar tu pregunta para incluirla).

0 votos

@Eliiah Kagan unxz ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz unxz: ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz: Formato de archivo no reconocido. También editaré mi pregunta.

5voto

Mark Puntos 1

Según lo que veo en mi sistema Ubuntu 16.04 LTS - la utilidad GNOME Disks permite restaurar una imagen de disco de forma gráfica:

  1. Selecciona la unidad de destino.

  2. Haz clic en el botón de hamburguesa y luego selecciona Restaurar Imagen de Disco

    GNOME Disks

  3. Luego te pedirá la ruta del archivo de imagen:

    Select Disk Image to restore

    aquí puedes seleccionar cualquier formato de imagen *.img, *.img.xz (¡sic!) y *.iso.

  4. Verifica nuevamente que el destino sea correcto y luego presiona el botón Comenzar Restauración... en la ventana abierta.

7 votos

¿Por qué el sic? ¿Es esto porque .img.xz es en realidad una imagen de disco comprimida y no una "imagen de disco"? En realidad parece que no sabes que .xz es un formato y estás señalando que .gz está escrito de manera tipográficamente incorrecta...

3voto

Rufo Puntos 121

Puedes usar mkusb-dus para extraer y clonar directamente desde un archivo img.xz (archivo comprimido con xz).

  • Instala mkusb

    Si estás usando Ubuntu estándar en vivo, necesitarás instrucciones adicionales para obtener el repositorio Universe. (Kubuntu, Lubuntu... Xubuntu tienen el repositorio Universe activado automáticamente).

    sudo add-apt-repository universe  # solo para Ubuntu estándar
    
    sudo add-apt-repository ppa:mkusb/ppa  # y presiona Enter
    sudo apt-get update
    sudo apt-get install mkusb mkusb-nox usb-pack-efi
  • Ejecuta dus en el directorio donde tienes el archivo, en general

    dus file.img.xz

    en tu caso

    dus ubuntu-19.10-preinstalled-server-arm64+raspi3.img.xz

Es importante que la unidad de destino (la tarjeta de memoria de una Raspberry Pi) sea lo suficientemente grande para la imagen. Debe ser exactamente del mismo tamaño o más grande.

  • Si hay una tabla de partición MSDOS, será sencillo clonar una imagen en una unidad que sea más grande que la imagen.
  • Si hay una tabla de partición GUID, GPT, y la unidad es más grande que la imagen, se debe escribir una tabla de partición de respaldo al final de la unidad. mkusb lo hará automáticamente. Con algunas otras herramientas de clonación, es posible que debas solucionarlo tú mismo después, por ejemplo con gdisk.

0 votos

@sudodus- cuando hice esto, vi una interfaz gráfica no una Terminal. ¿Dónde escribes el código?

0 votos

@BJsgoodlife, Puedes abrir una ventana de terminal y escribir el código. (También es posible hacerlo a través de una interfaz gráfica de usuario, pero creo que es más fácil hacerlo directamente desde una ventana de terminal.)

2voto

user167850 Puntos 230

Abre el archivo con el Administrador de Archivos y extrae el archivo img desde allí.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X