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.

Cómo acceder a una tarjeta SD en VirtualBox

Editorial Team Editorial Team Jun 21, 2023

Los usuarios de VirtualBox de todos los niveles (desde principiantes hasta experimentados) se enfrentan a numerosas situaciones en las que necesitan acceder a un dispositivo USB desde VirtualBox vms usando USB passthrough. En concreto, el acceso a dispositivos USB que están conectados a un ordenador host.

¿Cómo pueden los vboxusers realizar con éxito el VirtualBox USB passthrough en las MV para acceder a sus dispositivos de hardware USB a través de Ethernet (u otras conexiones de red)?

A continuación responderemos a esa pregunta...

Este artículo contiene instrucciones paso a paso para que los vboxusers aprendan a activar el acceso al hardware de la tarjeta SD desde una máquina invitada Ubuntu Linux VirtualBox en una máquina anfitriona que ejecute sistemas operativos Windows a través de Ethernet (o cualquier otra conexión de red).

Acceder USB en Máquina Virtual
Prueba gratuita de 14 días

Antes de seguir cualquiera de los pasos siguientes, compruebe que los controladores están actualizados en todos los equipos que participan en el USB passthrough.

Independientemente de la plataforma, la herramienta, o el SO (VboxManage, Ubuntu, XP, VirtualBox Extension Packs, etc.) tanto los expertos como los nuevos vboxusers necesitan que sus drivers estén actualizados (o que sean compatibles con la versión de VirtualBox Extension Pack que esté usando) para garantizar el éxito del USB Passthrough.

Paso 1: Compruebe el ID de Dispositivo de la Tarjeta SD

Paso 1-1: Abra el símbolo del sistema (o Windows PowerShell en los sistemas operativos Windows XP Pro) como administrador (por ejemplo: tecla "Windows + x". Luego seleccione "Símbolo del sistema (admin)”)

Paso 1-2: Con ayuda del comando wmic (o del comando lsusb en Linux), se obtiene una lista de las unidades de disco. Este proceso debe realizarse antes de insertar la tarjeta SD en el PC.

wmic diskdrive list brief

El resultado debe ser el siguiente:

Título ID Dispositivo Modelo Particiones Tamaño
SAMSUNG MZFLV256HCHP-000MV \\.\PHYSICALDRIVE0 SAMSUNG MZFLV256HCHP-000MV 3 256052966400

Paso 1-3: Introduzca la tarjeta SD en la máquina y ejecute el mismo comando que antes (en el sistema operativo Linux, se usa el comando lsusb para obtener un listado con información específica sobre los buses USB, etc.)

Los usuarios deben ver una línea adicional que muestra el ID de Dispositivo de la tarjeta SD. En el siguiente ejemplo, el ID es: “\\.\PHYSICALDRIVE1“.

Título ID Dispositivo Modelo Particiones Tamaño
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

Desarrolladores y vboxusers deben tener en cuenta: los usuarios deben saber si están utilizando un dispositivo USB 3.0, o un USB 2.0 (EHCI). “EHCI” significa: “Enhanced Host Controller Interface”.

Paso 2: Cree el Archivo de Disco de la Máquina Virtual (MV) de la Tarjeta SD

Paso 2-1: Transfiera el archivo a la carpeta de instalación de VirtualBox. En el siguiente ejemplo, será: “C:\Program Files\Oracle\VirtualBox\”.

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

Paso 2-2: Usando "VBoxManage.exe" cree el archivo VMDK de la tarjeta SD. El último argumento se refiere al ID de Dispositivo de las tarjetas SD (revise los pasos 1-1 a 1-3)

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

Si todo va bien, el resultado será "sdcard.vmdk" y se creará en la carpeta raíz de la unidad C.

Acceso RAW al disco host archivo VMDK C:\sdcard.vmdk creado correctamente.

Paso 3: Monte VirtualBox tarjeta SD con VMDK

Paso 3-1: Inicie la GUI de VirtualBox como administrador

iniciar la GUI de VirtualBox

Paso 3-2: En la GUI de VirtualBox, navegue de la siguiente manera: "Configuración>Almacenamiento"

Paso 3-3: Haga clic en "Controlador: SATA"

Paso 3-4: Marque la casilla junto a "Usar Caché de E/S del Host"

Paso 3-5: Ahora haga clic en el icono " Añadir Disco Duro " (mostrado en la ayuda visual de abajo)

hacer clic en el icono Añade Disco Duro

Paso 3-6: Seleccione "Elegir Disco Existente"

Paso 3-7: Vaya a la unidad C y seleccione el archivo “sdcard.vmdk” (el archivo que creamos en el Paso 2)

Paso 4: Verifique

Inicie la Máquina Virtual y comience la verificación. En este ejemplo, tiene el siguiente aspecto: “/dev/sdb” (Imagen de SO Raspbian en tarjeta SD de 32GB).

$ 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

Dispositivo Arranque Fin Sectores Tamaño Id Tipo
/dev/sdb1 8192 96453 88262 43.1M c W95 FAT32 (LBA)
/dev/sdb2 98304 31116287 31017984 14.8G 83 Linux

Solución de problemas

Lamentablemente, al intentar utilizar la tarjeta SD, surgieron numerosos errores. A continuación se describen algunas opciones de solución de problemas para VirtualBox SD card passthrough.

Solución de problemas Opción 1:

El Error: "El caché de E/S encontró un error al actualizar datos en el medio "ahci-0-1" (rc=VERR_ACCESS_DENIED)"

error

Para los usuarios con este error, vuelva al paso 2 y asegúrese de que la casilla "Usar Caché de E/S del Host" está marcada.

Solución de problemas Opción 2

El Error: "UUID" del medio no coincide con el valor almacenado en el registro de medios.

fallo al abrir

Desde la carpeta de instalación de VirtualBox, ejecute el siguiente comando:

.\VBoxManage.exe list hdds

Los usuarios pueden localizar el UUID en los detalles del error.

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

Para eliminar el disco, utilice el siguiente comando (especificando el UUID):

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

logo USB Network Gate
#1 en Redes
USB Network Gate
Compartir USB en Ethernet para Windows
4.7 ranking basado en 372 + usuarios