¿Es `dd` la forma universal de crear una unidad flash de arranque para Debian o (L)Ubuntu?

¿Es `dd` la forma universal de crear una unidad flash de arranque para Debian o (L)Ubuntu?

He encontrado varias formas de crear una unidad flash USB de arranque para (L)ubuntu y Debian.

  1. https://askubuntu.com/a/377561dice crear una unidad flash USB de arranque de Ubuntu desde la terminal, ejecutar

    sudo dd bs=4M if=path/to/input.iso of=/dev/sd<?> conv=fdatasync  status=progress
    
  2. https://www.debian.org/releases/stable/amd64/ch04s03.en.htmldice

    La imagen del CD o DVD que elijas debe escribirse directamente en la memoria USB, sobrescribiendo su contenido actual. Por ejemplo, cuando se utiliza un sistema GNU/Linux existente, el archivo de imagen del CD o DVD se puede escribir en una memoria USB de la siguiente manera, después de haberse asegurado de que la memoria esté desmontada:

    # cp debian.iso /dev/sdX
    # sync
    
  3. debian:Creación de una unidad flash USB de arranque de Debiandice

    Para crear una unidad USB de arranque desde Windows, Mac OS o una instalación GNU/Linux preexistente, una opción confiable es utilizar Rufus.

  4. Lubuntu:Escribir/quemar la imagendice:

    Para escribir imágenes en unidades USB en Linux, recomendamos mkusbuna herramienta desarrollada por un miembro del equipo de Lubuntu o el creador de USB incluido con Lubuntu Startup Disk Creator.

Me preguntaba si la primera forma en ddque funciona a nivel de bloque puede funcionar en todos los casos. ¿Es el camino universal?

¿Por qué se puede usar la segunda forma cpque funciona a nivel de archivo y no a nivel de bloque?

¿Cuáles son los beneficios de las otras formas en comparación con la primera forma de uso dd? ¿Puedo lograr lo mismo de otras maneras, usando ddo algún otro comando junto con el uso dd?

Gracias.

Respuesta1

En Unix/Linux, un dispositivo se maneja como un archivo normal. Si coloca datos en el dispositivo usando cp(1) o dd(1), program > /dev/sdbno hay ninguna diferencia real. Solo que, por ejemplo, dd tiene opciones para escribir en fragmentos de diferentes tamaños, lo que puede ser más eficiente si el tamaño del bloque coincide con algún tamaño definido por hardware.

información relacionada