Bagaimana cara mengetahui Kecepatan USB dari terminal?

15

Saya menggunakan Ubuntu 12.04. Saya di sini untuk mengetahui apakah ada cara untuk mengamati Kecepatan Menulis & Membaca USB melalui terminal.

rɑːdʒɑ
sumber

Jawaban:

6

Anda dapat menggunakan rsyncuntuk memberikan perkiraan kecepatan transfer Anda, meskipun akan bervariasi tergantung pada apakah file kecil atau besar sedang ditransfer dan apakah tujuannya adalah flash drive lambat atau hard disk eksternal yang cepat. Sebagai contoh:

rsync -avviu ~/Videos /media/Mik2

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

(Juga, jika Anda membuka tail -f /var/log/kern.logdan kemudian menghubungkan perangkat Anda, Anda dapat melihat apakah itu sedang diatur untuk ehci (antarmuka pengendali host yang disempurnakan), yang mendukung kecepatan USB 2. Misalnya, log kernel harus menyatakan 'perangkat USB berkecepatan tinggi baru' ... menggunakan ehci_hcd '.)


sumber
Saya kira ini mengantisipasi alasan pertanyaan itu, tetapi itu tidak menjawab pertanyaan yang diajukan.
mc0e
13

The pvalat memungkinkan Anda untuk melihat throughput data yang mengalir melalui itu. Setelah menginstal paket, Anda dapat menjalankan perintah seperti berikut untuk melihat kecepatan tulis:

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

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

Untuk membaca, lakukan operasi yang berlawanan menggunakan file yang baru dibuat tmp123:

$ cat /media/some_usb/tmp123 | pv > dev/null
noffle
sumber
Pendekatan ini tampaknya memberikan hasil run-time yang terukur & aktual.
AjayKumarBasuthkar
9

Saya ingin tahu tentang ini karena saya memiliki SATA 3 SSD yang ingin saya gunakan untuk memproses beberapa file video (untuk menjaga i / o menunggu minimal) tetapi saya hanya memiliki port SATA 2 (3Gbps) yang tersedia pada sistem, tetapi juga Port USB3 tersedia.

Anda dapat menentukan kecepatan maksimum teoretis dari port untuk setiap port USB dengan perintah sudo lsusb -vvv |grep -i -B5 -A5 bcdUSB

Garis bcdUSB mengembalikan versi USB port.

Contoh dari salah satu sistem saya:

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

Atau alternatif cepat dan mudah lsusb -tyang menyediakan output seperti ini:

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

Karena 5 Gbps yang tersedia melalui USB3 jauh lebih dekat dengan 6 Gbps yang diberi nilai SATA 3, saya memutuskan untuk menghubungkan drive yang ada di sana Bus 004 Device 002(via adaptor USB3toSATA Asmedia). Hasilnya cukup memuaskan.

Sumber: Halaman ini

Percobaan

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

https://en.wikipedia.org/wiki/Serial_ATA Cara menemukan kecepatan hub USB

Penatua Geek
sumber
Apakah ada cara untuk menghubungkan informasi tersebut dengan simpul perangkat?
Melab
@Melab Tampak jelas dalam banyak kasus mengingat output dari perintah seperti lsblkdan konten file seperti [etc / mtab] Jika Anda memiliki pertanyaan baru, silakan bertanya menggunakan [tombol Tanya Pertanyaan] ( askubuntu.com/questions/ tanya ) di sudut kanan atas halaman.
Penatua Geek
1
@Flatron Saya Selalu ingin membantu!
Penatua Geek
2

Coba dengan ini:

$ sudo lsusb -vvv

Lalu, lihat entri yang bernama bDeviceProtocol dan bInterfaceProtocol

jap1968
sumber
1
"bInterfaceProtocol 80 Hanya Massal" "bDeviceProtocol 0" artinya apa? Tetapi jawaban ini tidak cocok dengan Pertanyaan Saya. Terima kasih, :)
rɑːdʒɑ
Apakah Anda menggunakan opsi -vvv? Di komputer saya, ada deskripsi yang terkait dengan nilai 0: "0 hub kecepatan penuh (atau root)"
jap1968
Kamu benar. Informasi ini tampaknya hanya muncul di beberapa perangkat.
jap1968
1
@Raja, Lari sudo lsusb -vvv |grep -i -B5 -A5 bDeviceProtocol. Kemudian lihat entri yang terdaftar sebagai bDeviceClass Hub.
Cerin