Як дізнатись швидкість USB з терміналу?


15

Я використовую Ubuntu 12.04. Я тут, щоб знати, чи є спосіб спостерігати за швидкістю запису та читання USB через термінал.

Відповіді:


6

Ви можете використовувати rsyncприблизну швидкість передачі, хоча вона буде змінюватися залежно від того, передаються чи невеликі файли чи великі файли, а також призначення - повільна флешка або швидкий зовнішній жорсткий диск. Наприклад:

rsync -avviu ~/Videos /media/Mik2

sent 874419803 bytes  received 149 bytes  4427442.79 bytes/sec
total size is 874312527  speedup is 1.00

(Крім того, якщо ви відкриєте tail -f /var/log/kern.logі потім підключите свій пристрій, ви зможете побачити, чи він налаштований на ehci (розширений інтерфейс хост-контролера), який підтримує швидкість USB 2. Наприклад, у журналі ядра повинно бути вказано новий швидкісний USB-пристрій ... за допомогою ehci_hcd '.)


Я думаю, це передбачило причину запитання, але воно не відповіло на поставлене питання.
mc0e

13

pvІнструмент дозволяє переглядати пропускну здатність даних , що проходять через нього. Після установки пакета ви можете запустити таку команду, як наступна, щоб побачити швидкість запису:

$ cat /dev/zero | pv > /media/some_usb/tmp123

203.1MiB 0:00:02 [100.2MiB/s] [ <=>                   ]

Для читання виконайте протилежну операцію, використовуючи новостворений tmp123файл:

$ cat /media/some_usb/tmp123 | pv > dev/null

Цей підхід, як видається, дає вимірювані та фактичні результати виконання.
AjayKumarBasuthkar

9

Мені було цікаво з цього приводу, як у мене був SATA 3 SSD, який я хотів використати для обробки деяких відеофайлів (щоб мінімум чекати вводу-виводу), але в мене були доступні лише порти SATA 2 (3Gbps), але також і USB-порт доступний.

За допомогою команди можна визначити теоретичну максимальну швидкість порту для кожного порту USB sudo lsusb -vvv |grep -i -B5 -A5 bcdUSB

Рядок bcdUSB повертає USB-версію порту.

Приклад однієї з моїх систем:

Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         1 Single TT
  bMaxPacketSize0        64
  idVendor           0x8087 Intel Corp.
--
   Port 7: 0000.0100 power
   Port 8: 0000.0100 power
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         0 Full speed (or root) hub
  bMaxPacketSize0        64
  bNumConfigurations      1
--

Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         0 Full speed (or root) hub
  bMaxPacketSize0        64
  idVendor           0x1d6b Linux Foundation
--

Bus 001 Device 003: ID 10d5:5a08 Uni Class Technology Co., Ltd 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x10d5 Uni Class Technology Co., Ltd
--

Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         1 Single TT
  bMaxPacketSize0        64
  idVendor           0x8087 Intel Corp.
--
   Port 5: 0000.0100 power
   Port 6: 0000.0303 lowspeed power enable connect
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         0 Full speed (or root) hub
  bMaxPacketSize0        64
  bNumConfigurations      1
--

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         0 Full speed (or root) hub
  bMaxPacketSize0        64
  idVendor           0x1d6b Linux Foundation
--

Bus 004 Device 002: ID 174c:5106 ASMedia Technology Inc. Transcend StoreJet 25M3
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               3.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         9
  idVendor           0x174c ASMedia Technology Inc.
--

Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               3.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         3 
  bMaxPacketSize0         9
  idVendor           0x1d6b Linux Foundation
--

Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         1 Single TT
  bMaxPacketSize0        64
  idVendor           0x1d6b Linux Foundation

Або швидка і проста альтернатива, lsusb -tяка забезпечує такий вихід:

/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
    |__ Port 4: Dev 2, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
        |__ Port 6: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
        |__ Port 6: Dev 3, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M

Оскільки 5 Гбіт / с, доступні через USB3, були набагато ближче до 6 Гбіт / с, за якими оцінюється SATA 3, я вирішив підключити накопичувач там Bus 004 Device 002(через адаптер Asmedia USB3toSATA). Результати були цілком задовольняючими.

Джерела: Ця сторінка

Експериментація

https://en.wikipedia.org/wiki/USB

https://en.wikipedia.org/wiki/Serial_ATA Як знайти швидкість концентратора USB


Чи є можливість співвідносити цю інформацію з вузлом пристрою?
Мелаб

@Melab Здається, в більшості випадків очевидним з огляду на вихід таких команд, як lsblkі вміст файлів, таких як [etc / mtab] Якщо у вас є нове запитання, не соромтесь задавати за допомогою кнопки [Задати питання] ( askubuntu.com/questions/ запитати ) у верхньому правому куті сторінки.
Старійшина Гік


2

Спробуйте з цим:

$ sudo lsusb -vvv

Потім перегляньте записи з назвою bDeviceProtocol та bInterfaceProtocol


1
"bInterfaceProtocol 80" Bulk-Only "" bDeviceProtocol 0 "означає що? Але ця відповідь не відповідає моєму питанню. Дякую, :)
rɑːdʒɑ

Ви використовували варіант -vvv? У моєму комп’ютері є опис, пов’язаний зі значенням 0: "0 Повна швидкість (або root) хаб"
jap1968


Ти правий. Ця інформація, здається, з’являється лише на деяких пристроях.
jap1968

1
@Raja, Біжи sudo lsusb -vvv |grep -i -B5 -A5 bDeviceProtocol. Потім подивіться на записи, перелічені як bDeviceClass Hub.
Серін
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.