Gibt es ein Linux-Äquivalent für VHD, von dem aus gebootet werden kann?

2345
M.U

Ich habe ziemlich viel danach gesucht, aber alles, was ich finden konnte, war VLite . Ich spreche übrigens von einem Äquivalent für den nativen Windows-VHD-Start und nicht für die Virtualisierung.

1

1 Antwort auf die Frage

2
phuclv

Grub kann so ziemlich alle Disk-Image-Dateien zuordnen und von diesem booten

  • grub4dos und grub1 unterstützen den mapBefehl zum Booten von schreibgeschützten Bildern . Ich bin mir nicht sicher, ob sie Read-Write-Images booten können. Es gibt zwei Arten von Mappings

    • Speicherzuordnung: Das Abbild wirdvor der Zuordnung als Datenträger in den Speicher geladen. Dies wird normalerweise bei Diskettenabbildern verwendet. Wenn eine Speicherzuordnung verwendet wird, kann die Disk-Image-Datei nicht zusammenhängend sein. Zum Beispiel:

      map (hd0,0)/win98.ima (fd0) 
    • Direkte Zuordnung: Ordnen Sie die Datei mit int13 zu . Die Datei muss zusammenhängend sein

      map (device)/path/file.iso (hd32) 

      Nachdem alle Zuordnungen durchgeführt wurden, müssen Sie sie mit bestätigen map --hook

      Mit diesen Mapping-Typen können Sie problemlos alle Live-Linux-Distributionen starten. Bei Bedarf können Sie ein persistentes Festplattenabbild von casper rw für nichtflüchtige Daten verwenden . Weitere Informationen finden Sie unter LiveCD / Persistence

  • In müssen grub2Sie den loopbackBefehl verwenden, mit dem sowohl schreibgeschützte als auch schreibgeschützte Images gebootet werden können

    5.2 Loopback-Booten

    GRUB kann von einem Image lesen (CD oder HDD), das in einem der verfügbaren Speicherplätze gespeichert ist (siehe Befehl loopback ). Das Betriebssystem selbst sollte jedoch in der Lage sein, seine Wurzel zu finden.

    Dies umfasst normalerweise das Ausführen eines Userspace-Programms, das ausgeführt wird, bevor das echte Stammverzeichnis erkannt wird. Dies wird erreicht, indem GRUB ein speziell erstelltes kleines Bild lädt und als Ramdisk an den Kernel weitergibt. Dies wird durch Befehle erreicht kfreebsd_module, knetbsd_module_elf, kopenbsd_ramdisk, initrd(siehe initrd ), initrd16(siehe initrd ) multiboot_module, multiboot2_moduleoder in xnu_ramdiskAbhängigkeit von dem Lader.

In der Vergangenheit hat wubi Ubuntu auf dieselbe Weise von einem Image ohne eine ext4-Root-Partition gebootet


Wenn Sie syslinux verwenden, gibt es eine entsprechende Funktion namens MEMDISK

MEMDISK erlaubt das Booten von älteren Betriebssystemen. MEMDISK kann Disketten-Images, Festplatten-Images und einige ISO-Images starten.

MEMDISK simuliert einen Datenträger, indem er einen hohen Speicherplatz für den Datenträger und einen (sehr kleinen - normalerweise 2K) niedrigen Speicher (DOS) -Speicher für den Treiber selbst beansprucht. Anschließend werden der INT 13h (Festplattentreiber) und der INT 15h (Speicher) angehängt Abfrage) BIOS-Interrupts.

Sehen

Ich dachte schon - könnte helfen, ein paar Informationen zu den Besonderheiten hinzuzufügen, wie man das macht - um der Nachwelt willen. Journeyman Geek vor 11 Jahren 0