[JM:03868] Re: [POST:RO] modprobe.8 (kmod 29 man5 man8)

アーカイブの一覧に戻る
長南洋一 cyoic****@maple*****
2022年 9月 3日 (土) 11:11:14 JST


長南です。

私のメール [JM:03863] より
>
> ○ --show-depends
>     List the dependencies of a module (or alias), including the module
>     itself. This produces a (possibly empty) set of module filenames,
>     one per line, each starting with "insmod" and is typically used by
>     distributions to determine which modules to include when generating
>     initrd/initramfs images.  Install commands which apply are shown
>     prefixed by "install". It does not run any of the install commands.
>     Note that modinfo(8) can be used to extract dependencies of a
>     module from the module itself, but knows nothing of aliases or
>     install commands.

>   [試訳]
>     あるモジュール (または、エイリアス) の依存情報を、そのモジュール自体も
>     含めて、リストします。モジュールのファイル名の集合 (空集合のこともある) が、
>     1 行に 1 ファイルずつ、各行の先頭に "insmod" を付けて、出力されます。
>     このオプションの代表的な使い道は、ディストリビューションが
>     initrd/initramgfs イメージを作成するとき、どのモジュールを
>     収録するかを決めるのに使うことです。install コマンドが適用される場合は、
>     "install" という文字列を前に置くことで、それが示されますが、そうした
>     install コマンドが実行されるわけではありません。なお、modinfo(8) を
>     使っても、モジュール自体から依存情報を取り出すことができますが、
>     modinfo は alias や install といった (設定ファイルの) コマンド
>     については何も知らないことに注意してください。

上記のように、'Install commands which apply are shown prefixed
by "install".' を「install コマンドが適用される場合は、"install"
という文字列を前に置くことで、それが示されますが」と訳しましたが、具体的に
どういうことか分かっていませんでした。modprobe.d(5) の翻訳をチェックして
いるうちに、少し分かってきたので、それを書いておきます。

"modprobe --show-depends" の結果は、引数に普通のモジュールを
指定した場合、次のようになります。

    # modprobe --show-depends snd
    insmod /lib/modules/4.19.0-21-amd64/kernel/sound/soundcore.ko 
    insmod /lib/modules/4.19.0-21-amd64/kernel/sound/core/snd.ko 

たとえば、/etc/modprobe.d 以下の設定ファイルで、

    install fred /sbin/modprobe --dry-run i915 $CMDLINE_OPTS

と指定していたとします。この場合、"modprobe --show-depends fred"
を実行すると、次のように表示されます。

    # modprobe --show-depends fred
    install /sbin/modprobe --dry-run i915 $CMDLINE_OPTS 

modprobe(8) の manpage は、以上のようなことを言っているのだと思います。

設定ファイルで install コマンドを指定するのは、当然ながら、
"modprobe --show-depends fred" を実行するより前のことですから、
"Install commands which apply" は、「install コマンドが
適用される場合は」より、「install コマンドが適用されている場合は」
と動作ではなく状態の表現にした方がよいだろうと思います。
「install コマンドが使用されている場合は」でもよいでしょうし、
思い切って、「insatll コマンドの対象の場合は」もありそうです。

もっと補足して、「そのモジュール名に install コマンドが適用されている場合は」
とした方が、何を言っているか理解しやすいかもしれません。

それから、この試訳では "initramfs" に "initramgfs" と余計な
"g" が入っていました。

また、他の manpage もチェックしているうちに。"dependecies" は、「依存情報」
より「依存関係」と訳した方がよいように思えてきました。また、"list" は、いつでも
「一覧、一覧表示」と訳せるとはかぎりませんが、ここでは「一覧表示」か「列挙」が
ぴったりな気がします。それで、以下のように、少し書き直してみました。

  --show-depends
      あるモジュール (または、エイリアス) の依存関係を、そのモジュール自
      体も含めて、一覧表示します。モジュールファイル名の集合 (空集合のこと
      もあります) が、1 行に 1 ファイルずつ、各行の先頭に "insmod" を付け
      て、出力されます。 このオプションの代表的な使い道は、ディストリ
      ビューションが initrd/initramfs イメージを作成するとき、どのモ
      ジュールを収録するかを決めるのに使うことです。 Install コマンドが適
      用されている場合は、"install" という文字列を行頭に置くことで、それ
      を示しますが、そうした install コマンドが実行されるわけではありませ
      ん。なお、modinfo(8) を使えば、 モジュールの依存関係をそのモジュー
      ル自体から取り出すことができますが、 modinfo は、設定ファイルの
      alias や install といったコマンドについては、 何も知らないことに注
      意してください。

-- 
長南洋一



linuxjm-discuss メーリングリストの案内
アーカイブの一覧に戻る