Является ли `dd` универсальным способом создания загрузочной флешки для Debian или (L)Ubuntu?

Является ли `dd` универсальным способом создания загрузочной флешки для Debian или (L)Ubuntu?

Я нашел несколько способов создания загрузочной USB-флешки для (L)ubuntu и Debian.

  1. https://askubuntu.com/a/377561говорит, чтобы создать загрузочный USB-флешку Ubuntu из терминала, запустите

    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.htmlговорит

    Выбранный вами образ CD или DVD должен быть записан непосредственно на USB-накопитель, перезаписывая его текущее содержимое. Например, при использовании существующей системы GNU/Linux файл образа CD или DVD может быть записан на USB-накопитель следующим образом, предварительно убедившись, что накопитель размонтирован:

    # cp debian.iso /dev/sdX
    # sync
    
  3. дебиан:Создание загрузочного USB-флеш-накопителя Debianговорит

    Для создания загрузочного USB-накопителя из Windows, Mac OS или существующей установки GNU/Linux надежным выбором является использование Rufus.

  4. Лубунту:Запись/сжигание изображенияговорит:

    Для записи образов на USB-накопители в Linux мы рекомендуем использовать mkusbинструмент, разработанный членом команды Lubuntu, или средство создания USB-накопителей, входящее в состав Lubuntu Startup Disk Creator.

Мне было интересно, может ли первый способ, ddкоторый работает на уровне блоков, работать во всех случаях? Является ли он универсальным способом?

Почему можно использовать второй способ cp, который работает на уровне файлов, а не на уровне блоков?

Какие преимущества у других способов по сравнению с первым способом использования dd? Могу ли я добиться того же самого другими способами, используя ddили некоторые другие команды вместе с использованием dd?

Спасибо.

решение1

В Unix/Linux устройство обрабатывается так же, как и обычный файл. Если вы размещаете данные на устройстве с помощью cp(1) или dd(1), или program > /dev/sdbне имеет значения. Просто, например, dd имеет опции для записи в кусках разного размера, что может быть более эффективно, если размер блока соответствует некоторому аппаратно определенному размеру.

Связанный контент