网站首页 > 技术教程 正文
在Linux中我们使用lsusb命令列出USB设备及其属性,lsusb用于显示系统中的USB总线及其连接的设备信息。下面介绍如何安装并使用。 |
系统环境
Centos7
安装usbutils
默认Centos7系统中没有lsusb命令,我们需要安装usbutils安装包,才能使用lsusb:
[root@localhost ~]# yum -y install usbutils
列出usb设备信息
lsusb用于显示有关系统中的USB总线及其连接的设备的信息,下面运行lsusb:
[root@localhost ~]# lsusb
Bus 001 Device 010: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
Bus 001 Device 055: ID 0951:1665 Kingston Technology Digital DataTraveler SE9 64GB
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
lsusb将显示系统内部连接的驱动程序和设备。
上面输出内容解释如下:
Bus 001 Device 055: ID 0951:1665 Kingston Technology Digital DataTraveler SE9 64GB
- Bus 001: 表示第一个usb控制器,可以使用lspci|grep USB查看主机有几个usb控制器
- Device 055: 表示系统分配给这个金士顿存储设备的设备号
- ID: 表示usb设备的ID
- Kingston Technology Digital DataTraveler SE9 64GB: 表示其制造商名称和设备名称
我们还看到,系统中还附有USB 2.0 root hub 驱动程序和USB 1.1 root hub 驱动程序。
使用树状类型显示usb信息
使用-t选项,以树状结构显示usb信息:
[root@localhost ~]# lsusb -t
/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M
|__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=usb-storage, 480M
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
|__ Port 1: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 2: Dev 3, If 0, Class=Hub, Driver=hub/7p, 12M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/6p, 480M
数字12M、480M、5000M表示USB的传输速度。
- 12M表示12Mbit / s,这是USB 1.0 / 1.1类型
- 480M表示480Mbit / s,这是USB 2.0类型
- 5000M表示5Gbit / s,这是USB3.0类型
Linux从/usr/share/hwdata/usb.ids'识别USB设备的详细信息。lsusb列出的vendor和device name都是从这个文件里面识别出来的。
如何列出USB详细信息
使用-v参数查看usb详细信息:
[root@localhost ~]# lsusb -v | less
Bus 001 Device 056: ID 0951:1665 Kingston Technology Digital DataTraveler SE9 64GB
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x0951 Kingston Technology
idProduct 0x1665 Digital DataTraveler SE9 64GB
bcdDevice 1.00
iManufacturer 1 Kingston
iProduct 2 DataTraveler 2.0
iSerial 3 08606E6B6612FD50771C2A8B
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 32
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 100mA
Interface Descriptor:
bLength 9
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 80 Bulk-Only
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 255
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 255
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
bNumConfigurations 1
Device Status: 0x0000
(Bus Powered)
查找连接了多少个USB设备
查找链接的设备数量,可以使用下面命令查找:
[root@localhost ~]# find /dev/bus
/dev/bus
/dev/bus/usb
/dev/bus/usb/002
/dev/bus/usb/002/003
/dev/bus/usb/002/002
/dev/bus/usb/002/001
/dev/bus/usb/001
/dev/bus/usb/001/056
/dev/bus/usb/001/010
/dev/bus/usb/001/001
结合使用lsusb命令和-D参数,可以输出特定设备的详细信息。下面实例查看金士顿存储设备的详细信息:
[root@localhost ~]# lsusb -D /dev/bus/usb/001/056
查找大容量存储设备
lsusb -v为我们提供了非常详细的信息,我们可以配合使用grep命令查找指定的信息,下面过滤出idVendor和Mass Storage,来获取大容量存储设备:
[root@localhost ~]# lsusb -v |grep -Ei '(idVendor|Mass\ Storage)'
idVendor 0x0bda Realtek Semiconductor Corp.
idVendor 0x0951 Kingston Technology
bInterfaceClass 8 Mass Storage
idVendor 0x1d6b Linux Foundation
idVendor 0x0e0f VMware, Inc.
idVendor 0x0e0f VMware, Inc.
idVendor 0x1d6b Linux Foundation
可以看到只有idVendor是Kingston Technology的设备才是大容量存储设备。
总结
在Linux中我们使用lsusb命令列出USB设备及其属性,lsusb用于显示系统中的USB总线及其连接的设备信息。
猜你喜欢
- 2024-09-24 基于RT1052 Aworks使能U盘功能(十九)
- 2024-09-24 嵌入式入门级学习——基于国产平台T3开发板的测试教程(3)
- 2024-09-24 温馨呵护、音乐相伴!N9300音乐芯片在婴儿安抚器上的突破与应用
- 2024-09-24 「嵌入式必学」eMMC读写、SATA接口测试——基于全志T3平台(3)
- 2024-09-24 雅马哈RX-A8A/RX-A6A/RX-A4A功放8K60 4K120固件更新1.65来了
- 2024-09-24 U盘文件自动拷贝的软件
- 2024-09-24 adb使用技巧和usb通信原理探索
- 2024-09-24 N930X音乐芯片四种功能型号的MP3芯片
- 2024-09-24 《UEFI内核导读》Mass Storage Driver
- 2024-09-24 还在花20元去电脑城?系统重装不求人,记住只修电脑不过夜!
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- sd分区 (65)
- raid5数据恢复 (81)
- 地址转换 (73)
- 手机存储卡根目录 (55)
- tcp端口 (74)
- project server (59)
- 双击ctrl (55)
- 鼠标 单击变双击 (67)
- debugview (59)
- 字符动画 (65)
- flushdns (57)
- ps复制快捷键 (57)
- 清除系统垃圾代码 (58)
- web服务器的架设 (67)
- 16进制转换 (69)
- xclient (55)
- ps源文件 (67)
- filezilla server (59)
- 句柄无效 (56)
- word页眉页脚设置 (59)
- ansys实例 (56)
- 6 1 3固件 (59)
- sqlserver2000挂起 (59)
- vm虚拟主机 (55)
- config (61)
本文暂时没有评论,来添加一个吧(●'◡'●)