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

名前

       depmod - modules.dep とマップファイルを生成する

書式

       depmod [-b basedir] [-e] [-E Module.symvers] [-F System.map] [-n] [-v] [-A] [-P prefix]
              [-w] [version]

       depmod [-e] [-E Module.symvers] [-F System.map] [-n] [-v] [-P prefix] [-w] [version]
              [filename...]

説明

       Linux のカーネルモジュールは、(「シンボル」と呼ばれる) サービスを (コード中で
       EXPORT_SYMBOL バリアントの 1 つを使用して) ほかのモジュールが使えるように提供することがで
       きます。 あるモジュールがそうしたシンボルを使用している場合、 そのモジュールがシンボルを提
       供する側のモジュールに依存していることは明白です。 こうした依存関係は、かなり複雑になるこ
       とがあります。

       depmod は、/lib/modules/version 以下にある各モジュールを読み込み、 それがどんなシンボルを
       エクスポートし、どんなシンボルを必要としているかを特定して、 モジュールの依存関係のリスト
       を作成します。デフォルトでは、このリストは、 上記ディレクトリに置かれる modules.dep と、そ
       れをバイナリハッシュ化した modules.dep.bin という名前のファイルに書き込まれます。 な
       お、ファイル名をコマンドラインで指定した場合は、そうしたモジュールのみが調べられます (すべ
       てのモジュールを指定しないかぎり、これが役に立つことはめったにありません)。 depmod はま
       た、モジュールが提供するシンボルのリストを作成し、modules.symbols というファイルと、そのバ
       イナリハッシュ版の modules.symbols.bin に書き込みます。最後に、depmod は、モジュールがスペ
       シャルデバイス名を供給している場合は、modules.devname という名前のファイルを出力します。そ
       うしたスペシャルデバイス名は、普通ブート時に (systemd-tmpfiles のようなユーティリティに
       よって) /dev ディレクトリに配置されます。

       引数に version を指定した場合は、現在稼働中のカーネルバージョン (uname -r で返ってくるも
       の) ではなく、指定したカーネルバージョンのモジュールディレクトリが使用されます。

オプション

       -a, --all
           すべてのモジュールを調べます。このオプションは、 コマンドラインでファイル名を一つも指
           定しなかった場合、デフォルトで有効になります。

       -A, --quick
           このオプションを指定すると、処理を行う前にモジュール群にざっと目を通して、 modules.dep
           ファイルより新しいモジュールがあるかどうかを調べます。もしなければ、 modules.dep など
           のファイルを作り直さず、何のメッセージも出さずに終了します。

       -b basedir, --basedir basedir
           対象となるモジュール群が、現在、(標準の) ディレクトリ /lib/modules/version になく、準
           備領域 (a staging area) にある場合、 準備領域で標準ディレクトリ名に先行するディレクト
           リ名 basedir を指定することができます。この basename は、作成される modules.dep ファイ
           ルでは取り除かれるので、作成されたファイルは、 そのまま標準の場所に移動することができ
           ます。あなたがディストリビューターであり、 depmod を後であらためて実行しないでも済むよ
           うに、 一連のメタデータファイルを前もって作っておく必要があるならば、 このオプションを
           使用するとよいでしょう。

       -C, --config file or directory
           /etc/depmod.d にあるデフォルトの設定ディレクトリの代わりに、 このオプションで指定する
           ものを使用します。

       -e, --errsyms
           このオプションは、-F オプションと一緒に使用した場合、 あるモジュールが必要としているシ
           ンボルに、 ほかのモジュールやカーネルによって供給されていないものがあると、 そのシンボ
           ルを報告します。通常、モジュールによって提供されていないシンボルがあれば、 それはカー
           ネルによって提供されるものと見なされます (完璧な世界でなら、そうなっているはずで
           す)。しかし、その想定が外れることもあります。 特に、サードパーティ製のドライバを後日
           アップデートしたとき、 それがきちんとインストールされていなかったり、正しくビルドされ
           ていなかったりすると、 そうなります。

       -E, --symvers Module.symvers
           このオプションは、-e オプションと一緒に使用した場合、 モジュールが提示しているシンボル
           のバージョンの中に、カーネルがその Module.symvers (訳注: このファイルは、自分でカーネ
           ルをビルドすると生成されます) で情報を提供しているシンボルのバージョンと一致しないもの
           があれば、それを報告します。 このオプションは、-F と一緒には使えません。

       -F, --filesyms System.map
           カーネルがビルドされたときに作成された System.map を指定します。このオプションを使用す
           ると、-e オプションが、解決できないシンボルを報告できるようになります。このオプション
           は、-E と一緒には使えません。

       -h, --help
           ヘルプメッセージを表示して終了します。

       -n, --show, --dry-run
           このオプションを指定すると、生成された modules.dep や様々なマップファイルを、モジュー
           ルディレクトリに書き込まずに、 標準出力に書き出します。

       -P
           アーキテクチャーによっては、シンボルの前に無関係な文字を付けるものがあります。 このオ
           プションでは、(たとえば、'_' といった) 無視すべき接頭辞を指定します。

       -v, --verbose
           詳細モードでは、depmod は、各モジュールが依存しているすべてのシンボルと、 そのシンボル
           を提供しているモジュールのファイル名を (標準出力に) 書き出します。

       -V, --version
           プログラムのバージョンを表示して終了します。

       -w
           依存関係、エイリアス、シンボルバージョンなどに重複がある場合に警告します。

著作権

       このマニュアルページの最初の版は、"Copyright 2002, Rusty Russell, IBM Corporation" でし
       た。現在では、"Copyright Jon Masters, and others" の部分もあります。

関連項目

       depmod.d(5), modprobe(8), modules.dep(5)

著者

       Jon Masters <jcm@jonmasters.org>
           開発者

       Robby Workman <rworkman@slackware.com>
           開発者

       Lucas De Marchi <lucas.de.marchi@gmail.com>
           開発者