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)