modprobe - システム管理コマンドの説明 - Linux コマンド集 一覧表
名前
modprobe - Linux カーネルにモジュールを追加したり削除したりするプログラム
書式
modprobe
[ -v
] [ -V
] [ -C config-file
] [ -n
] [ -i
] [ -q
] [ -o modulename
] [ modulename
] [ module parameters
...
]
modprobe
[ -r
] [ -v
] [ -n
] [ -i
] [ modulename
...
]
modprobe
[ -l
] [ -t dirname
] [ wildcard
]
modprobe
[ -c
]
説明
modprobe は Linux カーネルに賢くモジュールを追加したり削除したりする。 利便性のため、モジュール名において _ と - の違いはないことに注意。 modprobe は、 全てのモジュールと他のファイルを モジュールディレクトリ /lib/modules/`uname -r` から参照する。 このほかに、もしあれば /etc/modprobe.conf 設定ファイルと /etc/modprobe.d ディレクトリを参照する (modprobe.conf (5) を参照) 。
このバージョンの modprobe は、 自身ではモジュールに対して何もしないことに注意。 シンボルの解決やパラメータの解釈といった処理はカーネルの中で行なわれる。 そのため、モジュールの不具合はカーネルのメッセージとして報告されることもある。 dmesg (8) を参照。
modprobe を実行するときは、 depmod (depmod (8) を参照) で生成された modules.dep が最新の状態になっていなければならない。 このファイルには、 それぞれのモジュールが (もしあれば) 他のどのモジュールを 必要としているかが列挙されていて、 modprobe はこれを使って依存するモジュールを自動的に追加したり削除したりする。 (modules.dep (5) を参照) 。
modulename の後ろに指定された引数は、 カーネルに渡される (設定ファイルに列挙されたオプションに追加される) 。
オプション
- -v --verbose
-
プログラムが何をしているかに関するメッセージを表示する。
通常、 modprobe
は何かまずいことが起こった場合に限って
メッセージを表示する。
このオプションは install および remove コマンドを通じて、 MODPROBE_OPTIONS 環境変数にある modprobe の他のコマンドに渡される。 - -C --config
-
このオプションはデフォルトの設定ファイル
(/etc/modprobe.conf
や /etc/modprobe.d/
)
を無視する。
このオプションは install および remove コマンドを通じて、 MODPROBE_OPTIONS 環境変数にある modprobe の他のコマンドに渡される。 - -c --showconfig
- 設定ファイルの内容を表示し、終了する。
- -n --dry-run
- このオプションは実際にモジュールを登録したり削除したりする (あるいは install や remove コマンドを実行する) 以外の、 全ての処理を行なう。 -v と組み合わせて使うと、不具合をデバッグするのに便利である。
- -i --ignore-install --ignore-remove
- このオプションを使うと、 modprobe は コマンドラインで指定されたモジュールに対する 設定ファイル中の install および remove コマンドを (もしあれば) 無視する (ただし、依存するモジュールは設定ファイル中のコマンドに従う) 。 modprobe.conf (5) を参照。
- -q --quiet
- 通常、 modprobe は 見つからない (かつエイリアスでもないか install /remove コマンドでもない) モジュールを 削除したり登録したりしようとすると、エラーを通知する。 このフラグを使うと、 modprobe は でたらめな名前は単に無視する (カーネルはこの名前を使って 存在するかもしれないモジュールを日和見的にプローブする) 。
- -r --remove
-
このオプションで modprobe
は
モジュールを削除する。
このオプションがない場合は登録する。
依存するモジュールも使われていない場合、
modprobe
はそれらも削除しようとする。
登録とは異なり、複数のモジュールをコマンドラインで指定することができる
(モジュールを削除するときにモジュールパラメータを指定するのは意味がない) 。
通常は、モジュールを削除する理由などないが、 不具合のあるモジュールには必要である。 使っているカーネルがモジュールの削除に対応していないかもしれない。 - -V --version
- プログラムのバージョンを表示し、終了する。 古いカーネルで実行する場合の注意については下を参照。
- -f --force
-
モジュールからバージョンに関する情報を取り除こうとする
(そうしないとロードできないモジュールに対して) 。
このオプションは
--force-vermagic
と --force-modversion
オプションの
両方を使ったのと同じである。
当然のことながら、
これらのチェックはあなたを守るために存在するのであって、
このオプションを使うのは危険である。
このオプションは登録されるすべてのモジュールに適用される。 つまり、 コマンドラインで指定したモジュール (またはエイリアス) だけでなく、 依存するモジュールにも有効である。 - --force-vermagic
-
どのモジュールにも、
カーネルやコンパイラのバージョンといった、
重要な情報を持つ短い文字列がある。
モジュールがロードに失敗し、カーネルが "version magic" が
一致しないと文句を言う場合、このオプションを使って
"version magic" を削除することができる。
当然のことながら、
これらのチェックはあなたを守るために存在するのであって、
このオプションを使うのは危険である。
このオプションは登録されるすべてのモジュールに適用される。 つまり、 コマンドラインで指定したモジュール (またはエイリアス) だけでなく、 依存するモジュールにも有効である。 - --force-modversion
-
モジュールが CONFIG_MODVERSIONS をセットして
コンパイルされている場合、
モジュールが使っている (または提供する)
ひとつひとつのインタフェースのバージョンを記したセクションが生成される。
モジュールがロードに失敗し、
カーネルがインタフェースのバージョンの一致しないものがあると文句を言う場合、
"--force-modversion" を使ってバージョン情報をばっさり削除することができる。
当然のことながら、
これらのチェックはあなたを守るために存在するのであって、
このオプションを使うのは危険である。
このオプションは登録されるすべてのモジュールに適用される。 つまり、 コマンドラインで指定したモジュール (またはエイリアス) だけでなく、 依存するモジュールにも有効である。 - -l --list
- 指定されたワイルドカード (あるいはワイルドカードが指定されない場合 "*") に一致する すべてのモジュールを列挙する。 このオプションは下位互換性のために用意されている。 もっと柔軟性のある代替品として、 find (1) や basename (1) を参照。
- -a --all
- 指定されたワイルドカードに一致する全てのモジュールを登録する。 このオプションは下位互換性のために用意されている。 もっと柔軟性のある代替品として、 find (1) や basename (1) を参照。
- -t --type
- -l を 指定された dirname に一致するディレクトリにあるモジュールに限定する。 このオプションは下位互換性のために用意されている。 もっと柔軟性のある代替品として、 find (1) や basename (1) を参照。
- -s --syslog
-
このオプションを使うと、
すべてのエラーメッセージが syslog の仕組みで
(LOG_NOTICE というレベルの LOG_DAEMON として) 通知されるようになる。
このオプションがない場合は標準エラーに出力される。
このオプションは標準エラーが使えない場合、自動的に有効になる。
このオプションは install および remove コマンドを通じて、 MODPROBE_OPTIONS 環境変数にある modprobe の他のコマンドに渡される。 - --set-version
- カーネルバージョンを設定する。 このオプションがない場合、 カーネルバージョン (モジュールを検索する場所を表す) を 決定するために uname (2) が使われる。 このオプションは下位互換性のチェックも無効にする (そのため modprobe.old (8) は一切実行されない) 。
- --show-depends
- モジュール (またはエイリアス) の依存関係を列挙する。 モジュール自身も含まれる。 このオプションは モジュールのファイル名の集合 (空の場合もある) を生成する。 1 行に 1 個のモジュールが表示され、先頭に "insmod" が付く。 install コマンドが適用される場合、先頭に "install" が付く。 install コマンドは一切実行しない。 modinfo (8) を使えば モジュール自身からモジュールの依存関係を取り出すことができるが、 エイリアスや install コマンドについては全く分からないことに注意。
- -o --name
- このオプションはカーネルに登録されるモジュールの名前を変更しようとする。 テスト用のモジュールには複数回登録することのできるものがあり便利だが、 カーネルは同じ名前のモジュールが 2 個あると拒否する。 通常、モジュールを複数回登録する必要はないはずである。 なぜならモジュールに対応していない場合に役に立たないからである。
- --first-time
- 通常、 modprobe は すでに存在するモジュールを登録しようとした場合や 存在しないモジュールを削除しようとした場合にも 成功する (そして何もしない) 。 この振る舞いは modutils と下位互換性があり、 単純なスクリプトにとっては望ましい。 しかし、もっと複雑なスクリプトでは modprobe が実際に何かをしたかどうかを知りたくなることも多い。 このオプションは上のような場合、 modprobe が失敗するようにする。
下位互換性
このバージョンの modprobe は、 カーネル 2.5.48 およびそれ以降のためのものである。 古い形式のモジュールに対応したカーネルを検出すると (そのためのほとんどの処理はユーザ空間で行なわれる) 、 その場で modprobe.old を実行しようとする。 そのため、ユーザは全く意識しなくてよい。
環境変数
MODPROBE_OPTIONS 環境変数も modprobe に引数を渡すのに使うことができる。
著作権
このマニュアルページの著作権表示は Copyright 2002, Rusty Russell, IBM Corporation.
関連項目
modprobe.conf
(5),
lsmod
(8),
modprobe.old
(8)