it-swarm.com.de

Wie boote ich von einem USB-Laufwerk in VirtualBox?

Die Frage ist einfach und unkompliziert:

Wie boote ich von einem USB-Laufwerk in VirtualBox?

EDIT:

Ich habe usb wie im Screenshot gezeigt an VirtualBox angehängt.

https://i.stack.imgur.com/UPZZo.png

Es ist jedoch nicht möglich, von einem USB-Laufwerk zu booten, auch wenn es angeschlossen ist (Referenz) .

Ich würde gerne wissen, ob es eine andere Möglichkeit gibt, von einem USB-Laufwerk zu booten.

72
Ravan

VirtualBox selbst unterstützt das Booten von einem USB-Gerät nicht. Um von einem USB-Gerät zu booten, ist ein anderer Bootloader erforderlich. Die folgenden Schritte bieten eine Möglichkeit, dies zu erreichen:

  1. Download Plop Boot Manager (aktuell v5.0.15)
  2. Extrahieren Sie die Datei plpbt.iso aus dem Zip-Archiv und speichern Sie sie irgendwo.
  3. Öffnen Sie die Einstellungen für die virtuelle Maschine und hängen Sie die ISO-Datei an:

    enter image description here

  4. Fügen Sie einen Filter für das USB-Gerät hinzu:

    enter image description here

  5. Booten Sie das VM und wählen Sie die Option "USB" im Menü:

    enter image description here

Wenn alles gut gegangen ist, sollte der Computer jetzt vom USB-Gerät starten.

88
Nathan Osman

EDIT: 7. März 2018

Hier ist etwas zu beachten. Wenn Sie das USB-Laufwerk beim Neustart im Computer belassen, kann sich die Laufwerksbezeichnung /dev/sd ändern, sodass die RAW-Datei usb.vmdk auf das falsche Laufwerk verweist und nicht in VirtualBox gestartet wird. Als Test habe ich einen in meinem System belassen. Es war /dev/sdi, bevor ich neu gestartet habe, nach dem Neustart war es /dev/sdc. Wenn Sie Ihren Computer nach Änderungen neu starten, entfernen Sie vor dem Neustart das USB-Laufwerk. Ich prüfe, ob die rohe Scheibe von der UUID des Antriebs anstatt hergestellt werden kann, da das nicht ändert.


Da VirtualBox nicht von USB-Laufwerken bootet, können Sie eine .vmdk -Datei erstellen, die zum Booten auf Ihr USB-Laufwerk verweist.

HINWEIS: Sie MÜSSEN Ihr Benutzerkonto zur Gruppe vboxusers hinzufügen, damit VirtualBox Ihren USB-Stick erkennt. Sie MÜSSEN auch Ihr Konto zur Gruppe disk hinzufügen, oder Sie können die Datei .vmdk nicht zu Ihrer virtuellen Maschine hinzufügen. Anweisungen unten in EDIT hinzugefügt. Dadurch wird auch das USB-Laufwerk nicht auf die Festplatte kopiert und das USB-Laufwerk wird direkt verwendet. Dies kann hilfreich sein, wenn auf dem USB, den Sie behalten möchten, eine Persistenz vorhanden ist. Nicht jede Situation ist gleich, daher funktioniert dies möglicherweise nicht in jedem Fall.

Zunächst müssen Sie Ihren USB-Stick, den Sie erstellt haben, in Ihrem System haben und das physische Laufwerk bestimmen. Wir gehen davon aus, dass Ihr Laufwerk als /dev/sdb1 gemountet ist. Das physische Laufwerk wäre also /dev/sdb.

Geben Sie als Nächstes in einem Terminalfenster Folgendes ein, um die Datei .vmdk zu erstellen, die auf das USB-Laufwerk verweist:

Sudo vboxmanage internalcommands createrawvmdk -filename  ~/usb.vmdk -rawdisk /dev/sdb

Oder

Sudo VBoxManage internalcommands createrawvmdk -filename  ~/usb.vmdk -rawdisk /dev/sdb

Dann sollten Sie so etwas sehen:

RAW Host disk access VMDK file /home/ravan/usb.vmdk created successfully.

Hinweis: Einige Personen hatten Probleme mit dem Besitz der neu erstellten Datei. Übernehmen Sie den Besitz der neuen Datei:

Sudo chown $USER:$USER ~/usb.vmdk

Dann müssen Sie nur noch die Datei .vmdk zu Ihrer VirtualBox Virtual Machine hinzufügen und sicherstellen, dass Sie mit dieser booten können.

enter image description here

EDIT:

Führen Sie den folgenden Befehl aus, um Ihren Benutzer der Gruppe vboxusers hinzuzufügen:

Sudo usermod -a -G vboxusers username

Führen Sie den folgenden Befehl aus, um Ihren Benutzer der Gruppe disk hinzuzufügen:

Hinweis: Das Hinzufügen Ihres Benutzers zur Datenträgergruppe kann gefährlich sein und ein Sicherheitsrisiko darstellen. Es ist genauso gefährlich wie Sudo-Zugriff, auf eine Raw-Festplatte zu schreiben.

Sudo usermod -a -G disk username

Dann MÜSSEN Sie Ihr System neu starten , damit die Änderungen wirksam werden.

Vor dem Neustart:

enter image description here

Nach dem Neustart:

enter image description here

Hoffe das hilft!

50
Terrance

Ich bin vor ein paar Tagen zu diesem Beitrag gekommen. Ich möchte den Plop Boot Manager nicht verwenden, da mein USB-Stick bereits bootfähig ist.

Also habe ich versucht, den USB-Stick auf eine VMDK-Festplatte zu verweisen (wie in der Terrance-Antwort), indem ich vboxmanage internalcommands createrawvmdk -filename ~/usb.vmdk -rawdisk /dev/sdb erstellt habe.

Leider hat dies nicht funktioniert ... I chmod und chown die usb.vmdk -Diskette, und so konnte ich es an eine VM anhängen, aber es hat einfach nicht funktioniert funktioniert nicht.

Schließlich habe ich eine andere Lösung ausprobiert und diese hat einwandfrei funktioniert. Hier ist es (danke an Gean Santos für die Recherche):

  1. USB-Stick einstecken und identifizieren (meins ist /dev/sdb, läuft unter Sabayon Linux);
  2. Erstellen Sie eine .vmdk -Diskette, indem Sie das Raw-Gerät (d. H. Den USB-Stick) in eine VirtualBox-Diskette konvertieren

    Sudo VBoxManage convertfromraw /dev/sdb ./usb.vmdk --format vmdk
    
  3. Jetzt haben Sie eine usb.vmdk -Diskette, die von Ihrem bootfähigen USB-Stick erstellt wurde. Ich habe auch versucht, dd den USB-Stick in eine Image-Datei zu kopieren und die .vmdk -Disk aus der Image-Datei zu erstellen. Es funktioniert genauso wie .vdi -Disketten, die auf die vorherige Weise (oder aus der Image-Datei) erstellt wurden.

  4. Geben Sie nun Berechtigungen für die erstellte Festplatte, damit VirtualBox auf die Datei zugreifen kann. Es bedeutet nur , dass der Dateieigentümer in einen Benutzer geändert wird, der sich in der Gruppe vboxusers befindet. Wenn Ihre VirtualBox-Installation in Ordnung ist, sind dies wahrscheinlich Sie:

    Sudo chown `whoami`:`whoami` ./usb.vmdk
    
  5. Jetzt müssen Sie nur noch die usb.vmdk -Diskette an eine virtuelle Maschine anhängen. Aber es muss an einen IDE Controller angeschlossen sein. Ich habe SATA ohne Erfolg versucht.

A VM example with a bootable <code>usb.vmdk</code> attached to an IDE controller

Jetzt ist alles in Ordnung.

Starten Sie einfach die neue VM, drücken Sie F12 und wählen Sie das bootfähige Laufwerk.

Genießen!

15

Die einfachste Lösung ist, den Inhalt des USB-Sticks in eine ISO-Datei zu kopieren (na ja, das nächste Mal lade ich einfach den ISO-Code auf die richtige Maschine herunter, es wird überhaupt kein USB-Stick benötigt).

dd if=/dev/sdc of=myusbkey.iso

Fügen Sie dann diese .iso als optisches Laufwerk in den VirtualBox-Einstellungen unter Speicher, Controller hinzu: IDE (oder SATA, denke ich).

VirtualBox muss keine .vmdk-Datei erstellen und unterstützt .iso-Dateien.

11
David Faure

Ich würde die folgenden Schritte vorschlagen.

  1. Öffnen Sie die Datenträger.
  2. Suchen Sie nach dem USB.
  3. Klicken Sie dort und in der oberen rechten Ecke sehen Sie ein Einstellungssymbol mit 3 parallelen Linien.
  4. Klicken Sie dort und wählen Sie Create Disk Image ...
  5. Wählen Sie den Speicherort aus und klicken Sie auf Erstellen. Es wird eine IMG-Datei erstellt, die Sie in VirtualBox verwenden können.
5

Ich wollte Virtualbox nicht als root ausführen. Ich wollte nicht, dass mein Benutzer der Datenträgergruppe angehört und über die vollständigen Berechtigungen für alle Datenträger verfügt.

Also hier ist, was ich zur Arbeit bekam:

Finden Sie heraus, was der Memory Stick ist. In der folgenden Anleitung ist es sdc.

  • Hängen Sie den Memory Stick aus

    su -
    chmod 666 /dev/sdc1
    chmod 666 /dev/sdc
    exit # Run the following command as regular user:
    VBoxManage internalcommands createrawvmdk -filename usb.vmdk -rawdisk /dev/sdc
    su - # Back as root again:
    chmod 777 usb.vmdk
    chmod 666 /dev/sdc
    
  • Schließen Sie die Virtualbox-Maschine "usb.vmdk" an

    chmod 666 /dev/sdc
    
  • Starten Sie die Virtualbox-Maschine
  • Setzen Sie anschließend die sdc1-Berechtigung für die Sicherheit zurück:

    chmod 660 /dev/sdc1
    

Oben ist zu sehen, dass ich die Berechtigungen für den Memory Stick einige Male zurücksetzen musste, da er jedes Mal auf root zurückgesetzt wurde.

Ich verwende Mandriva Linux, aber es sollte in Ubuntu ungefähr gleich sein

2
Wayne Sallee

Wenn es sich bei Ihrem USB-Laufwerk um ein startfähiges EFI-Laufwerk handelt, funktioniert der Plop -Start-Manager nicht, da er den EFI-Start nicht unterstützt. In diesem Fall funktionierte für mich die Verwendung des rEFInd-Boot-Managers ( http://www.rodsbooks.com/refind/ ).

  1. Laden Sie rEFInd bootable iso von http://sourceforge.net/projects/refind/files/0.11.4/refind-cd-0.11.4.Zip/download herunter und entpacken Sie es.

  2. Öffnen Sie die Einstellungen der virtuellen Maschine in VirtualBox und hängen Sie die ISO-Datei der rEFInd-CD an.

  3. Stellen Sie sicher, dass die Option "EFI aktivieren (nur spezielle Betriebssysteme)" in den Einstellungen der virtuellen Maschine auf der Registerkarte "System" aktiviert ist.

  4. Starten Sie die virtuelle Maschine und Sie sollten das rEFInd-Startmenü sehen:

rEFInd menu

  1. Schließen Sie Ihr USB-Laufwerk in VirtualBox an.

  2. Drücken Sie die Rücktaste, um das Menü zu aktualisieren, oder warten Sie einige Sekunden, bis das Laufwerk im Menü angezeigt wird.

  3. Wählen Sie Ihr USB-Laufwerk aus und drücken Sie die Eingabetaste. Ihr USB-Laufwerk sollte nun starten.

1
Leszek Szary