/lib/modprobe.d/*.conf
/usr/local/lib/modprobe.d/*.conf
/run/modprobe.d/*.conf
modprobe コマンドでは、 複数のモジュールに対する追加や削除ができます。 そもそもモジュールには依存関係があるため、 そのようなモジュールに対しては、 どのようなオプションを適用するのかを示す必要があります。 /etc/modprobe.d ディレクトリに置くファイルは、 すべて .conf という拡張子を持つものであり、 必要となるオプションを指定します。 同時にこれらのファイルでは、 便利なエイリアス、 つまりモジュールに対する別名を生成するものとしても利用されます。 また、 特別な要件 (たとえば複数モジュールの挿入を要するなど) がある場合に、 通常の modprobe の動作を上書きすることができます。
なお、 モジュール名や (別モジュール名である) エイリアス名においては、 - や _ を名称に含めることができます。 そして両者は、 あらゆるモジュールコマンドを通じて区別なく用いられ、 アンダースコアへの変換は自動的に行われます。
modprobe.d 配下にあるファイルのフォーマットは単純です。 1 行に 1 つのコマンドを記述します。空行や '#' で始まる行は無視されます (コメント行として利用できます)。 行末に '\' を記述すれば、 次の行への継続を表します。 これを使えば、ファイルが多少すっきりします。
alias wildcard modulename
なお、 モジュールにはそれ独自のエイリアスを含めることができます。 これは modinfo を使って確認することができます。 こういったエイリアスは、 最後の手段として用いられます (実際のモジュール, install, remove, alias の各コマンドが設定内にない場合など)。
blacklist modulename
install modulename command...
モジュール追加によって依存関係を維持する対処として、 このコマンドが、 今後も長期的にその解決策となる保証はありません。 このコマンドは、 将来のリリースのある時点において、 最終的には削除か非推奨として、 警告する形に置き換わる予定です。 このコマンドを利用すると、 mkinitrd などのような配布ユーティリティーが行っているモジュール依存関係の自動検出の処理が複雑になります (なぜなら、 install コマンドが行っている処理内容を、 ある程度解釈しておかなければならないためです)。 理想的には、 本コマンドを用いずに、 モジュールが依存関係をすべて提供するようになるはずであり、 Linux カーネル内部において、 ソフトな依存関係を実装する作業が、 現在進行中です。
コマンド内に文字列 "$CMDLINE_OPTS" を用いると、 これは modprobe コマンドラインに指定されたオプションに置き換えられます。 これが役に立つのは、 "modprobe fred opt=1" とした場合に、 モジュールに対しては、 "opt=1" という引数が受け渡されることが期待されるためです。 たとえ設定ファイル内に install コマンドがあったとしても実現できます。 したがって先に示したコマンド例は "install fred /sbin/modprobe barney; /sbin/modprobe --ignore-install fred $CMDLINE_OPTS" となります。
options modulename option...
オプションは、 すべてまとめて追加されます。 つまりオプションは、 モジュール自体への指定、 エイリアスへの指定、 コマンドラインからの指定すべてです。
remove modulename command...
softdep modulename pre: modules... post: modules...
pre-deps モジュールと post-deps モジュールは、 modulename 引数として与えられたメインのモジュールの前後において、 modprobe がインストール (または削除) しようとする別のモジュール名、 あるいはエイリアス名のリストです。
例: 設定として "softdep c pre: a b post: d e" が与えられたとします。 "modprobe c" を実行するということは、 softdep がなかった場合には、 "modprobe a b c d e" を実行することと同じになります。 --use-blacklist などのフラグは、 指定されたモジュールすべてに適用されます。 一方で、 モジュールパラメーターは、 モジュール c にのみ適用されます。
注意: 同一の modulename を引数とする install コマンドまたは remove コマンドがある場合、 softdep が優先されます。
kmod の将来版においては、 上で説明した install の利用を避けるような警告を含めるつもりでいます。 これは、 カーネル内でのソフトな依存関係のサポートが完成した際に行います。 そういった依存関係は直接モジュール内で行われるようになるため、 そのサポートは、 本ユーティリティーの既存の softdep サポート機能を補助するものとなります。
この man ページの元々の著作権表記は Copyright 2004, Rusty Russell, IBM Corporation です。 現在は Jon Masters その他により保守されています。
modprobe(8), modules.dep(5)
Jon Masters <jcm@jonmasters.org>
Robby Workman <rworkman@slackware.com>
Lucas De Marchi <lucas.de.marchi@gmail.com>