-->

Uso de dispositivos USB en entornos virtuales

Uso de dispositivos USB en entornos virtuales: Configurar el hipervisor para redirigir una memoria USB conectada al host directamente a la máquina virtual invitada.

Objetivo:

Configurar el hipervisor (como Oracle VM VirtualBox) y los controladores de bus correspondientes para redirigir un dispositivo de almacenamiento físico USB conectado al equipo anfitrión directamente hacia el interior de la máquina virtual invitada, permitiendo su gestión y lectura transparente como si estuviera conectado físicamente al equipo virtual.

Escenario:

  • Una máquina virtual en ejecución o apagada.
  • Privilegios de administrador tanto en el equipo anfitrión (para acceder al controlador de bus del puerto físico) como en la máquina virtual invitada.
  • Unidad de memoria USB formateada y disponible.
  • Paquete de extensiones del hipervisor instalado previamente (ej. Oracle VM VirtualBox Extension Pack).

Instrucciones:

Fase 1: Habilitación del controlador USB y filtros en el Administrador de VirtualBox

  1. Asegúrate de haber instalado el paquete oficial VirtualBox Extension Pack en tu anfitrión para habilitar el soporte completo de controladores USB 2.0 y 3.0 (xHCI).
  2. Abre el Administrador de VirtualBox, selecciona la máquina virtual y haz clic en Configuración.
  3. Dirígete a la categoría USB:
    • Marca la casilla Habilitar controlador USB.
    • Selecciona la versión del controlador acorde a tu dispositivo (por ejemplo, Controlador USB 3.0 (xHCI)).
  4. Conecta la memoria USB al puerto físico del equipo anfitrión.
  5. Haz clic en el icono verde con un símbolo + situado a la derecha del panel de filtros USB para añadir tu dispositivo físico a la lista de captura automática del hipervisor.
  6. Haz clic en Aceptar para guardar la configuración.

Fase 2: Conexión y montaje de la memoria USB en el S.O. invitado

  1. Enciende la máquina virtual e inicia sesión en el sistema operativo invitado.
  2. Si no configuraste un filtro de captura automática previa, dirígete a la barra de menú superior de la ventana de ejecución de la máquina virtual: Dispositivos > USB y selecciona el nombre de tu memoria USB para desconectarla del anfitrión y conectarla al invitado.
  3. Comprueba el reconocimiento y montaje del dispositivo en el sistema operativo invitado:
    • En entornos Windows: Aparecerá automáticamente en el Explorador de archivos asignado a una nueva letra de unidad.
    • En entornos GNU/Linux: Verifica la aparición del dispositivo ejecutando en la terminal:
      lsblk

Verificación:

  • Comprueba que la memoria USB desaparece temporalmente del explorador de archivos del equipo anfitrión al ser capturada por la máquina virtual.
  • Verifica que la máquina virtual puede leer, escribir y formatear ficheros directamente en la unidad USB sin errores de E/S.

Preguntas de reflexión:

  1. ¿Por qué es estrictamente necesario instalar el paquete de extensiones oficiales (Extension Pack) en VirtualBox para poder utilizar dispositivos USB 2.0 o 3.0 en las máquinas virtuales?
  2. ¿Qué implicaciones de control exclusivo tiene el hecho de redirigir un puerto USB del host a la máquina virtual en relación con el equipo anfitrión?
  3. ¿Qué método alternativo se podría utilizar para transferir archivos desde una memoria USB al invitado si el hipervisor o los controladores USB presentan problemas de compatibilidad?
Haz clic aquí para ver las soluciones y explicaciones

1. ¿Por qué es necesario el Extension Pack para USB en VirtualBox?

Por motivos de licencias y restricciones técnicas de código abierto, la versión base de VirtualBox incluye soporte limitado solo para USB 1.1 (OHCI). Para emular controladores de alta velocidad avanzados como USB 2.0 (EHCI) y USB 3.0 (xHCI), se requiere el paquete de extensiones propietario que añade las rutinas de control de hardware de bus necesarias.


2. ¿Qué implicaciones tiene el control exclusivo del dispositivo USB?

Un dispositivo USB físico redirigido opera bajo un principio de exclusividad: mientras se encuentra conectado y montado en la máquina virtual, el sistema operativo del equipo anfitrión pierde completamente el acceso al mismo. El host no puede leer ni escribir en la memoria USB hasta que se expulse de forma segura y se devuelva el control al anfitrión.


3. ¿Qué alternativa existe si el paso USB (passthrough) falla?

Si surgen incompatibilidades con los controladores de bus o el hardware, la alternativa más eficiente consiste en dejar la memoria USB conectada en el equipo anfitrión y utilizar un mecanismo de intercambio por software, como configurar una Carpeta Compartida del hipervisor que apunte a la ruta de la unidad USB en el host.