Warum ist dd kein zuverlässiger Befehl, um bootfähige .iso-Dateien auf einen USB-Stick zu schreiben?

19

Eine Antwort hier zeigt an, dass von Ubuntu .isonicht erwartet wird, dass sie booten, wenn sie ddauf einen USB-Stick kopiert werden .

Warum haben einige Linux-Distributionen die Möglichkeit, ihre bootfähige .isoDatei direkt auf ein USB-Stick zu schreiben dd, andere (Ubuntu?) Nicht?

In Ubuntu denke ich, dass es zuerst konvertiert werden muss .img. Ist das wahr?

Ist es für einige architektonische Unterschiede in .isos? Oder liegt es an irgendeiner Beschränkung von ddselbst?

Ich weiß nicht, ob es hier nicht zum Thema gehört. Ich kann es an einen angemesseneren Ort verlegen, wenn die Community dies denkt oder einen vorschlägt. Eine Erklärung wäre nennenswert.

Samik
quelle
1
Das war früher bei Ubuntu-ISOs der Fall, aber ab 11.10 sind sie sozusagen dd-kompatibel.
mikewhatever
@mikewhatever Danke für die Info. Leider habe ich versucht, das mit zu tun 11.04 iso.
Samik,

Antworten:

32

Mit Ubuntu 12.04 ist das möglich dd die .iso-Datei auf eine Festplatte zu kopieren, um eine bootfähige Festplatte zu erstellen. Es funktioniert nur mit einigen Isos (einschließlich Ubuntu 12.04, aber nicht früheren Ubuntu-Versionen), da das Booten von CD und von einer Festplatte auf BIOS-basierten Systemen unterschiedlich gehandhabt wird.

Damit eine Festplatte bootfähig ist, muss sie im ersten Sektor einen Bootcode enthalten. Damit eine CD bootfähig ist, muss sie in der letzten Sitzung auf der CD den Bootcode " at sector 11 (17 decimal) " enthalten die El Torito Spezifikation . Da der Bootcode, zumindest der vom BIOS geladene Anfangsteil, für CDs und Festplatten an verschiedenen Orten gespeichert ist, kann ein Disk-Image an beiden Orten einen Bootcode aufweisen, sodass der Bootloader geladen wird, wenn das Image als Festplatte gestartet wird Laufwerk oder als CD.

Die meisten ISO-Dateien können nur als CDs gebootet werden. Sie enthalten daher keinen Bootcode im ersten Sektor des Images. Daher enthält eine Festplatte, die ein solches Image enthält, keinen Bootcode im ersten Sektor und wird auch nicht gebootet bootfähig.

Jordan Uggla
quelle
Das ist die Erklärung, nach der ich gesucht habe. Vielen Dank, dass Sie sich die Zeit genommen haben, dies zu erklären. Es wäre ein bisschen schöner, einige Links zu sehen, aber die Frage ist beantwortet. Das macht UNetbootin also, indem es den Bootloader-Code von Sektor 17 in den ersten Sektor des USB-Sticks kopiert, oder?
Samik,
3
Nein, es ist nicht so einfach, wie den Bootcode zu kopieren. Selbst wenn dies möglich wäre, müsste das gesamte Gerät gelöscht werden (wie bei dd), was für die meisten Benutzer von Unetbootin inakzeptabel wäre. Stattdessen lädt Unetbootin "eine ISO-Datei herunter und extrahiert sie auf Ihr USB-Laufwerk, generiert eine entsprechende Syslinux-Konfigurationsdatei und macht Ihr USB-Laufwerk mit Syslinux bootfähig." unetbootin.sourceforge.net/#faq
Jordan Uggla
+1 für El Torito-Spezifikation. Und danke für die Erklärung oben. :)
Samik
0

Ubuntus aktuelle ISOs sind dd seit einiger Zeit verfügbar. Sie sind "hybride" ISOs: Sie haben einen MBR-Bootsektor. Bei ddordnungsgemäßer Verwendung wird ein vollständig bootfähiges USB-Laufwerk erstellt.

Der zitierte Artikel, übrigens, hat nur eine Antwort, die besagt, dass Ubuntu-ISOs nicht dd-fähig sind, und dies ist nicht wahr.

Bitte sehen Sie meine Antwort hier: Wie konvertiert man eine ISO 9660 in eine USB-ISO

Mit dieser Antwort können Sie feststellen, ob eine ISO-Datei hybridisiert ist (Sie können dies für Ubuntu-ISOs überprüfen), wie Sie eine Hybridisierung durchführen, wenn dies nicht der Fall ist (in anderen Fällen) und wie Sie ddein bootfähiges Laufwerk ordnungsgemäß erstellen.

Suche
quelle
-3

Notizen, die keine Änderungen an der oben angegebenen akzeptierten Lösung aufweisen.

Die Frage wurde als zuverlässig, bootfähig iso und mit dd gestellt.

In den meisten Fällen verwenden Linux-Benutzer den Ausdruck iso, um ein spezielles Image einer optischen Disc zu bezeichnen. Bootfähig in diesem Fall kann eine der wenigen Methoden sein, die BIOS oder UEFI versteht und die Ausführung von optischen Datenträgern ermöglicht.

dd gilt im Allgemeinen als zuverlässig, kann jedoch aus verschiedenen Gründen ausfallen und hat nichts mit der Quelle oder Ausgabe zu tun. In den meisten Fällen scheint es nur zu scheitern, weil es nicht fragt: "Sind Sie sicher, dass Sie das auslöschen möchten?"

Moderne Computer neigen dazu, einen USB als eine echte interne Festplatte anzusehen.

Man könnte ein Tool wie 7z verwenden, um auch einige Isos auf ein Fat32-Flash-Laufwerk zu kopieren.

Dies alles setzt einige moderne Hardware und ein modernes USB-Flash-Laufwerk voraus.

In Zukunft müssen wir in den meisten Fällen bootfähige uefi-Medien erstellen.

jefro0
quelle