Linux の lsusb コマンドと実践例

LinuxLinuxBeginner
オンラインで実践に進む

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

この実験では、Linux で lsusb コマンドを使用してシステムに接続された USB デバイスを監視および管理する方法を学びます。lsusb コマンドは、USB デバイスのバス番号とデバイス番号、ベンダー ID と製品 ID、デバイス クラスなどの詳細な情報を提供します。この実験を通じて、lsusb コマンドの基本的な使い方を学び、特定の USB デバイス情報を識別する方法を学びます。この実験で扱う内容は、Linux 環境での USB デバイスのトラブルシューティングと管理を効果的に行うのに役立ちます。

Linux Commands Cheat Sheet

lsusb コマンドの目的を理解する

このステップでは、Linux での lsusb コマンドの目的と基本的な使い方を理解します。lsusb コマンドは、システムに接続された USB デバイスの情報を一覧表示する強力なツールです。

lsusb コマンドは、USB デバイスに関する次の重要な情報を提供します。

  • USB デバイスのバス番号とデバイス番号
  • USB デバイスのベンダー ID と製品 ID
  • デバイス クラス、サブクラス、およびプロトコル情報
  • メーカー、製品名、シリアル番号などの USB デバイスに関する詳細情報

lsusb コマンドを実行するには、ターミナルで次のコマンドを実行します。

$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

出力例:

出力には、USB 2.0 と USB 3.0 インターフェイスのルート ハブを含む、システムに接続されたいくつかの USB デバイスが表示されます。

次のステップでは、特定の USB デバイス情報を識別するための lsusb コマンドの高度な使い方を探求します。

lsusb コマンドの基本的な使い方を探求する

このステップでは、システムに接続された USB デバイスに関するより詳細な情報を取得するための lsusb コマンドの基本的な使い方を探求します。

まず、lsusb コマンドに -v(冗長)オプションを付けて、各 USB デバイスに関するより詳細な情報を表示しましょう。

$ lsusb -v
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
[...]

出力には、各 USB デバイスのデバイス クラス、サブクラス、プロトコル、およびその他の情報などの追加の詳細が含まれています。

また、lsusb コマンドを使用して、ベンダーと製品 ID で特定の USB デバイスを検索することもできます。たとえば、USB マウスに関する情報を見つけるには、次のコマンドを使用します。

$ lsusb -d 046d:c077
Bus 001 Device 003: 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        64
      idVendor           0x046d Logitech, Inc.
      idProduct          0xc077 M105 Optical Mouse
      bcdDevice            1.00
      iManufacturer           1 Logitech
      iProduct                2 M105 Optical Mouse
      iSerial                 0
      bNumConfigurations      1
      Configuration Descriptor:
        bLength                 9
        bDescriptorType         2
        wTotalLength           34
        bNumInterfaces          1
        bConfigurationValue     1
        iConfiguration          0
        bmAttributes         0x80
          (Bus Powered)
        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.11
            bCountryCode            0 Not supported
            bNumDescriptors         1
            bDescriptorType        34 Report
            wDescriptorLength      71
          Report Descriptor: (length is 71)
            Item(Global): Usage Page, data= [ 0x01 ] 1 (Generic Desktop Controls)
            Item(Local): Usage, data= [ 0x02 ] 2 (Mouse)
            [...]

このコマンドは、USB マウスのベンダーと製品 ID、デバイス クラス、およびレポート ディスクリプタを含む詳細な情報を表示します。

lsusb コマンドの基本的な使い方を探求することで、Linux システム上の USB デバイス関連の問題を効果的に特定してトラブルシューティングすることができます。

lsusb を使って USB デバイス情報を特定する

この最後のステップでは、システムに接続された USB デバイスの詳細な情報を特定するために lsusb コマンドをどのように使用するかを学びます。

まず、システムに接続されたすべての USB デバイスを一覧表示しましょう。

$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

この出力には、各 USB デバイスのバス番号、デバイス番号、ベンダー ID、および製品 ID が表示されます。

特定の USB デバイスに関するより詳細な情報を取得するには、lsusb -v コマンドを使用して、ベンダーと製品 ID を指定します。たとえば、ベンダー ID が 046d で製品 ID が c077 の USB マウスに関する情報を取得するには、次のコマンドを実行します。

$ lsusb -v -d 046d:c077
Bus 001 Device 003: 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        64
      idVendor           0x046d Logitech, Inc.
      idProduct          0xc077 M105 Optical Mouse
      bcdDevice            1.00
      iManufacturer           1 Logitech
      iProduct                2 M105 Optical Mouse
      iSerial                 0
      bNumConfigurations      1
      [...]

この出力には、USB マウスのデバイス ディスクリプタ、コンフィギュレーション ディスクリプタ、および HID レポート ディスクリプタを含む詳細な情報が提供されます。

さまざまなオプションを使って lsusb コマンドを使用することで、Linux システム上の USB デバイス関連の問題を効果的に特定してトラブルシューティングすることができます。

まとめ

この実験では、Linux での lsusb コマンドの目的と基本的な使い方を学びました。lsusb コマンドを使用すると、システムに接続された USB デバイスの情報を一覧表示できます。これには、バス番号、デバイス番号、ベンダー ID、製品 ID、デバイス クラス、サブクラス、およびプロトコルが含まれます。各 USB デバイスに関するより詳細な情報を表示するには、lsusb コマンドに -v オプションを付けて使用します。また、lsusb コマンドを使用して、ベンダーと製品 ID で特定の USB デバイスを検索することもできます。

Linux Commands Cheat Sheet