web-dev-qa-db-ja.com

どのデバイスがどのカーネルモジュールを使用しているかを確認するにはどうすればよいですか?

私はサムスンの電話GT-B3210を持っています。しばらくの間、動作するWindowsドライバーを見つけることができませんでした。私は結局見ることをあきらめました。それから、ある時、私はそのUSBポートを介して電話を充電し、Ubuntuを起動しましたが、デスクトップに電話のμSDカードリーダーを見ると嬉しい驚きを覚えました。

今度はジェンツーに切り替える必要があり、そこでも電話で作業できるようにしたいと思います。 Lsusbは、次のように検出されたと言っています
Bus 007 Device 006: ID 04e8:663f Samsung Electronics Co., Ltd SGH-E720/SGH-E840

しかし、lsmodはあまり役に立ちませんでした。ロードされたモジュールのリストで、電話に関連しているように見えるモジュールを見つけることができませんでした。

どのモジュールが電話で使用されているかを確認する他の方法はありますか?

3
AndrejaKo

USBデバイスは、/sys/bus/usb/devicesの下に7-6などで始まるいくつかのエントリとして表示されます。ディレクトリポイント内のdriverリンクは、デバイスにバインドされているモジュールの名前になります。

このような状況では、lsusbをより簡単かつ迅速に使用できると思います。出力例は次のとおりです。

 $ lsusb -t
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/3p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
...

ドライバーが使用されていない場合、行は次のようになります(私の例のデバイスは、カーネルからドライバーを削除したカメラです)。

    |__ Port 6: Dev 4, If 1, Class=Video, Driver=, 480M
4
nert