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



