Authoring bootfähige ISO-Datei

452
mikepurvis

Ich finde die Vielfalt an ISO-zu-USB-Brennwerkzeugen etwas verwirrend. Jeder scheint seine eigene etwas andere Herangehensweise an das Problem zu haben, die von einer direkten Kopie im DD-Stil (die vorhandene Inhalte löscht und nur mit Iso9660-Format formatierte USB-Medien löscht) zum Anhängen des ISO-On-Loopbacks und zum Kopieren der Dateien und die Bootloader-Installation als Schritt nach dem Kopieren.

Bisher habe ich mit Etcher, UNetbootin, Rufus und Ubuntus Startup Disk Creator gespielt. Ich bin wirklich auf der Suche nach einer Lösung, die konsistent und plattformübergreifend ist, und es ist besonders frustrierend, dass sowohl Etcher als auch UNetbootin in der Lage sind, bootfähige Medien in ihren Mac-Versionen zu erstellen, jedoch nicht von Linux (entweder in einer VM oder einer nativen) machine) - sie scheinen erfolgreich zu sein, aber das Endergebnis wird einfach nicht gestartet.

Um die Diskussion etwas zu sichern, ist dies meine aktuelle Methode zum Erstellen der angeblich bootfähigen ISO-Datei:

  • Laden Sie das neueste syslinux von herunter und packen Sie es aus https://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-6.03.tar.xz
  • Laden Sie netboot linuxund initrd.gzvon herunterhttp://archive.ubuntu.com/ubuntu/dists/xenial-updates/main/installer-amd64/current/images/netboot/ubuntu-installer/amd64/
  • Lauf mkisofs -D -V "My App" -r -quiet -o path/to/result.iso -J -l -b syslinux/isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table file1.txt file2.txt file3.txt ...
  • Lauf syslinux/bios/utils/isohybrid.pl path/to/result.iso

Einige Notizen:

  • Die resultierende ISO-Datei (auch ohne den letzten isohybrid.plSchritt) kann unter Parallels als CD-ROM angehängt und gebootet werden.
  • Wenn ich es mit Etcher auf physisches USB-Gerät brenne, kann das Ergebnis als iso9660 eingehängt werden, scheint jedoch auf meinen Ziel-AMD64-Systemen nicht bootfähig zu sein (ja, im "Legacy" -Modus).
  • Ohne diesen isohybrid.plSchritt weigerte sich Etcher, auf physisches USB zu brennen.
  • Wenn ich es unter Mac OS mit UNetbootin auf physisches USB-Laufwerk brenne, erhalte ich ein startfähiges Ergebnis. Wenn ich es jedoch mit derselben Version von UNetbootin unter Linux mache, ist das Ergebnis nicht startfähig.
  • Das einzige Werkzeug, das beständig funktioniert, ist Rufus, aber es ist nur Windows und für viele meiner Benutzer unbequem.

Ich bin zuversichtlich, dass einige andere auf diese Probleme gestoßen sind und Ideen haben, was schief läuft oder eine praktikable Methode ist - wenn es sich letztendlich um eine Befehlszeile oder eine reine Linux-Lösung handelt, ist das für mich akzeptabel offensichtlich nicht ideal. Ich bin auch offen für den Wechsel von Syslinux zu Grub oder einer anderen Lösung mit EFI-Unterstützung, falls dies die Sache erleichtern würde.

Da Tools wie Etcher verfügbar sind, scheint es sicher, dass es eine Möglichkeit gibt, eine bootfähige ISO zu erstellen, die bequem von jedem unterstützten Betriebssystem gebrannt werden kann.

0

1 Antwort auf die Frage

0
mikepurvis

Hmm, okay, es scheint, dass das ISO, auf dem Isohybrid ausgeführt wurde, wie oben beschrieben, tatsächlich auf mehreren physischen Computern bootfähig ist. Ich denke an diesem Punkt, dass dies ein Problem mit Parallels und einigen eigenartigen BIOS-Setups ist.

Weitere Informationen aus der Etcher-Dokumentation und einer Ubuntu-Mailingliste:

https://github.com/resin-io/etcher/blob/master/docs/USER-DOCUMENTATION.md#flashing-ubuntu-isos

https://lists.ubuntu.com/archives/ubuntu-devel/2011-June/033495.html