¿Por qué dd no es un comando confiable para escribir archivos .iso de arranque en la memoria USB?


19

Una respuesta aquí indica que .isono se espera que los Ubuntu se inicien si se copian dden una memoria USB.

¿Por qué algunas distribuciones de Linux tienen la opción de escribir directamente su .isoarchivo de arranque en una memoria USB dd, pero otras (¿Ubuntu?) No lo hacen?

En Ubuntu, creo que tiene que convertirse .imgprimero. ¿Es esto cierto?

¿Es por alguna diferencia arquitectónica en .isos? ¿O se debe a alguna limitación de ddsí mismo?

No sé si está fuera de tema aquí. Puedo moverlo a un lugar más apropiado si la comunidad lo cree o sugiere uno. Alguna explicación sería apreciable.


1
Ese solía ser el caso con los ISO de Ubuntu, pero a partir de 11.10, son compatibles con dd, por así decirlo.
mikewhatever

@mikewhatever Gracias por la información. Lamentablemente estaba tratando de hacer eso con 11.04 iso.
Samik

Respuestas:


32

Con Ubuntu 12.04 es posible ddcrear el archivo .iso en un disco para crear un disco de arranque. Solo funciona con algunos isos (incluido Ubuntu 12.04, pero no versiones anteriores de Ubuntu) porque el arranque desde CD y el arranque desde un disco se manejan de manera diferente en los sistemas basados ​​en BIOS.

Entre otras cosas, para que un disco duro sea arrancable debe contener un código de arranque en el primer sector , para que un CD sea arrancable debe contener un código de arranque " en el sector 11 (17 decimales) en la última sesión del CD " de acuerdo con la especificación el Torito . Dado que el código de inicio, al menos la parte inicial cargada por el BIOS, se almacena en diferentes lugares para CD y discos duros, una imagen de disco puede tener código de inicio en ambos lugares para que el cargador de arranque se cargue si la imagen se inicia como un disco duro unidad o como un CD.

La mayoría de los archivos iso solo están diseñados para ser arrancables como CD, por lo que no contienen código de arranque en el primer sector de la imagen y, por lo tanto, un disco duro que contenga dicha imagen no tendrá código de arranque en su primer sector y no será de arranque


Esa es la explicación que estaba buscando. Gracias por tomarse el tiempo para explicar eso. Sería un poco más agradable ver algunos enlaces, pero la pregunta está respondida. Entonces eso es lo que hace UNetbootin, copiando el código del gestor de arranque del sector 17 al primer sector de la memoria USB, ¿verdad?
Samik

3
No, no es tan simple como copiar el código de arranque. Incluso si eso fuera posible, requeriría limpiar todo el dispositivo (como usar dd), lo que sería inaceptable para la mayoría de los usuarios de Unetbootin. En cambio, Unetbootin "descarga y extrae un archivo ISO en su unidad USB, genera un archivo de configuración syslinux apropiado y hace que su unidad USB se pueda arrancar usando syslinux". unetbootin.sourceforge.net/#faq
Jordan Uggla

+1 para la especificación de El Torito. Y gracias por la explicación anterior. :)
Samik

0

Los ISO actuales de Ubuntu son dd compatibles y lo han sido por algún tiempo. Son ISO "híbridos": tienen un sector de arranque MBR. Si se usa ddcorrectamente, se creará una unidad USB totalmente de arranque.

El artículo citado, por cierto, solo tiene una respuesta que dice que los ISO de Ubuntu no son ddcompatibles, y esto no es cierto.

Vea mi respuesta aquí: Cómo convertir una ISO iso9660 a una ISO USB

Esta respuesta proporciona una forma de determinar si una iso está hibridada (puede verificar esto para los ISO de Ubuntu), cómo hibridarla si no lo está (para otros casos) y cómo usarla correctamente ddpara crear una unidad de arranque.


-3

Notas que no tienen cambios en la solución aceptada publicada anteriormente.

La pregunta se planteó como iso confiable, de arranque y con dd.

En la mayoría de los casos, los usuarios de Linux usan la frase iso para referirse a una imagen especial de un disco óptico. El arranque en ese caso podría ser uno de los pocos métodos que bios o uefi entiende y permite ejecutar desde un disco óptico.

dd generalmente se considera confiable, sin embargo, podría fallar por muchas razones por sí solo y no tener nada que ver con la fuente o la salida. En la mayoría de los casos, parece fallar solo porque no pregunta "¿Estás seguro de que quieres borrar eso?"

Las computadoras modernas tienden a ver un usb como un disco duro interno real.

Se podría usar una herramienta como 7z también para copiar algunas iso a una unidad flash fat32.

Todo esto supone un hardware moderno y una unidad flash USB moderna.

En el futuro, tendremos que crear dispositivos de arranque uefi en la mayoría de los casos.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.