モジュールがカーネルに静的にコンパイルされると、modinfoは機能しません。回避策は何ですか?

モジュールがカーネルに静的にコンパイルされると、modinfoは機能しません。回避策は何ですか?

modinfoモジュールパラメータを調整するのに非常に便利なツールです(少なくともどのオプションが利用可能かを検索します)。例:

$ modinfo dummy
filename:       /lib/modules/2.6.32-openvz-042stab102.9-amd64/kernel/drivers/net/dummy.ko
alias:          rtnl-link-dummy
license:        GPL
srcversion:     B2C3F349E2A5175104E1B3E
depends:
vermagic:       2.6.32-openvz-042stab102.9-amd64 SMP mod_unload modversions
parm:           numdummies:Number of dummy pseudo devices (int)

しかし、驚くことなく、モジュールがカーネルに静的にコンパイルされていない場合にのみ機能します。モジュールをコンパイルしたがネットワークにアクセスできない場合は、この情報や同様の情報を取得するための回避策はありますか?

答え1

modinfoのほとんどまたはすべての情報は、マイナーまたは(作成者、ライセンス)組み込みモジュール(魔法、依存関係、ファイル名など)には適用されません。

考えられる実用的な価値がある唯一のものは「parm」ですが、組み込み関数をロードしないため、同じ方法で組み込み関数には適用されません。とにかく、ほとんどのモジュールにはこれはありません。ユーザー空間で直接調整できるカーネル機能は一般的に/sys

あなたが要求するもの(「ネットワークアクセスなし」 - つまり、Googleが利用できない)は次のとおりです。文書。カーネルがこれを「動的に」逆流させない理由は、これが動的ではなく静的であり、すでに存在しているからです。ソースツリーはDocumentationディレクトリに付属しており、特定のライセンス、作成者などの場合、この静的情報もソースツリーにあります。ローカルのオフラインコピーをダウンロードして保存できます。

たとえば、組み込みモジュールの一部のパラメータは、起動時にカーネルコマンドラインで設定できます。これらは以下にリストされていますDocumentation/kernel-parameters.txt(ドキュメントツリーはオンラインでコピーされているので見ることができます)。ここ)。

私はこれがまさにあなたが望むものではないことを知っています。しかし、あなたが本当に望むことはあまり役に立ちません。同様に、ほとんどの情報はマイナーなものです(ソフトウェアの使用には関係ありません)。コンパイルされていないモジュールに与えられた名前も本質的に関連していません。ロード可能なモジュールにコンパイルされた場合は、HFSファイルシステムへのアクセスを提供する機能を呼び出しますかhfs?実際にはいいえ関連性があるか意味のある情報です。例えば、あなたが要求するのは、さまざまな内部関数呼び出しの名前と署名を見つけるために実行中のアプリケーションを照会できるようにしたいのと少し似ています。これに関連する内容が関連性があるか意味がある限り、有機農が含まれています。文書。

関連情報