1. 简介
lsusb是Linux下的一个命令行工具,用于查看连接到系统上的USB设备的详细信息。通过lsusb命令,可以获取USB设备的厂商ID、产品ID、设备版本号以及其他相关信息。
2. lsusb命令的基本用法
lsusb命令的基本用法非常简单,只需要在终端中输入lsusb并按下回车键即可:
lsusb
执行该命令后,系统将会列出所有已连接的USB设备的信息。
2.1 lsusb命令的输出格式
lsusb命令的输出结果包含了每个USB设备的一些关键信息,如厂商ID、产品ID、设备版本号等。
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 002: ID 046d:c077 Logitech, Inc. M105 Optical Mouse
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
每一行的开头是"Bus"和"Device"两个关键字,它们表示USB设备所在的总线和设备号。紧随其后的是"ID"关键字,后面跟着设备的厂商ID和产品ID。最后是USB设备的描述信息。
2.2 lsusb命令的参数选项
lsusb命令还提供了一些参数选项,可以用来定制输出结果:
-v或--verbose:显示详细的USB设备信息。
-t或--tree:以树状图的形式显示USB设备的拓扑结构。
-s<设备号>:只显示指定设备号的USB设备信息。
-d <厂商ID:产品ID>:只显示指定厂商ID和产品ID的USB设备信息。
例如,要查看USB设备ID为046d:c077的详细信息,可以使用以下命令:
lsusb -v -d 046d:c077
该命令会显示出USB设备ID为046d:c077的详细信息。
3. 示例
下面通过一个实际例子来演示lsusb命令的使用。
3.1 查看所有USB设备的信息
输入以下命令:
lsusb
输出结果如下:
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 002: ID 046d:c077 Logitech, Inc. M105 Optical Mouse
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
从输出结果中可以看到,当前系统上连接了一台Logitech M105 Optical Mouse。
3.2 查看指定USB设备的详细信息
输入以下命令:
lsusb -v -d 046d:c077
输出结果如下:
Bus 003 Device 002: ID 046d:c077 Logitech, Inc. M105 Optical Mouse
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x046d Logitech, Inc.
idProduct 0xc077 M105 Optical Mouse
bcdDevice 1.10
iManufacturer 1
iProduct 2
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 34
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xa0
(Bus Powered)
Remote Wakeup
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 1 Boot Interface Subclass
bInterfaceProtocol 2 Mouse
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.10
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 67
Report Descriptors:
**[重要]**
0x05, 0x01, // Usage Page (Generic Desktop Ctrls)
0x09, 0x02, // Usage (Mouse)
0xA1, 0x01, // Collection (Application)
0x09, 0x01, // Usage (Pointer)
0xA1, 0x00, // Collection (Physical)
0x05, 0x09, // Usage Page (Button)
0x19, 0x01, // Usage Minimum (0x01)
0x29, 0x03, // Usage Maximum (0x03)
0x15, 0x00, // Logical Minimum (0)
0x25, 0x01, // Logical Maximum (1)
0x95, 0x03, // Report Count (3)
0x75, 0x01, // Report Size (1)
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)
0x95, 0x01, // Report Count (1)
0x75, 0x05, // Report Size (5)
0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)
0x05, 0x01, // Usage Page (Generic Desktop Ctrls)
0x09, 0x30, // Usage (X)
0x09, 0x31, // Usage (Y)
0x15, 0x81, // Logical Minimum (-127)
0x25, 0x7F, // Logical Maximum (127)
0x75, 0x08, // Report Size (8)
0x95, 0x02, // Report Count (2)
0x81, 0x06, // Input (Data,Var,Rel,No Wrap,Linear,Preferred State,No Null Position)
0xC0, // End Collection
0xC0 // End Collection
从输出结果中可以看到,该USB设备是Logitech公司的M105 Optical Mouse,支持鼠标、指针、按钮等功能。
4. 总结
通过本文的介绍,我们了解了lsusb命令在Linux下查看USB设备信息的基本用法和部分参数选项,以及如何解析lsusb命令的输出结果。使用lsusb命令可以方便地查看连接到系统上的USB设备的详细信息,对于Linux系统的设备管理和故障排查非常有帮助。