起動時にロードされるカーネルモジュール

起動時にロードされるカーネルモジュール

システムの起動時にロードされるカーネルモジュール名の特定のリストまたは場所があるかどうか疑問に思います。

lsmodまたは、ロードされたコマンドのみを表示するなどのコマンドですcat /proc/kallsyms

どのモジュールが手動でロードされたかを確認したいと思います。

よろしくお願いします!

ベストアンサー1

複数のリストがある場合があります。 1つはinitramfsにロードされたカーネルモジュール(つまり、デフォルトのI / Oおよびルートファイルシステムへのアクセスに必要なモジュール)のものであり、もう1つのリストはルートファイルシステムがマウントされた後にロードされます。

/etc/initramfs-tools/modulesDebianやUbuntuなどの関連Linuxディストリビューションでは、initramfsにロードするモジュール(特定の順序で並べられた順序)と、/etc/modules-load.d/ルートファイルシステムにアクセスできるようになった後にロードするモジュールを指定するためのドロップダウンディレクトリがあります。

initramfsコンストラクタを使用する展開の場合、および/またはおよび/または行のファイルをdracut確認できます。これにより、指定されたモジュールがinitramfsに追加され、ロードされる場合が発生します。/etc/dracut.conf/etc/dracut.conf.d/*.confadd_driversforce_driversfilesystemsforce_drivers

これに加えて、最新のシステムでは通常、多くのモジュールがハードウェアの自動検出によってロードされます。カーネルは自動検出可能バスで検出されたハードウェアIDを特定のモジュールエイリアスとしてフォーマットし、モジュール自体にはハードウェアと一致するワイルドカード文字列が含まれます。サポートする。一致するものが見つかると、一致するモジュールがロードされます。各ドライバモジュールには、通常、モジュールとハードウェアの互換性をさらに確認できる、より詳細なハードウェア検出ルーチンがあります。

システムバスを自動検出できないアーキテクチャ(RasPiやさまざまな組み込みデバイスなど)では、「デバイスツリー」(カーネルイメージ.dtbに添付されたファイル、またはブートローダによって別々にロードされるファイル)はシステムハードウェアを表します。これには互換性のための識別子が含まれます。 「プログラミングモデル」は、適切なモジュールを自動的にロードできるように、カーネルでモジュールエイリアス文字列を形成するために使用されます。

カーネル開発者の目標は、合理的に可能な限りカーネルモジュールのロードを自動化することです。

おすすめ記事