web-dev-qa-db-fra.com

Comment connaître la vitesse USB à partir d'un terminal?

J'utilise Ubuntu 12.04. Je suis ici pour savoir s'il existe un moyen d'observer la vitesse d'écriture et de lecture de l'USB via le terminal.

11
rɑːdʒɑ

Vous pouvez utiliser rsync pour donner une approximation de votre vitesse de transfert, bien que cela varie en fonction du transfert de fichiers volumineux ou volumineux et du fait que la destination soit un lecteur flash lent ou un disque dur externe rapide. Par exemple:

rsync -avviu ~/Videos /media/Mik2

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

(En outre, si vous ouvrez tail -f /var/log/kern.log et que vous connectez ensuite votre périphérique, vous pouvez voir s'il est configuré pour l'interface ehci (interface de contrôleur d'hôte améliorée), qui prend en charge les vitesses USB 2. Par exemple, le journal du noyau doit indiquer 'nouveau USB haute vitesse device ... utilisant ehci_hcd '.)

6
user76204

L'outil pv vous permet d'afficher le débit des données qui le traversent. Après avoir installé le paquet, vous pouvez exécuter une commande comme celle-ci pour voir le taux d'écriture:

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

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

Pour la lecture, effectuez l'opération inverse en utilisant le fichier tmp123 nouvellement créé:

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

J'étais curieux à ce sujet car j'avais un disque SSD SATA 3 que je voulais utiliser pour traiter certains fichiers vidéo (afin de minimiser les temps d'attente des entrées/sorties), mais je n'avais que des ports SATA 2 (3Gbps) sur le système, mais aussi une Port USB3 disponible.

Vous pouvez déterminer la vitesse maximale théorique du port pour chaque port USB à l'aide de la commande Sudo lsusb -vvv |grep -i -B5 -A5 bcdUSB

La ligne bcdUSB renvoie la version USB du port.

Un exemple de l'un de mes systèmes:

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

Ou l'alternative simple et rapide de lsusb -t qui fournit une sortie comme celle-ci:

/:  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

Étant donné que les 5 Gbps disponibles via USB3 étaient bien plus proches des 6 Gbps auxquels SATA 3 est classé, j’ai décidé de connecter le disque sur Bus 004 Device 002 (via l’adaptateur Asmedia USB3toSATA). Les résultats ont été très satisfaisants.

Sources: Cette page

Expérimentation

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

https://en.wikipedia.org/wiki/Serial_ATAComment trouver la vitesse d'un hub USB

7
Elder Geek

Essayez avec ceci:

$ Sudo lsusb -vvv

Regardez ensuite les entrées nommées bDeviceProtocol et bInterfaceProtocol

2
jap1968