modinfoが「モジュールが見つかりませんでした」と言うのに、lsmodはモジュールがロードされていると主張するのはなぜですか?


9

lsmodコマンドのマニュアルページによると、「現在ロードされているカーネルモジュール」が表示されます。

modinfo実際に使用されているカーネルオブジェクト(.ko)ファイルを示すために使用するスクリプトを作成しました。

#!/bin/sh
for i in `lsmod | awk '{print $1}' | sed -n '1!p'`; do
echo "###############################$i###############################"
echo ""
modinfo $i
echo ""
echo ""
done

今、私modinfo nvidiaはそれが次の出力を示すことを発見しました:

ERROR: modinfo: could not find module nvidia

これについて何か説明はありますか?

回答:


10

あなたのnvidiaモジュールは完全にロードされたと作業です。問題はにありますmodinfo

modinfo/lib/modules/$(uname -r)/modules.*通常はで更新されるファイルを読み取って、既知のモジュールのリストをフェッチしdepmodます。

モジュールのdepmod -aインストール後に実行されていない場合nvidia、それmodinfoはそれについて知りません。これは、とのモジュールをロードするから誰を阻止しないinsmodlsmod読み込まれた場合にうまくそれを表示します。


sudo depmod -aを実行しましたが、modinfoはまだnvidiaモジュールを認識していませんが、lsmodはそれを表示します。どうすればいいの?
Hakaishin

@Hakaishin nvidia-410ドライバーがインストールされたubuntu 16.04を使用していますnvidia_410。カーネルモジュールの名前はです。だから、modinfo nvidia_410または同様にしてみてください。
cheshirekow

0

最近nvidiaドライバーをアンインストールした場合は、システムからモジュールをアンインストールした可能性がありますが、それはまだinitrdにあります。initrdにあるものはで確認できますlsinitrd。または、カーネルを再インストールして、に表示されなくなったかどうかを確認してくださいlsmod

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.