我的 USB 2.0 设备是否全速运行?

我的 USB 2.0 设备是否全速运行?

如何判断我的 USB 闪存驱动器是否以 USB 2.0 全速运行?目前我只想验证驱动器是否已插入 480 Mbps 端口,但过去我不确定给定设备是否是 USB 2.0 或更旧的版本。我想要一种方法来识别其功能,而不是测试读/写速度。

答案1

lsusb -t 

设备名称后直接显示速度。

答案2

使用lsusb -t可以看到USB的规格:

$ sudo lsusb -t

/:  Bus 02.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 4: Dev 7, If 0, Class=Mass Storage, Driver=usb-storage, 480M
        |__ Port 6: Dev 3, If 0, Class=Mass Storage, Driver=usb-storage, 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/4p, 480M
        |__ Port 2: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 12M
        |__ Port 3: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
        |__ Port 4: Dev 8, If 0, Class=Hub, Driver=hub/4p, 480M

但要检查 USB 的速度并查看其是否正常工作,您需要使用以下命令进行速度测试hdparm

$ sudo hdparm -tT /dev/sdd

/dev/sdd:
Timing cached reads:   7642 MB in  2.00 seconds = 3822.03MB/sec  
Timing buffered disk reads:  96 MB in  3.05 seconds =  31.44MB/sec

这个例子是我随机的一个随身碟,你一定会看到像以前一样的东西。

答案3

你可以看看

lsusb -v

在我的系统上,我得到了这一行(以及更多信息):

端口 6:0000.0503 高速电源使能连接

或者,您可以发出:

tail -f /var/log/kern.log

在一个终端上,然后插入 USB 闪存驱动器。在我的系统上,我收到以下消息:

9月15日22:10:40 foo内核:[405279.750140] USB 2-2:使用ehci_hcd和地址24的新高速USB设备

ehci_hcd 是内核中的USB 2.0 控制模块(即一切正常,USB 2.0 记忆棒以正确的速度使用)。

除非您收到如下后续消息:

9 月 15 日 22:15:25 foo 内核:[405564.451402] USB 6-2:未以最高速度运行;连接到高速集线器

(在这种情况下,可能是与低质量 USB 2.0 记忆棒 (Kensington) 存在兼容性问题,因为计算机的 USB 端口支持 USB 2.0 高速设备)

使用非 USB 2.0 高速棒时,我收到以下消息:

9 月 15 日 22:15:25 foo 内核:[405564.300127] USB 6-2:使用 uhci_hcd 和地址 4 的新全速 USB 设备

如果您的用户帐户无权访问 /var/log/kern.log (或另一个系统相关的内核日志消息文件位置),您可以使用以下命令消息作为显示内核消息缓冲区内容的替代方法。 dmesg 的缺点是它确实打印了如此好的时间戳并且它没有跟随输出选项。

相关内容