2 votos

Seagate USB no se puede conectar a Ubuntu Server VirtualBox en Retina MBP 2015

Últimamente me he inspirado para practicar un poco de autoalojamiento, y mi viejo MBP Early 2015 no está haciendo nada mientras se vende para prácticamente ningún beneficio para mí. Quiero agarrar un disco duro Seagate de repuesto y convertirlo en un servidor de alojamiento de archivos de red local, así que empecé un Servidor Ubuntu en una VM VirtualBox en el MBP. En este punto de mi tarea, si puedo conectar mi disco duro Seagate al servidor virtualizado, estoy efectivamente terminado.

Formateé la unidad a exfat y comencé el proceso, y después de encontrar y arreglar un montón de problemas, me encontré con este mensaje de error condenatorio en el inicio de Ubuntu Server / var / logs / syslogs:

USB controller 0000:00:0c.0 does not support streams, which are required by the UAS driver. Please try an other USB controller if you wish to use UAS.

La presencia de este error tuvo las siguientes consecuencias para mí:

  • Pude encontrar la unidad Seagate con sudo lsusb pero no sudo fdisk -l .
  • No puedo montar la unidad Seagate en mi Ubuntu Server VM.

Para que conste, he considerado otras soluciones de servidor y probado Docker Desktop, Docker, arranque dual, y la sustitución del MacOS con Linux por completo, pero todos estos vienen con sus propios dolores de cabeza y problemas, y no quiero hacer inversiones mientras que en una etapa experimental.

No tengo ni idea de lo que son los streams o UAS, pero sé que es algún tipo de proceso de optimización que tiene algo que ver con USB 3.0. La búsqueda en línea sólo confirma que el MBP 2015 soporta USB 3.0, pero no dice nada acerca de UAS o streams. Esto crea ambigüedad a mi proceso de solución de problemas porque quiero saber donde el proceso de montaje de la unidad ha fallado.

El mensaje de error sugiere que mi Macbook Pro no puede montar la unidad Seagate. Esto parece falso, porque puedo montar la unidad Seagate sin problemas en mi equipo host y ver los archivos que contiene. Así que me preguntaba si era un problema con la forma en que la máquina virtual interactúa con mi MBP, pero mi comprensión podría muy bien estar equivocado.

Conecté mi disco Seagate a una máquina Windows y encendí una máquina virtual de Ubuntu Server con básicamente la misma configuración. En este caso fui capaz de montar con éxito el servidor, y el mensaje de error arroyos no apareció. Ahora, estoy seguro de que el problema es con mi 2015 Macbook Pro. Así que quiero preguntar:

  1. ¿El controlador USB del Macbook Pro 2015 admite streams? (Si es así, ¿por qué la máquina virtual de Ubuntu Server no lo reconoce?)
  2. ¿Cómo puedo superar el problema del controlador en general? ¿Actualizo el controlador o desactivo el UAS? Si es así, ¿cómo?

Actualización : Tras realizar más pruebas con unidades Toshiba y Sandisk, parece que sólo la unidad Seagate es la que causa problemas. Además, parece que Wikipedia que parte de la culpa de UAS es de Ubuntu. Esto también es un poco raro, ya que mi Ubuntu en Windows no tenía problemas....

Actualización 2 : Algunos intentos fallidos:

  • desactivar UAS (mostrado aquí )
  • debilitando la restricción del filtro como se muestra aquí .
  • utilizando Ubuntu Server 20 en lugar de 22, lo que introdujo problemas adicionales
  • formateando exfat a ext4.

Algunas investigaciones han mostrado problemas similares:

Salida adicional de sudo dmesg -w después de conectar la unidad Seagate:

[   18.447844] loop4: detected capacity change from 0 to 8
[   45.758915] usb 2-1: new SuperSpeed USB device number 2 using xhci_hcd
[   45.782780] usb 2-1: New USB device found, idVendor=0bc2, idProduct=2344, bcdDevice= 7.12
[   45.782785] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[   45.782787] usb 2-1: Product: Portable
[   45.782788] usb 2-1: Manufacturer: Seagate
[   45.782790] usb 2-1: SerialNumber: NAAZ8K3W
[   45.824058] usb 2-1: UAS is ignored for this device, using usb-storage instead
[   45.824061] usb-storage 2-1:1.0: USB Mass Storage device detected
[   45.824476] usb-storage 2-1:1.0: Quirks match for vid 0bc2 pid 2344: 800000
[   45.828004] scsi host3: usb-storage 2-1:1.0
[   45.828259] usbcore: registered new interface driver usb-storage
[   45.832897] usbcore: registered new interface driver uas
[   67.498444] usb 2-1: reset SuperSpeed USB device number 2 using xhci_hcd

Mirará más en la línea de "usb en lsusb no fdisk" búsquedas en google.

Actualización 3: He encontrado una solución que funciona. En lugar de montar Seagate como una unidad USB, lo formateé a APFS y monté Seagate al host primero en /Volumes/SEAGATE y luego montado /Volumes/SEAGATE como carpeta compartida, tal y como se muestra aquí .

Las pruebas iniciales superadas incluyen:

  • añada helloworld.txt a la unidad Seagate desde el Host. helloworld.txt se puede ver desde Guest.
  • escriba a helloworld.txt desde el Host a la carpeta compartida montada. Esto requiere privilegios sudo., pero se puede ver desde Host.

Aplazaré el juicio después de algunas pruebas más.

Actualización 4: La actualización 3 me funciona, acabo de ver un video de Jellyfin donde se almacenan los datos en la unidad Seagate desde otro ordenador. Respuesta publicada.

2voto

wangf22 Puntos 41

Una solución de VirtualBox: en lugar de montar la unidad directamente en la máquina virtual VirtualBox a través de USB passthrough, monte la unidad en la máquina virtual como una carpeta compartida desde el host MacOS de la siguiente manera:

  1. Móntalo primero en el MacOS para /Volumes/<DRIVE> (la unidad debe poder leerse/escribirse en OSX, por ejemplo, en formato APFS)
  2. Comparta la carpeta con la máquina virtual como <DRIVE> siguiendo las instrucciones para compartir carpetas, por ejemplo compartir carpeta entre MacOS y Ubuntu (Medium)

La unidad se trata como una carpeta compartida y, por tanto, será accesible tanto por el Guest como por el Host, incluso cuando VirtualBox no se ejecute con privilegios elevados.

1voto

David Anderson Puntos 2189

Instale y utilice VM Fusion Player en lugar de Oracle VirtualBox. Si es para uso personal, VM Fusion Player es de uso gratuito. Puede tener ambos instalados al mismo tiempo, por lo que no tiene que eliminar VirtualBox. Al configurar una máquina virtual, Fusion Player tiene la capacidad de seleccionar a qué dispositivos USB debe tener acceso la máquina virtual. Virtual Box también tiene esta capacidad, pero es mucho más difícil de configurar y utilizar.

Por ejemplo, tengo OS X Yosemite instalado en una máquina virtual VM Fusion Player en un iMac de 2013 que ejecuta macOS Catalina. También tengo un SSD Samsung T7 conectado al puerto USB 3.O (5 Gb/s) Tipo-A. Si quiero que la máquina virtual para ver el SSD, entonces todo lo que tengo que hacer es seleccionar la unidad y establecer el "Plug in Action".

enter image description here

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X