| コマンド名称 |
depmod |
最終更新日 |
2008-08-31 |
| コマンド機能 |
ローダブルカーネルモジュールの依存関係の記述を扱う |
| 機能概要 |
Linux のモジュール化カーネルを管理するための、 ユーザー・管理者・ディストリビューションメンテナ向けユーティリティである |
| コマンドの由来 |
dependency module |
| RPMパッケージ名 |
module-init-tools |
対象バージョン |
3.4 |
| コマンド書式 |
depmod [-aA] [-ehnqrsuvV] [-C configfile] [-F kernelsyms] [-b basedi-rectory]
[forced_version]
depmod [-enqrsuv] [-F kernelsyms] module1.o module2.o ... |
| オプション |
-a, --all
設定ファイル /etc/modules.conf があれば、そこで指定されている全てのディレクトリでモジュールを検索する
-A, --quick
ファイルのタイムスタンプを比較し、さらに必要ならば depmod -a と同じように振る舞う。このオプションは、何か変更があった場合にのみ依存関係ファイルを更新する
-e, --errsyms
各モジュールごとに、解決されていない全てのシンボルを表示する
-h, --help
オプションの一覧を表示して直ちに終了する
-n, --show
依存関係ファイルを/lib/modules以下ではなく標準出力に書き出す
-q, --quiet
quiet モード。見付からないシンボルがあっても文句を言わない
-r, --root
ユーザによっては、モジュールを root 以外のユーザー ID でコンパイルし、そのモジュールを
root でインストールすることがある。このプロセスでは、モジュールの所有者が
root 以外のユーザー ID のままになることがある (ディレクトリの所有者が root
であっても)。非 rootのユーザー ID を許してしまうと、侵入者がそのユーザー
ID 保有のモジュールを置き換えることが可能になるかもしれず、これをきっかけにroot
アクセスを奪取されてしまうかもしれない
デフォルトでは、modutils は root の所有でないモジュールの利用を拒否しようとする。
-r を指定すると、このエラーを抑制し、root 以外の所有するモジュールを root
がロードできるようになる
-r の利用は大きなセキュリティ上の危険を招く可能性があり、推奨できない
-s, --syslog
全てのエラーメッセージを、標準出力ではなく syslog デーモン経由で書き出す
-u, --unresolved-error
depmod 2.4 は解決できないシンボルがあったときには返り値を設定しない。次の
modutils のメジャーリリース (2.5) では、解決できないシンボルに対して返り値を設定する予定である。
modutils 2.4 に対して非ゼロの返り値を期待しているディストリビューションもあるが、この変更は古い動作を期待しているユーザに対して問題を引き起こすかもしれない。
depmod 2.4 に非ゼロの返り値を希望する場合は -u を指定すること。 depmod
2.5 は -u フラグを黙って無視し、解決できないシンボルがあった場合には常に非ゼロの返り値を戻す
-v, --verbose
各モジュールを処理するごとに、それらのモジュールの名前を表示する
-V
depmod のバージョンを表示する
以下のオプションは、ディストリビューションを管理する人々に便利であろう
-b basedirectory, --basedir basedirectory
環境を変更するために、モジュールのサブツリーが含まれるディレクトリツリー /lib/modules をどこか別の場所に移したい場合、その移動された /lib/modules イメージを探す場所を -b オプションを使ってdepmod に伝える。 depmod が出力するファイル modules.dep におけるファイル参照は、basedirectory パスを含まない。すなわち、最終的なディストリビューションでファイルツリーが basedirectory/lib/modules から /lib/modules に戻されても、全ての参照は正しく利用できる
-C configfile, --config configfile
configfile を /etc/modules.conf の代わりに用いる。環境変数 MODULECONF を使っても、設定ファイルを /etc/modules.conf (あるいは/etc/conf.modules (使わないほうが良い)) 以外に指定できる
-F kernelsyms,--filesyms kernelsyms
現在実行されているカーネルとは別のカーネルに対して依存関係ファイルを作成する場合、 depmod に正しいカーネルシンボルのセットを利用させ、各モジュールのカーネル参照を正しく解決させることが重要である。これらのシンボルには、他のカーネルの
System.map のコピーか、あるいは /proc/ksyms の出力のコピーを使える。利用しているカーネルがバージョン付きのシンボルを使っている場合は、/proc/ksyms
の出力を用いるのがもっともよい。なぜならこのファイルにはカーネルシンボルのシンボルバージョンが含まれているからである。しかしバージョン付きのシンボルに対して
System.map を使ってもかまわない |
| 引数 |
|
| 使用例 |
|
|