Ces derniers jours, j'ai passé énormément de temps à chercher une solution à ce problème.
J'ai un disque Seagate Expansion Desktop qui est un disque externe USB 2 TB que j'utilise pour les tests. Le lecteur est connecté à un port USB 3.0 de mon Macbook Pro lors d'un test et à un port USB 3.0 de mon Mac Mini pour un autre test. La virtualbox est installée sur les Macbook Pro et Mac Mini et un invité Ubuntu est installé. Le lecteur doit être accessible à l'invité Ubuntu.
Ma configuration actuelle: Macbook Pro:
Model Name: MacBook Pro
Model Identifier: MacBookPro11,1
Processor Name: Intel Core i7
Processor Speed: 2,8 GHz
Number of Processors: 1
Total Number of Cores: 2
L2 Cache (per Core): 256 KB
L3 Cache: 4 MB
Memory: 16 GB
Boot ROM Version: MBP111.0138.B15
SMC Version (system): 2.16f68
Versions:
Hôte:
Mac OSX: 10.10.5
VirtualBox: 5.0.4 r102546
USB device: Seagate Expansion Desktop Drive 2TB
Oracle VM VirtualBox Extension Pack: 5.0.4r102546 Installed
In Setup - Ports - USB USB 3.0 (xHCI) Controller is enabled
Client:
Guest: Ubuntu 14.04
VboxGuestAdditions installed
uname -a
Linux patal-vbox-ubuntu-002 3.19.0-25-generic #26~14.04.1-Ubuntu SMP Fri Jul 24 21:16:20 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
Condition: disque Seagate connecté à l'alimentation et au port USB 3.0 sur Macbook Pro (ou Mini) (éjecté dans Filer sous osx). Macbook Pro démarré et connecté VirtualBox démarré Invité (Ubuntu 14.04) Démarré et connecté (mode fenêtre non plein écran)
Résultat attendu: Le lecteur Seagate devrait figurer dans le gestionnaire de fichiers sous Périphériques dans ubuntu. Le lecteur doit figurer dans/dev en tant que lecteur, tel que/dev/sdb dans Ubuntu, par exemple. Le lecteur doit pouvoir être monté dans Ubuntu.
Résultat actuel: le lecteur ne figure pas dans le gestionnaire de fichiers sous Périphériques dans ubuntu Le lecteur n'est pas répertorié dans/dev dans ubuntu
root@patal-vbox-ubuntu-002:~# ls -al /dev/sd*
brw-rw---- 1 root disk 8, 0 sep 26 09:16 /dev/sda
brw-rw---- 1 root disk 8, 1 sep 26 09:11 /dev/sda1
brw-rw---- 1 root disk 8, 2 sep 26 09:16 /dev/sda2
brw-rw---- 1 root disk 8, 5 sep 26 09:11 /dev/sda5
lsusb:
root@patal-vbox-ubuntu-002:~# lsusb
Bus 002 Device 002: ID 0bc2:3321 Seagate RSS LLC
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 80ee:0021 VirtualBox USB Tablet
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
sortie verbeuse lsusb pour Seagate RSS LLC: racine @ patal-vbox-ubuntu-002: ~ # lsusb -v
Bus 002 Device 002: ID 0bc2:3321 Seagate RSS LLC
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 3.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 9
idVendor 0x0bc2 Seagate RSS LLC
idProduct 0x3321
bcdDevice 1.00
iManufacturer 2 Seagate
iProduct 3 Expansion Desk
iSerial 1 NA4KX5JA
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 121
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xc0
Self Powered
MaxPower 0mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 80 Bulk-Only
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 15
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 15
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 1
bNumEndpoints 4
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 98
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 15
MaxStreams 32
Data-in pipe (0x03)
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 15
MaxStreams 32
Data-out pipe (0x04)
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 15
MaxStreams 32
Status pipe (0x02)
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 0
Command pipe (0x01)
Binary Object Store Descriptor:
bLength 5
bDescriptorType 15
wTotalLength 22
bNumDeviceCaps 2
USB 2.0 Extension Device Capability:
bLength 7
bDescriptorType 16
bDevCapabilityType 2
bmAttributes 0x00000002
Link Power Management (LPM) Supported
SuperSpeed USB Device Capability:
bLength 10
bDescriptorType 16
bDevCapabilityType 3
bmAttributes 0x00
wSpeedsSupported 0x000e
Device can operate at Full Speed (12Mbps)
Device can operate at High Speed (480Mbps)
Device can operate at SuperSpeed (5Gbps)
bFunctionalitySupport 1
Lowest fully-functional device speed is Full Speed (12Mbps)
bU1DevExitLat 10 micro seconds
bU2DevExitLat 2047 micro seconds
Device Status: 0x0001
Self Powered
sortie dmesg:
[ 795.810773] usb 2-1: new SuperSpeed USB device number 3 using xhci_hcd
[ 795.829590] usb 2-1: New USB device found, idVendor=0bc2, idProduct=3321
[ 795.829594] usb 2-1: New USB device strings: Mfr=2, Product=3, SerialNumber=1
[ 795.829595] usb 2-1: Product: Expansion Desk
[ 795.829596] usb 2-1: Manufacturer: Seagate
[ 795.829597] usb 2-1: SerialNumber: NA4KX5JA
[ 795.857795] usb 2-1: USB controller 0000:00:0c.0 does not support streams, which are required by the UAS driver.
[ 795.857798] usb 2-1: Please try an other USB controller if you wish to use UAS.
[ 795.857799] usb-storage 2-1:1.0: USB Mass Storage device detected
[ 795.857848] scsi Host5: usb-storage 2-1:1.0
[ 822.485641] usb 2-1: reset SuperSpeed USB device number 3 using xhci_hcd
[ 822.503463] xhci_hcd 0000:00:0c.0: xHCI xhci_drop_endpoint called with disabled ep ffff880013ebac00
[ 822.503468] xhci_hcd 0000:00:0c.0: xHCI xhci_drop_endpoint called with disabled ep ffff880013ebac48
[ 890.772127] audit_printk_skb: 120 callbacks suppressed
[ 890.772130] audit: type=1400 audit(1443252349.697:62): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/usr/lib/cups/backend/cups-pdf" pid=2761 comm="apparmor_parser"
[ 890.772135] audit: type=1400 audit(1443252349.697:63): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/usr/sbin/cupsd" pid=2761 comm="apparmor_parser"
[ 890.772386] audit: type=1400 audit(1443252349.697:64): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/usr/sbin/cupsd" pid=2761 comm="apparmor_parser"
Je soupçonne que le problème est sur cette ligne du dmesg:
[ 795.857795] usb 2-1: USB controller 0000:00:0c.0 does not support streams, which are required by the UAS driver.
Est-ce un problème Virtualbox ou un problème Ubuntu? Ubuntu ne pourrait-il pas gérer correctement le contrôleur USB xHCI?
Incidemment, le lecteur fonctionne sur un poste de travail kubuntu dédié et sous Windows 10 VM à partir du même macbook pro.
@nephente (ajouté à la demande) Je suppose que vous voulez définir le contrôleur dans VirtualBox sur Contrôleur USB 2.0 (EHCI). Si tel est le cas, l'erreur suivante apparaît dans VirtualBox:
Failed to attach the USB device Seagate Expansion Desk [0100] to the virtual machine patal-vbox-ubuntu-002.
Failed to create a proxy device for the USB device.
(Error: VERR_PDM_NO_USB_PORTS).
Result Code: NS_ERROR_FAILURE (0x80004005) Component: ConsoleWrap Interface: IConsole {872da645-4a9b-1727-bee2-5585105b9eed}
Une autre chose que j'ai également essayée mais que je n'ai pas mentionnée est de connecter le périphérique USB 3.0 à un concentrateur USB 2.0 et de connecter le concentrateur au Macbook Pro. Cela n'a pas fonctionné non plus.
@Takkat Merci pour votre suggestion de créer un filtre et de vous assurer que le lecteur est démonté/éjecté d'osx.
J'ai créé un filtre pour le Seagate Expansion Desk (bureau comme dans Desktop) et je me suis assuré que le lecteur n'est pas monté dans osx.
Résultat: s'assurer que le lecteur n'était pas monté et créer un filtre pour le lecteur ne faisait aucune différence. Le lecteur est toujours reconnu comme décrit au début de ce post.
La prise en charge USB 3.0 a été ajoutée récemment à la version 5.0 de VirtualBox. Veuillez lire les notes de version ici . (Pour une recherche rapide, utilisez la fonction de recherche de votre navigateur et écrivez "USB 3").
Pour accéder à cette nouvelle fonctionnalité, vous devez installer le pack d'extension.
Pour installer le pack d'extension, vous devez cliquer avec le bouton droit de la souris sur le fichier téléchargé et sur la boîte virtuelle "Ouvrir avec ...".
Je ne sais pas s'il s'agit de la même chose (sous MAC) que sous Linux, mais vous devrez peut-être ajouter votre utilisateur dans le groupe 'virtualbox' pour pouvoir accéder à certaines fonctionnalités sans problème.
Je faisais face au même problème. Après la mise à niveau de ma VirtualBox, je viens de mettre hors tension ma machine virtuelle et, dans ses propriétés, modifie le contrôleur USB pour USB 3.0 (xHCI).
Maintenant, mon lecteur externe USB fonctionne bien.
J'avais des difficultés avec USB3 et USB2. J'avais chargé Guest Additions et le pack d'extension. Rien n'a montré. J'ai utilisé lsusb
à partir d'un terminal Linux pour identifier un périphérique et (alors que la machine virtuelle était fermée) créé un filtre USB3 avec le bus, le périphérique, l'ID de fournisseur et l'ID de produit.
Exemple:
Autobus 010 Dispositif 006: ID 1f75: 0903 Innostor Technology Corporation. Bus # = Le contrôleur USB3 spécifique.
Device # est le port sur le périphérique. ID est l'ID du fournisseur (il peut initialement y avoir un 0x avant l'adresse hexadécimale réelle.
Mon identifiant de fournisseur de périphérique est 1f75 mais il s’est affiché sous la forme 0x1f75. Il vous suffit d’utiliser les 4 derniers chiffres (idem PRODUCT) une fois que j’ai enregistré et démarré, je pouvais voir les périphériques lorsque j’ai démarré, mais vbox guest ne pouvait pas les récupérer.
J'ai attrapé un pilote USB Windows de:
Intel (Intel (R) USB_3.0_eXtensible_Host_Controller_Driver)
et l'a installé, supprimé le filtre d'origine que j'ai créé, redémarrez la machine virtuelle et tout a fonctionné.