Provided by: manpages-ja_0.5.0.0.20221215+dfsg-1_all 

名前
modprobe - Linux カーネルに対してモジュールの着脱を行う
書式
modprobe [-v] [-V] [-C config-file] [-n] [-i] [-q] [-b] [modulename] [module parameters...] modprobe [-r] [-v] [-n] [-i] [modulename...] modprobe [-c] modprobe [--dump-modversions] [filename]
説明
modprobe は、Linux カーネルに対して頭のよいやり方でモジュールの追加や取り外しを行います。 なお、ユーザの 便宜を考慮して、モジュール名に含まれる _ と - とを区別しません (アンダースコアへの変換が自動的に行われま す)。 modprobe は、モジュールディレクトリ /lib/modules/`uname -r` を見て、すべてのモジュールやそのほかの ファイルをそれ以下に捜します。 ただし、作成が任意の設定ファイルについては、/etc/modprobe.d ディレクトリを 調べます (modprobe.d(5) 参照)。 modprobe はまた、カーネルコマンドラインで指定された、 モジュールオプショ ンやブラックリストも使用します。前者の書式は <module>.<option> であり、後者の書式は modprobe.blacklist=<module> です。 なお、2.4 系列の Linux カーネル (このツールはサポートしていません) の場合とは違って、当バージョンの modprobe は、モジュールそのものに対しては何の操作も行いません。 シンボルの解決やパラメータの解釈といった 作業は、 カーネルの内部で行われます。そこで、モジュールの処理に失敗すると、 カーネルメッセージが出ること があります。dmesg(8) を参照してください。 modprobe は、modules.dep.bin ファイルが最新であることを当てにしています。このファイルは、modprobe と一緒 に配布され、現在の modprobe に対応している depmod(8) ユーティリティによって生成されます (depmod(8) 参 照)。 modules.dep.bin は、各モジュールが、ほかのどんなモジュールを必要としているかを (そういったものがあ れば) リストしており、modprobe は、このファイルを使用して、 そうした依存するモジュールを自動的に追加した り、取り外したりします。 modulename の後ろに引数を付けると、そうした引数はカーネルに渡されます (設定ファイルで指定しているモジュー ルオプション [訳注: モジュールパラメータとも言います] があれば、そこに追加されるわけです)。
オプション
-a, --all コマンドラインで指定されたモジュール名をすべて組み込みます。 -b, --use-blacklist このオプションを指定すると、modprobe は、設定ファイルに blacklist コマンドがあれば、それもモジュール 名に対して適用します。 このオプションは通常、udev(7) によって使用されます。 -C, --config このオプションは、設定ディレクトリをデフォルトの /etc/modprobe.d から変更します。 このオプションは、環境変数 MODPROBE_OPTIONS に入れられて、install や remove コマンド経由で、ほかの modprobe コマンドにも渡されます。 -c, --showconfig 設定ディレクトリを読み込み、有効な設定を標準出力に書き出して、終了します。 --dump-modversions あるモジュールが要求している、そのモジュールのバージョン管理情報のリストを表示します。 このオプション は通常、モジュールのバージョン管理の依存情報を利用して Linux のカーネルモジュールをパッケージにまとめ るために、 ディストリビューションによって使用されます。 -d, --dirname モジュール群にとってのルートディレクトリ。デフォルトでは / です。 --first-time 通常、modprobe は、すでに存在するモジュールの組み込みや、 存在しないモジュールの取り外しを命じられて も、処理に成功したものとして (何もせずに) 終了します。これは単純なスクリプトではまったく問題がありま せん。 でも、より複雑なスクリプトでは、modprobe が実際に何らかの処理を行ったかどうかを知りたいことが よくあります。 このオプションを使うと、modprobe は、実際には何もしなかった場合、 実行に失敗したことに なります。 --force-vermagic どのモジュールの中にも、 カーネルやコンパイラのバージョンといった重要な情報を含む短い文字列が存在しま す。 モジュールのロードに失敗して、 カーネルが「バージョンマジックが一致しない」と苦情を言って来る場 合、 このオプションを使えば、そのバージョンマジックを除去することができます。 言うまでもありません が、こうしたチェックは、 ユーザを守るためにあるのですから、自分のやっていることがよくわかっていないか ぎり、 このオプションを使うのは危険です。 このオプションは、組み込まれるどんなモジュールにも適用されます。 すなわち、コマンドラインで指定された モジュール (やエイリアス) だけでなく、 それが依存するモジュールがあれば、それにも適用されます。 --force-modversion CONFIG_MODVERSIONS を有効にして、モジュールをコンパイルすると、 そのモジュールが利用する (あるい は、提供する) すべてのインターフェースのバージョンを記録したセクションが、モジュール内に作られます。 モジュールのロードに失敗して、カーネルが「モジュールのインターフェースに、 バージョンがカーネル側と一 致しないものがある」と苦情を言って来る場合、 "--force-modversion" を使えば、そうしたバージョン情報を そっくり除去することができます。 言うまでもありませんが、こうしたチェックは、ユーザを守るためにあるの ですから、 自分のやっていることがよくわかっていないかぎり、このオプションを使うのは危険です。 このオプションは、組み込まれるどんなモジュールにも適用されます。 すなわち、コマンドラインで指定された モジュール (やエイリアス) だけでなく、 それが依存するモジュールがあれば、それにも適用されます。 -f, --force バージョン管理に関する情報がモジュールにあると、ロードが中断しかねない場合に、 モジュールからそうした 情報をすべて取り除こうとします。 これは --force-vermagic と --force-modversion の両方を使用するのと同 じことです。 言うまでもありませんが、こうしたチェックはユーザを守るためにあるのですから、 自分のやっ ていることがよくわかっていないかぎり、このオプションを使うのは危険です。 このオプションは、組み込まれるどんなモジュールにも適用されます。 すなわち、コマンドラインで指定された モジュール (やエイリアス) だけでなく、 それが依存するモジュールがあれば、それにも適用されます -i, --ignore-install, --ignore-remove このオプションを使うと、modprobe は、コマンドラインで指定されたモジュールに対して設定ファイル中に install や remove コマンドが存在しても、それを無視します (依存するモジュールについては、このオプショ ンを指定した場合でも、 設定ファイル中でそのモジュールに対して設定されているコマンドの対象になりま す)。 現状では、このオプションを使用した場合、install と remove の両方のコマンドが無視されることにな ります。 --ignore-install や --ignore-remove の片方のみを使って (そして、両方を使うことなく) より具体 的に指定しても、動作は変わりません。 modprobe.d(5) を参照してください。 -n, --dry-run, --show このオプションを指定すると、実際にモジュールを組み込んだり、取り外したり (それに、install や remove コマンドを実行したり) する以外のあらゆることを行います。 -v オプションと組み合わせると、問題が起きた ときのデバッグに便利です。 歴史的な理由から --dry-run と --show は事実上同じ意味なので、 どちらを 使っても構いません。 -q, --quiet このフラグを使用すると、modprobe は、モジュールを取り外したり、 組み込んだりしようとして、それが見つ からなかった場合に (しかも、それがエイリアスの名前でも、install や remove コマンドの対象でもなかった 場合に)、エラーメッセージを出さなくなります。それでも、 ゼロ以外のステータスで終了することに変わりは ありません。なお、カーネルは、 存在するかどうかが不確かなモジュールの探索を request_module 関数を使っ て便宜主義的に行うために、このフラグを使用します。 -R, --resolve-alias あるエイリアスに対応するモジュール名をすべて表示します。 モジュールのエイリアスに問題がある場合、デ バッグの役に立つかもしれません。 -r, --remove このオプションを指定すると、modprobe は、モジュールを組み込む代わりに、 それを取り外します。そのモ ジュールが依存しているモジュールも使用されていない場合は、 それもまた取り外そうとします。組み込みを行 う場合とは違って、 複数のモジュールをコマンドラインで指定することができます (モジュールを取り外す場合 には、モジュールパラメータを指定しても意味がありません)。 通常は、モジュールを取り外す理由などありませんが、 モジュールにバグのある場合には、それが必要になるこ ともあります。 もっとも、ご使用のディストリビューションのカーネルは、 モジュール取り外しのサポートを 有効にしてビルドされていないかもしれません。 -S, --set-version カーネルのバージョンを設定します。すなわち、カーネルのバージョン (それによって、モジュールを探しに行 く場所が決まります) を判断するのに、uname(2) を使用しません。 --show-depends あるモジュール (または、エイリアス) の依存関係を、そのモジュール自体も含めて、 一覧表示します。モ ジュールファイル名の集合 (空集合のこともあります) が、1 行に 1 ファイルずつ、各行の先頭に "insmod" を 付けて、出力されます。 このオプションの代表的な使い道は、ディストリビューションが initrd/initramfs イ メージを作成するとき、どのモジュールを収録するかを決めるのに使うことです。 Install コマンドが適用され ている場合は、"install" という文字列を行頭に置くことで、それを示しますが、そうした install コマンドが 実行されるわけではありません。なお、modinfo(8) を使えば、 モジュールの依存関係をそのモジュール自体か ら取り出すことができますが、 modinfo は、設定ファイルの alias や install といったコマンドについては、 何も知らないことに注意してください。 -s, --syslog このオプションを指定すると、エラーメッセージがある場合に、 それを標準エラーに送るのではなく、syslog の仕組みを通して出力します (LOG_NOTICE レベルの LOG_DAEMON として扱われます)。 このオプションは、標準 エラーが使えない場合にも、自動的に有効になります。 このオプションは、環境変数 MODPROBE_OPTIONS に入れられて、install や remove コマンド経由で、ほかの modprobe コマンドにも渡されます。 -V, --version プログラムのバージョンを表示して終了します。 -v, --verbose プログラムが何をやっているかについてメッセージを表示します。通常 modprobe がメッセージを出すのは、何 かがうまく行かなかったときだけです。 このオプションは、環境変数 MODPROBE_OPTIONS に入れられて、install や remove コマンド経由で、ほかの modprobe コマンドにも渡されます。
環境変数
環境変数 MODPROBE_OPTIONS は、modprobe コマンドに引数を渡すためにユーザが使用することもできます。
著作権
このマニュアルページの最初の版は、"Copyright 2002, Rusty Russell, IBM Corporation" でした。現在では、Jon Masters ほか数名によって保守されています。
関連項目
modprobe.d(5), insmod(8), rmmod(8), lsmod(8), modinfo(8) depmod(8)
著者
Jon Masters <jcm@jonmasters.org> 開発者 Robby Workman <rworkman@slackware.com> 開発者 Lucas De Marchi <lucas.de.marchi@gmail.com> 開発者 kmod 2021/01/29 MODPROBE(8)