关于ubuntu:lsusb命令在系统中显示有关USB设备信息

42次阅读

共计 3953 个字符,预计需要花费 10 分钟才能阅读完成。

在 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 命令 - 在零碎中显示无关 USB 设施信息 lsusb 命令 - 在零碎中显示无关 USB 设施信息
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
lsusb 命令 - 在零碎中显示无关 USB 设施信息 lsusb 命令 - 在零碎中显示无关 USB 设施信息
数字 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 命令 - 在零碎中显示无关 USB 设施信息 lsusb 命令 - 在零碎中显示无关 USB 设施信息
联合应用 lsusb 命令和 - D 参数,能够输入特定设施的详细信息。上面实例查看金士顿存储设备的详细信息:
lsusb 命令 - 在零碎中显示无关 USB 设施信息 lsusb 命令 - 在零碎中显示无关 USB 设施信息

[root@localhost ~]# lsusb -D /dev/bus/usb/001/056
lsusb 命令 - 在零碎中显示无关 USB 设施信息 lsusb 命令 - 在零碎中显示无关 USB 设施信息

查找大容量存储设备
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
lsusb 命令 - 在零碎中显示无关 USB 设施信息 lsusb 命令 - 在零碎中显示无关 USB 设施信息
能够看到只有 idVendor 是 Kingston Technology 的设施才是大容量存储设备。

总结
在 Linux 中咱们应用 lsusb 命令列出 USB 设施及其属性,lsusb 用于显示零碎中的 USB 总线及其连贯的设施信息。

正文完
 0