Electronic Team uses cookies to personalize your experience on our website. By continuing to use this site, you agree to our cookie policy. Click here to learn more.

Wie greife ich auf die SD-Karte in VirtualBox zu?

Editorial Team Editorial Team Jun 23, 2023

VirtualBox-Benutzer aller Stufen (vom Anfänger bis zum Entwickler) haben zahlreiche Szenarien, in denen sie Zugriff auf ein USB-Gerät von VirtualBox vms über USB-Passthrough benötigen. Konkret geht es um den Zugriff auf USB-Geräte, die mit einem Host-Computer verbunden sind.

Wie können vbox-Benutzer erfolgreich VirtualBox USB Passthrough innerhalb von VMs durchführen, um auf ihre USB-Hardwaregeräte über Ethernet (oder andere Netzwerkverbindungen) zuzugreifen?

Das werden wir weiter unten beantworten...

Dieser Artikel enthält eine Schritt-für-Schritt-Anleitung, um vboxusers zu zeigen, wie man den Hardware-Zugriff auf SD-Karten von einer Ubuntu Linux VirtualBox-Gastmaschine auf einer Host-Maschine mit Windows-Betriebssystem über Ethernet (oder eine andere Netzwerkverbindung) aktiviert.

Zugriff auf USB in einer virtuellen Maschine
14 Tage kostenlose Testversion

Bevor Sie einen der folgenden Schritte ausführen, sichern Sie sich, dass alle Treiber auf allen Computern, die am USB-Passthrough teilnehmen, aktualisiert sind.

Ungeachtet der Plattform, des Tools oder des Betriebssystems (VboxManage, Ubuntu, XP, VirtualBox Extension Packs usw.) müssen sowohl Entwickler als auch neue Vbox-Anwender ihre Treiber auf dem neuesten Stand halten (oder mit der Version des verwendeten VirtualBox Extension Packs kompatibel sein), um den erfolgreichen USB-Passthrough zu maximieren.

Schritt 1: Überprüfen Sie die Geräte-ID der SD-Karte

Schritt 1-1: Öffnen Sie die Eingabeaufforderung (oder Windows PowerShell auf Windows-Betriebssystemen - wie XP Pro) als Administrator (z B.: "Windows"-Taste + "x". Dann "Eingabeaufforderung (Admin)" auswählen)

Schritt 1-2: Verwenden Sie den Befehl wmic (oder den Befehl lsusb unter Linux), um die Laufwerke aufzulisten. Dies sollte vor dem Einlegen der SD-Karte in den PC geschehen.

wmic diskdrive list brief

Die Ausgabe sollte wie folgt lauten:

Bildunterschrift Geräte-ID Modell Partitionen Größe
SAMSUNG MZFLV256HCHP-000MV \\.\PHYSICALDRIVE0 SAMSUNG MZFLV256HCHP-000MV 3 256052966400

Schritt 1-3: Stecken Sie die SD-Karte in den Rechner ein und führen Sie den gleichen Befehl wie zuvor aus (bei einem Linux-Betriebssystem wäre das der Befehl lsusb, um Informationen über spezifische Details zu USB-Bussen usw. aufzulisten)

Benutzer sollten eine zusätzliche Zeile sehen, die die DeviceID der SD-Karte anzeigt. Im folgenden Beispiel lautet die ID: “\\.\PHYSICALDRIVE1“.

Bildunterschrift Geräte-ID Modell Partitionen Größe
Generic- USB3.0 CRW -SD USB Device \\.\PHYSICALDRIVE1 Generic- USB3.0 CRW -SD USB Device 2 31914086400
SAMSUNG MZFLV256HCHP-000MV \\.\PHYSICALDRIVE0 SAMSUNG MZFLV256HCHP-000MV 3 256052966400

Devs und vbox-Benutzer sollten beachten: Benutzer sollten wissen, ob sie ein 3.0 USB-Gerät oder ein 2.0 (EHCI) USB verwenden. "EHCI" steht für: "Enhanced Host Controller Interface”.

Schritt 2: Erstellen der Festplattendatei für die virtuelle Maschine (VM) auf der SD-Karte

Schritt 2-1: Übertragen Sie den Ordner in den Installationsordner von VirtualBox. Im folgenden Beispiel wird dies sein: “C:\Program Files\Oracle\VirtualBox\”.

cd "C:\Program Files\Oracle\VirtualBox\"

Schritt 2-2: Mit der "VBoxManage.exe" erstellen Sie die VMDK-Datei der SD-Karte. Das letzte Argument betrifft die DeviceID der SD-Karte (siehe Schritte 1-1 bis 1-3)

.\VBoxManage.exe internalcommands createrawvmdk -filename C:\sdcard.vmdk -rawdisk
\\.\PHYSICALDRIVE1

Wenn alles gut geht, lautet die Ausgabe “sdcard.vmdk”, und wird im Stammordner des C-Laufwerks erstellt.

RAW-Host-Festplattenzugriff VMDK-Datei C:\sdcard.vmdk erfolgreich erstellt.

Schritt 3: Einhängen der SD-Karte VirtualBox mit VMDK

Schritt 3-1: Starten Sie als Administrator die VirtualBox GUI

die VirtualBox-GUI starten

Schritt 3-2: Navigieren Sie in der VirtualBox GUI wie folgt: "Setting>Storage”

Schritt 3-3: Klicken Sie auf "Controller: SATA”

Schritt 3-4: Aktivieren Sie das Kontrollkästchen neben "Host I/O Cache verwenden”

Schritt 3-5: Klicken Sie nun auf das Symbol "Festplatte hinzufügen" (in der visuellen Hilfe unten dargestellt)

klicken Sie auf das Symbol für die hinzugefügte Festplatte

Schritt 3-6: Wählen Sie "Vorhandenen Datenträger auswählen”

Schritt 3-7: Gehen Sie zum Laufwerk C und wählen Sie die Datei “sdcard.vmdk” (die Datei, die wir in Schritt 2 erstellt haben)

Schritt 4: Überprüfen

Starten Sie die virtuelle Maschine und beginnen Sie mit der Überprüfung. In diesem Beispiel sieht es so aus “/dev/sdb” (Raspbian OS-Image auf 32GB SD-Karte).

$ sudo fdisk -l /dev/sdb
Disk /dev/sdb: 29.8 GiB, 32010928128 bytes, 62521344 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xb1d773dc

Gerät Boot Start Ende Sektoren Größe Id Typ
/dev/sdb1 8192 96453 88262 43.1M c W95 FAT32 (LBA)
/dev/sdb2 98304 31116287 31017984 14.8G 83 Linux

Fehlersuche

Bei dem Versuch, die SD-Karte zu verwenden, traten leider zahlreiche Fehler auf. Im Folgenden finden Sie einige Optionen zur Fehlerbehebung für VirtualBox SD-Karten-Passthrough.

Fehlerbehebung Option 1:

Der Fehler: "I/O-Cache ist beim Aktualisieren von Daten im Medium "ahci-0-1" auf einen Fehler gestoßen (rc=VERR_ACCESS_DENIED)”

Fehler

Für Benutzer, bei denen der obige Fehler auftritt, kehren Sie zu Schritt 2 zurück und stellen Sie sicher, dass das Kontrollkästchen "Host I/O Cache verwenden" aktiviert ist.

Fehlerbehebung Option 2

Der Fehler: "UUID des Mediums stimmt nicht mit dem in der Medienregistrierung gespeicherten Wert überein.

konnte nicht geöffnet werden

Aus dem VirtualBox-Installationsordner heraus führen Sie den folgenden Befehl aus:

.\VBoxManage.exe list hdds

Die Benutzer haben dann die Möglichkeit, die UUID in den Fehlerdetails zu finden

UUID: 5b951504-358d-4a6e-bb8f-61be3ec32367
Parent UUID: base
State: inaccessible
Type: normal (base)
Location: C:\Users\max\Desktop\sdcard.vmdk
Storage format: VMDK
Capacity: 0 MBytes
Encryption: disabled

Verwenden Sie den folgenden Befehl (unter Angabe der UUID), um den Datenträger zu entfernen:

.\VBoxManage.exe closemedium disk 5b951504-358d-4a6e-bb8f-61be3ec32367

logo USB Network Gate
#1 bei Netzwerktechnik
USB Network Gate
Teilen Sie USB über Ethernet unter Windows
4.7 rang basierend auf 372 + Nutzer