Linuxのカーネルモジュールの情報を確認する
Linuxシステムが起動するたびに、システムによって読み込まれるカーネルモジュールがいくつかあり、ファイルシステム、新しいハードウェア、その他の多くのものに対する追加のサポートが提供されます。特定のカーネルモジュールに関する情報を取得することは、重要なトラブルシューティングスキルである可能性があります。このチュートリアルでは、modinfoコマンドとそのさまざまなオプションを使用して、説明、依存関係、著者、または関連するオブジェクトファイル名などのモジュール情報を取得する方法を説明します。
このチュートリアルでは、あなたは学びます:
- 現在ロードされているLinuxカーネルを確認する方法
- 現在ロードされているカーネルモジュールを確認する方法
- ロードされたカーネルモジュールの詳細情報を表示する方法
modinfoコマンドを使用してカーネルモジュール情報を確認する方法
ロード可能なカーネルモジュールは、デフォルトで/lib/modulesディレクトリ内にインストールされます。各特定のカーネル用に、その特定のカーネルで使用されるモジュールを格納するための個別のディレクトリが作成されます。
ls /lib/modules/
5.15.0-25-generic 5.15.0-30-generic
テストシステムの出力から、この特定のシステムには2つのカーネルがインストールされていることがわかります。Linuxシステムでは、エラーが発生した場合に古いバージョンに戻るために、追加のカーネルが1つまたは2つ残っているのが一般的です。しかし、同時に実行できるカーネルは1つだけであることを忘れないでください。
現在使用中のカーネルをunameコマンドで確認できます。
uname -a
Linux linuxconfig 5.15.0-30-generic #31-Ubuntu SMP Thu May 5 10:00:34 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
上記の uname コマンドの出力は、5.15.0-30-generic が現在のシステムの実行中カーネルであり、したがって /lib/modules/5.15.0-30-generic/ ディレクトリから読み込まれたモジュールが使用されていることを示しています。現在読み込まれているすべてのカーネルモジュールをリストするには、lsmod コマンドを使用できます:
lsmod
modinfo を使って読み込まれたモジュールの情報を表示する
さて、現在ロードされているカーネルモジュールの情報を確認するためにmodinfoコマンドを使用します。以下のいくつかの例を確認し、それぞれのコマンドオプションが何をするかをメモしてください。
まず、
-dオプションを使って特定のモジュールの一般的な説明を取得しましょう:modinfo -d psmouse PS/2 mouse driver次に、この特定のモジュールの実際のオブジェクトファイルの場所を
-nオプションで見てみましょう:modinfo -n psmouse /lib/modules/5.15.0-30-generic/kernel/drivers/input/mouse/psmouse.koインストールされているLinuxカーネルの任意のオブジェクトファイルの場所を確認するには、
-kスイッチを使用してカーネル名を指定します。modinfo -k 5.15.0-30-generic -n psmouse /lib/modules/5.15.0-30-generic/kernel/drivers/input/mouse/psmouse.koモジュールの著者に関する情報を取得するには、
-aオプションを使用してください。modinfo -a psmouse Vojtech Pavlik最後に、モジュールの依存関係情報を見つけるために、
-Fスイッチを使用できます:modinfo -F depends ppdev parport出力に何も返されない場合、そのモジュールには依存関係がないことに注意してください。
締めくくりの考え
このチュートリアルでは、Linuxシステム上でカーネルモジュールに関する情報を確認する方法を見ました。モジュールはLinuxシステムの機能を拡張し、ハードウェアおよびソフトウェアの追加サポートを提供するため、システム管理者がそれらのトラブルシューティングの基礎を知ることは重要です。読み込まれたカーネルモジュールに関する情報を確認する方法を知ったので、Linux上でカーネルモジュールを読み込んだりアンロードしたりする方法を学ぶために、モジュール管理のための基本的なLinuxカーネルコマンドに関する別のチュートリアルをチェックしてみてください。


