システムの起動時にロードされるカーネルモジュール名の特定のリストまたは場所があるかどうか疑問に思います。
lsmod
または、ロードされたコマンドのみを表示するなどのコマンドですcat /proc/kallsyms
。
どのモジュールが手動でロードされたかを確認したいと思います。
よろしくお願いします!
ベストアンサー1
複数のリストがある場合があります。 1つはinitramfsにロードされたカーネルモジュール(つまり、デフォルトのI / Oおよびルートファイルシステムへのアクセスに必要なモジュール)のものであり、もう1つのリストはルートファイルシステムがマウントされた後にロードされます。
/etc/initramfs-tools/modules
DebianやUbuntuなどの関連Linuxディストリビューションでは、initramfsにロードするモジュール(特定の順序で並べられた順序)と、/etc/modules-load.d/
ルートファイルシステムにアクセスできるようになった後にロードするモジュールを指定するためのドロップダウンディレクトリがあります。
initramfsコンストラクタを使用する展開の場合、および/またはおよび/または行のファイルをdracut
確認できます。これにより、指定されたモジュールがinitramfsに追加され、ロードされる場合が発生します。/etc/dracut.conf
/etc/dracut.conf.d/*.conf
add_drivers
force_drivers
filesystems
force_drivers
これに加えて、最新のシステムでは通常、多くのモジュールがハードウェアの自動検出によってロードされます。カーネルは自動検出可能バスで検出されたハードウェアIDを特定のモジュールエイリアスとしてフォーマットし、モジュール自体にはハードウェアと一致するワイルドカード文字列が含まれます。サポートする。一致するものが見つかると、一致するモジュールがロードされます。各ドライバモジュールには、通常、モジュールとハードウェアの互換性をさらに確認できる、より詳細なハードウェア検出ルーチンがあります。
システムバスを自動検出できないアーキテクチャ(RasPiやさまざまな組み込みデバイスなど)では、「デバイスツリー」(カーネルイメージ.dtb
に添付されたファイル、またはブートローダによって別々にロードされるファイル)はシステムハードウェアを表します。これには互換性のための識別子が含まれます。 「プログラミングモデル」は、適切なモジュールを自動的にロードできるように、カーネルでモジュールエイリアス文字列を形成するために使用されます。
カーネル開発者の目標は、合理的に可能な限りカーネルモジュールのロードを自動化することです。