Последние несколько дней я потратил огромное количество времени на поиск решения этой проблемы.
У меня есть диск Seagate Expansion Desktop Drive, который представляет собой внешний диск USB 3.0 емкостью 2 ТБ, который я использую для тестирования. Накопитель подключается к порту USB 3.0 на моем Macbook Pro в одном тесте и к порту USB 3.0 на моем Mac Mini в другом тесте. И на Macbook Pro, и на Mac Mini установлен виртуальный бокс и установлена гость Ubuntu. Диск должен быть доступен гостю ubuntu.
Моя текущая настройка: 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
Версии:
Хост:
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
Гость:
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
Предварительное условие: Накопитель Seagate подключен к питание и порт USB 3.0 на Macbook Pro (или Mini) (извлечены в Filer в osx) Macbook Pro запущен и вошел в систему VirtualBox запущен Гость (Ubuntu 14.04) запущен и зарегистрирован в (оконный режим не в полноэкранном режиме)
Ожидаемый результат: Диск Seagate должен быть указан в диспетчере файлов в разделе «Устройства» в ubuntu. Диск должен быть указан в / dev как диск, например / dev / sdb в Ubuntu, например Диск должен быть монтируемым в Ubuntu
Фактический результат: диск не указан в диспетчере файлов в разделе «Устройства в ubuntu» Диск не указан в разделе / dev в 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
подробный вывод lsusb для Seagate RSS LLC: root @ 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
вывод 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"
Я подозреваю, что проблема в этой строке из dmesg:
[ 795.857795] usb 2-1: USB controller 0000:00:0c.0 does not support streams, which are required by the UAS driver.
Это проблема Virtualbox или проблема Ubuntu? Может ли ubuntu неправильно обрабатывать контроллер USB xHCI?
Между прочим, накопитель работает на выделенной рабочей станции kubuntu и на виртуальной машине Windows 10 с того же MacBook Pro.
@nephente (добавлено по запросу) Я предполагаю, что вы хотите установить контроллер в VirtualBox на контроллер USB 2.0 (EHCI). Если это так, то я получаю следующую ошибку в 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}
Еще я пытался, но не упомянул, как подключить устройство USB 3.0 к концентратору USB 2.0 и подключить концентратор к Macbook Pro. Это тоже не сработало.
@Takkat Спасибо за предложение создать фильтр и убедиться, что диск отключен / извлечен из OSX.
Я создал фильтр для Seagate Expansion Desk (Desk как Desktop) и убедился, что диск не установлен в osx.
Результат: проверка того, что диск не смонтирован, и создание фильтра для диска не повлияли на ситуацию. Диск по-прежнему распознается, как описано в начале этого поста.
Я сталкивался с той же проблемой. После обновления мой VirtualBox я просто выключил свою виртуальную машину, и в ее свойствах VirtualBox я изменил контроллер USB для USB 3.0 (xHCI).
Теперь, мой внешний диск USB хорошо работает.
Я имел трудный с USB3 и USB2. Я загрузил Гостевые Дополнения и дополнительный пакет. Ничто не показало. Я использовал lsusb
от терминала Linux для идентификации одного устройства и (в то время как vm был закрыт), создал фильтр USB3 с Шиной, Устройством, идентификатором поставщика и Идентификатором продукта.
Пример:
Шина 010 Устройств 006: идентификатор 1f75:0903 Innostor Technology Corporation. Соедините шиной # = определенный контроллер USB3.
Устройство # является портом на устройстве. Идентификатор является идентификатором Поставщика (первоначально перед фактическим шестнадцатеричным адресом может быть 0x.
Мой идентификатор Поставщика устройства 1f75, но он обнаружился, поскольку 0x1f75 просто используют последние 4 цифры (то же с ИДЕНТИФИКАТОРОМ ПРОДУКТА), после того как я сохранил это и загрузился, я видел устройства, когда я запустил, но vbox гость не мог захватить их.
я захватил драйвер usb Windows от:
Intel (Intel(R)USB_3.0_eXtensible_Host_Controller_Driver)
и установленный это, удалил исходный фильтр, который я создал, перезагрузил виртуальную машину, и все работали.
Поддержка USB 3.0 была недавно добавлена в версии 5.0 VirtualBox. Прочитайте информацию о версии здесь. (Поскольку быстрый поиск использует поисковую функцию в Вашем браузере и пишет "USB 3").
Для получения доступ к этой новой функции, необходимо установить Дополнительный Пакет.
Для установки дополнительного пакета, необходимо щелкнуть правой кнопкой по загруженному файлу и "Открытый с..." virtualbox.
Я не знаю, является ли это тем же (в MAC) как в Linux, но Вы, возможно, должны добавить своего пользователя в 'virtualbox' группе для получения доступ к некоторым функциям без проблем.