Wie kann ich das PC-BSD-Live-DVD-ISO-BILD direkt über GRUB2 booten?

8

Über den Loopback- Befehl ermöglicht GRUB2 das direkte Booten einer ISO-Datei.

Jetzt habe ich den entsprechenden Menüeintrag so konfiguriert , dass die PC-BSD Live DVD ISO gestartet wird. Wenn ich jedoch versuche, sie zu starten, gibt der FreeBSD Bootstrap Loader Folgendes aus:

can't load 'kernel'

Hier ist der GRUB2-Menüeintrag, den ich derzeit verwende:

menuentry "PC-BSD" {
        search --no-floppy --fs-uuid --set root 0d11c28a-7186-43b9-ae33-b4bd351c60ad
        loopback loop /PCBSD9.0-RC1-x64-DVD-live.iso
        kfreebsd (loop)/boot/loader
}

Weiß man, wie ich das ändern müsste, um das PC-BSD-Live-System booten zu können?

user569825
quelle

Antworten:

1

Nach "Kernel kann nicht geladen werden" werden Sie zur Loader-Eingabeaufforderung weitergeleitet.

Es hat einen lsBefehl, mit dem Sie überprüfen können, wo sich Ihr Kernel befindet, und ihn mit loadund dann laden können boot.

Sie können auch versuchen, den Kernel direkt zu starten, indem Sie etwas wie versuchen kfreebsd (loop)/boot/kernel/kernel.

gebogen
quelle
Etwas spät, aber ich habe gerade Ihre Antwort gesehen. lsgibt open '/' failed: no such file or directory. Ich frage mich, wie der Lader funktioniert, während (anscheinend) keine Wurzel gefunden wird.
user569825
0

Sie können versuchen, den Bootloader auf Ihr Image zu laden. Das Kettenladen von grub2 funktioniert folgendermaßen:

insmod chain
set root = (hdX,Y)
chainloader +1
allo
quelle
0

Bearbeiten: Wie jemand in diesem Thread bemerkt hat , besteht das Problem darin, dass der Startvorgang irgendwann das Root-Dateisystem vom Loopback-Gerät auf eine Weise bereitstellen möchte, die mit der Loopback-Funktionalität von GRUB nicht möglich ist. Beachten Sie, dass PC-BSD in TrueOS umbenannt wurde und jetzt USB-Images bietet.


Ich bin mit BSD nicht allzu vertraut und kann in Arch's Artikel über Multiboot-USB-Laufwerke nichts über BSD finden. In ihrem GRUB-Artikel gibt es jedoch drei Möglichkeiten: Mindestens eine sollte funktionieren, wenn sie an Loop-Geräte angepasst ist:

Verketten des eingebetteten Startdatensatzes

menuentry 'FreeBSD' {
  insmod ufs2
  set root='hd0,gpt4,bsd1'
  chainloader +1
}

Dies scheint einfach zu sein und das Laden des entsprechenden Dateisystemmoduls scheint eine gute Idee zu sein, aber denken Sie daran, dass es auf optischen Medien ISO 9660 oder UDF gibt und meines Wissens keine Partitionen außer El Torito.

Betrieb des traditionellen BSD 2nd Stage Loaders

menuentry 'FreeBSD' {
  insmod ufs2
  set root='(hd0,4)'
  kfreebsd /boot/loader
}

Das ist fast das, was Sie als statische Konfiguration getan haben, ohne die Suche aufzurufen.

Laden Sie den Kernel direkt

menuentry 'FreeBSD' {
  insmod ufs2
  set root='hd0,gpt4,bsd1'
  ## or 'hd0,msdos4,bsd1', if using an IBM-PC (MS-DOS) style partition table
  kfreebsd /boot/kernel/kernel
  kfreebsd_loadenv /boot/device.hints
  set kFreeBSD.vfs.root.mountfrom=ufs:/dev/ada0s4a
  set kFreeBSD.vfs.root.mountfrom.options=rw
}

Das sieht überraschend komplex aus. Ich habe gerade mit dem Herunterladen der PC-BSD 10.3-ISO begonnen. Hoffentlich habe ich etwas Zeit damit, um herauszufinden, wie es in den nächsten Tagen über UEFI oder Legacy funktioniert.

LiveWireBT
quelle