私はロードするために、いくつかのカーネルモジュールを探していますi2c-devとi2c-bcm2708。ただし、modprobeコマンドは以下を返します。
sudo modprobe i2c-dev
modprobe: module i2c-dev not found in modules.dep
システムで利用可能なすべてのモジュールを一覧表示するにはどうすればよいですか?それらはどのディレクトリにありますか?
私はロードするために、いくつかのカーネルモジュールを探していますi2c-devとi2c-bcm2708。ただし、modprobeコマンドは以下を返します。
sudo modprobe i2c-dev
modprobe: module i2c-dev not found in modules.dep
システムで利用可能なすべてのモジュールを一覧表示するにはどうすればよいですか?それらはどのディレクトリにありますか?
回答:
デフォルトでmodprobeは、ディレクトリにあるサブディレクトリからモジュールをロードします/lib/modules/$(uname -r)。通常、すべてのファイルには拡張子が付いている.koため、次のようにリストできます。
find /lib/modules/$(uname -r) -type f -name '*.ko'
または、圧縮ファイルを考慮に入れて:
find /lib/modules/$(uname -r) -type f -name '*.ko*'
ただし、モジュールを正常にロードするにmodprobeは、ファイルにリストされた依存関係/lib/modules/$(uname -r)/modules.dep(および対応するバイナリバージョンmodules.dep.bin)が必要です。システムにモジュールが存在するがリストにない場合は、そのdepmodような依存関係を生成し、モジュールをmodules.depとに自動的に含めるコマンドを実行する必要がありますmodules.dep.bin。
さらに、モジュールが正常にロードされると、ファイルにリストされます/proc/modules(コマンドを介してアクセスすることもできますlsmod)。
find /lib/modules/$(uname -r) -type f -name *.ko*
.gz
*.ko*現在のディレクトリに一致するファイルがある場合、シェルが展開する可能性があります。単一引用符の間にエスケープする方が良い: find /lib/modules/$(uname -r) -type f -name '*.ko*'
ありlsmodのコマンドkmodでパッケージアーチLinuxの一覧とのような他の有用なコマンドが含まれているLinuxカーネルモジュールの状態を示してどのようなmodinfo、rmmod modprobeあまりにもが。
L ISTあなたが入力できるパッケージで提供されるすべてのバイナリ:
pacman -Ql kmod | grep /bin/ --color=always
、そしてあなたもをチェックすることができる入出力とバイナリのwnerパッケージpacman -Qo lsmod。
Qスイッチがにあるのq ueryでローカルにインストールされたパッケージ(とは違っSへのS ynchronize、すなわち。リモートで確認すること)。
lsmodは、既にロードされているモジュールのみを表示することです。このスレッドの作成者には、ロード可能なカーネルモジュールのマップにないモジュールをロードする問題がありました。また、このソリューションはarchlinuxにのみ適用されます。これは著者の分布ではなく、他の人の問題を解決しないかもしれません。
lsmodは少なくともUbuntuでも利用可能です。しかし、私はこれがOPの問題を解決しないことに同意します。