回答:
私の知る限り、この情報はどこにも記録されません。それがあったとしても、その間にファイルが移動または削除された場合、情報は正確ではない可能性があります(だれもそのような機能を実装していない理由を説明します)。
モジュール名が与えられfoo
、modprobe -l foo
モジュールがあれば、ファイルが現在ロードされるものを示してfoo
要求されました。ただしmodprobe -o bar
、モジュールのロードに使用された場合、デフォルトのモジュール名は記録されず、のみが記録されbar
ます。
insmod
以下とmodprobe
からコードをロードすることにより、作業.ko
メモリにファイルとカーネルにそのメモリ内のコピーを渡します。その後、カーネルは独自のコードのコピーを保持します。この情報が必要な場合は、独自のログを保持する必要があります(また、カーネルファイルのアップグレードなどによってモジュールファイルを削除したり移動したりしないでください)。これは、Unixの世界における一般的な哲学であることに注意してください。ファイルの名前変更または削除は常に機能し、後でファイルを開こうとしない限り問題を引き起こすことはありません。
私は少し遊んでいて、次のコマンドを見つけました。
$ lsmod | cut -d " " -f 1
ロードされたモジュールのリストを出力します。
$ modinfo modulename -n
モジュールのファイル名を出力します。
$ list=`lsmod | cut -d " " -f 1`; echo "$list" | while read line; do echo $line; echo -e `modinfo $line -n`\\n; done;
カーネルモジュールのリストとそのファイルパスを出力します。
modinfo
、モジュールが別名でロードされたmodprobe -o
場合、またはモジュールファイルの名前が変更された場合は役に立ちません。
cat / proc / modules
more / proc / modules
イメージ
sudo rmmod print