このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。

【Linux】USBに接続されたデバイス情報を表示する:lsusbコマンド

USBに接続されたデバイス情報を表示する:lsusbコマンド

 システム管理者やエンジニアにとって、システムに接続されているUSBデバイスの詳細を把握することは非常に重要です。USB(Universal Serial Bus)は、多くのデバイスが接続される一般的なインターフェースであり、日常的に使用されるマウス、キーボード、プリンター、外部ストレージデバイスなどが含まれます。lsusbコマンドは、USBバスに接続されたデバイスの情報を表示するためのツールで、接続されているUSBデバイスの詳細な情報を簡単に取得できます。ここでは、lsusbコマンドの概要、主なオプション、使用例について解説します。

デバイス情報を確認するには

 接続されたデバイスの情報は、lspciコマンドとlsusbコマンドで確認できます。lspciコマンドはPCIバスに接続されたデバイスの情報を表示し、lsusbコマンドはUSBバスに接続されたデバイスの情報を表示します。これにより、システムに接続されているハードウェアデバイスの詳細を簡単に把握できます。

lsusbコマンドの概要

 lsusbコマンドは、USBバスに接続されたデバイスの情報を表示するためのコマンドです。このコマンドを使用することで、USBデバイスの詳細情報を確認することができます。

【構文】
lsusb [オプション]

主なオプションと説明

オプション説明
-v詳細な情報を表示します。
主なオプションと説明

lsusbコマンドの実行結果

以下は、lsusbコマンドの実行結果の例です。

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver

※USBにデバイスが何も接続されていない場合は、USBポート(root hub)のみが表示されます。

lsusbコマンドで出力される項目

  • バス番号(Bus)
    ・例:Bus 001
    ・デバイスが接続されているUSBバスの番号を示します。
  • デバイス番号(Device)
    ・例:Device 001
    ・USBバス上のデバイスの番号を示します。
  • ID
    ・例:ID 1d6b:0002
    ・デバイスのベンダーIDとプロダクトIDを示します。1d6bはベンダーID、0002はプロダクトIDです。
  • ベンダー名
    ・例:Linux Foundation
    ・デバイスの製造元を示します。
  • デバイス名
    ・例:2.0 root hub
    ・デバイスの名前またはモデルを示します。

コマンドの使用例と解説

1.基本的な使用法

・「lsusb」コマンドを実行します。

 オプションを指定しないで、lspciコマンドを実行します。※表示されるデバイスはホストマシンの環境によって異なります。

user01@ubuntu-vm:~$ lsusb
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 80ee:0021 VirtualBox USB Tablet
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

※USBにデバイスが何も接続されていない場合は、USBポート(root hub)のみが表示されます。

2.詳細な情報を表示する(-vオプション)

・「lsusb -v」コマンドを実行します。

すべてのUSBデバイスの詳細な情報を表示します。

user01@ubuntu-vm:~$ lsusb -v

Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 
  bDeviceProtocol         0 Full speed (or root) hub
  bMaxPacketSize0        64
  idVendor           0x1d6b Linux Foundation
  idProduct          0x0002 2.0 root hub
  bcdDevice            6.05
  iManufacturer           3 Linux 6.5.0-44-generic ehci_hcd
  iProduct                2 EHCI Host Controller
  iSerial                 1 0000:00:0b.0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0019
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         9 Hub
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 Full speed (or root) hub
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0004  1x 4 bytes
        bInterval              12
(省略)

まとめ

 lsusbコマンドは、USBバスに接続されたデバイスの情報を表示するための便利なツールです。システム管理者は、このコマンドを使用して、システムに接続されているUSBデバイスの詳細を簡単に確認できます。主なオプションを使用することで、特定のデバイスの情報や詳細な情報を取得することができます。これにより、システムのハードウェア構成を把握し、トラブルシューティングを行う際に役立ちます。