OSDN Git Service

kmod: A few modifications.
[linuxjm/jm.git] / manual / kmod / release / man5 / modprobe.d.5
1 '\" t
2 .\"     Title: modprobe.d
3 .\"    Author: Jon Masters <jcm@jonmasters.org>
4 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
5 .\"      Date: 01/29/2021
6 .\"    Manual: modprobe.d
7 .\"    Source: kmod
8 .\"  Language: English
9 .\"
10 .\"*******************************************************************
11 .\"
12 .\" This file was generated with po4a. Translate the source file.
13 .\"
14 .\"*******************************************************************
15 .\"
16 .\" Japanese Version Copyright (C) 2005 Suzuki Takashi,
17 .\"         and 2022 ribbon,
18 .\"         and 2022 Chonan Yoichi,
19 .\"         all rights reserved.
20 .\" Translated (modprobe.conf in module-init-tools) Sun Jul 10 22:56:20 JST 2005
21 .\"         by Suzuki Takashi <JM@linux.or.jp>.
22 .\" New Translation (kmod version 29) Tue May 31 2022
23 .\"         by ribbon <ribbon@users.osdn.me>
24 .\" Modified Tue Oct 25 09:28:07 JST 2022
25 .\"         by Chonan Yoichi <cyoichi@maple.ocn.ne.ja>
26 .\"
27 .\" This program is free software: you can redistribute it and/or modify
28 .\" it under the terms of the GNU General Public License as published by
29 .\" the Free Software Foundation, either version 2 of the License, or
30 .\" (at your option) any later version.
31 .\" 
32 .\" This program is distributed in the hope that it will be useful,
33 .\" but WITHOUT ANY WARRANTY; without even the implied warranty of
34 .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
35 .\" GNU General Public License for more details.
36 .\" 
37 .\" You should have received a copy of the GNU General Public License
38 .\" along with this program.  If not, see <http://www.gnu.org/licenses/>.
39 .\"
40 .TH MODPROBE\&.D 5 2021/01/29 kmod modprobe.d
41 .ie  \n(.g .ds Aq \(aq
42 .el       .ds Aq '
43 .\" -----------------------------------------------------------------
44 .\" * Define some portability stuff
45 .\" -----------------------------------------------------------------
46 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
47 .\" http://bugs.debian.org/507673
48 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
49 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
50 .\" -----------------------------------------------------------------
51 .\" * set default formatting
52 .\" -----------------------------------------------------------------
53 .\" disable hyphenation
54 .nh
55 .\" disable justification (adjust text to left margin only)
56 .ad l
57 .\" -----------------------------------------------------------------
58 .\" * MAIN CONTENT STARTS HERE *
59 .\" -----------------------------------------------------------------
60 .SH 名前
61 modprobe.d \- modprobe 用の設定ディレクトリ
62 .SH 概要
63 .PP
64 /lib/modprobe\&.d/*\&.conf
65 .PP
66 /usr/local/lib/modprobe\&.d/*\&.conf
67 .PP
68 /run/modprobe\&.d/*\&.conf
69 .PP
70 /etc/modprobe\&.d/*\&.conf
71 .SH 説明
72 .PP
73 モジュールには依存関係があるので、\fBmodprobe\fP
74 コマンドは、複数のモジュールを追加したり、取り外したりすることがありますが、そのため、
75 そうした個々のモジュールにどんなオプションを使うべきかを指定する方法が必要になります。
76 /etc/modprobe\&.d ディレクトリの直下にあるファイルで、.conf
77 という拡張子で終わるもののすべてが、必要に応じて、そうしたオプションを指定しています。
78 そうしたファイルは、使いやすいエイリアス、
79 すなわちモジュールの別名を作るためにも使用することができます。
80 また、そうしたファイルによって、(二つ以上のモジュールを組み込むといった)
81 特別な要求を持つモジュールのために、標準の \fBmodprobe\fP
82 の動作を全面的に変更することもできます。
83 .PP
84 モジュール名やエイリアス名では (後者の場合も、ほかのモジュール名と同様に)、\- や _
85 を名前の一部に使うことができます。アンダースコアへの変換が自動的に行われるので、
86 モジュールコマンドのすべてにおいて、どちらを使っても同じであることに留意してください。
87 .PP
88 modprobe\&.d の下にあるファイルの書式は単純です。1 行 1 コマンドで、空行や
89 \*(Aq#\*(Aq で始まる行は無視されます (後者はコメントを付けるのに使えます)。
90 行末に 1 個の \*(Aq\e\*(Aq があると、その行は次の行に続くことになります。
91 これを使うと、ファイルの見かけがちょっとよくなります。
92 .SH コマンド
93 .PP
94 alias \fIwildcard\fP \fImodulename\fP
95 .RS 4
96 このコマンドを使えば、モジュールに別名を付けることができます。たとえば、"alias
97 my\-mod really_long_modulename" と指定すると、"modprobe
98 really_long_modulename" の代わりに "modprobe my\-mod"
99 を使うことができます。シェル式のワイルドカードも使用できるので、
100 "alias my\-mod* really_long_modulename" と指定すれば、
101 "modprobe my\-mod\-something" でも同じ効果があります。
102 ほかのエイリアスに対するエイリアスは作れませんが
103 (そんなことをしたら、わけが分からなくなります)、
104 エイリアスにもオプションを指定することはできます。その場合は、
105 ほかにもオプションがあれば、そこに追加されることになるわけです。
106 (訳注: このオプションは、\fBmodprobe\fP(8) の「書式」で \fImodule\ parameter\fP
107 と言われているもののことで、そうしたオプションを、実モジュールに対してだけでなく、
108 エイリアスに対しても、コマンドラインや、下記の \fBoptions\fP
109 コマンドで指定できるということ。\fBalias\fP
110 コマンド中でエイリアスにオプションまで指定できるというわけではありません。)
111 .sp
112 気をつけていただきたいのですが、
113 モジュールは、自前のエイリアスを内蔵していることもあり、\fBmodinfo\fP
114 を使えば、それを見ることができます。
115 そうしたエイリアスは (訳注: モジュールを特定するとき) 最後の手段として利用されます
116 (すなわち、指定された名前の実モジュールがなく、その名前に対応する
117 \fBinstall\fP, \fBremove\fP, \fBalias\fP コマンドも設定ファイル中にない場合)。
118 .RE
119 .PP
120 blacklist \fImodulename\fP
121 .RS 4
122 モジュールは、自前のエイリアスを内蔵していることがあります。たいていの場合、
123 そうしたエイリアスは、そのモジュールがサポートしているデバイスを表していて、
124 "pci:123\&.\&.\&." といったものです。こうした「内蔵」エイリアスも、通常の
125 "alias" キーワードによって置き換えることができますが、
126 二つ以上のモジュールが、どちらも同じデバイスをサポートしていたり
127 (訳注: すなわち、同じ名前の内蔵エイリアスを持っていたり)、
128 あるモジュールが、実際にはサポートしていないデバイスをサポートしていると、
129 無効な主張をしていたりすることもあります。そうした場合に \fBblacklist\fP
130 キーワードを使うと、そのモジュールの内蔵エイリアスをすべて無視せよと指示することになります。
131 .RE
132 .PP
133 install \fImodulename\fP \fIcommand\&.\&.\&.\fP
134 .RS 4
135 このコマンドは、\fBmodprobe\fP
136 に対して、いつもどおりカーネルにモジュールを組み込む代わりに、
137 指定されたコマンドを実行するように指示します。
138 指定するコマンドには任意のシェルコマンドが使えるので、
139 どのような複雑な処理を望もうと、それを実行することができます。たとえば、
140 モジュール "fred" は、モジュール "barney"
141 がすでにインストールされているときの方が、うまく動作するとします
142 (しかし、前者は後者に依存しているわけではないので、\fBmodprobe\fP
143 は後者を自動的にロードしようとはしません)。そういう場合は、"install fred
144 /sbin/modprobe barney; /sbin/modprobe \-\-ignore\-install fred"
145 と、設定ファイルに書いておけばよいのです。そうすれば、
146 希望する動作が行われることになります。
147 \fB\-\-ignore\-install\fP に注意してください。これは、二番目の \fBmodprobe\fP
148 が、ほかならぬこの \fBinstall\fP コマンドを繰り返し実行しないようにしているのです。
149 以下の \fBremove\fP の項も参照してください。
150 .sp
151 このコマンドは、モジュールに補助的な依存モジュールを提供するという課題に対する一つの解決策ですが、
152 長期的に見て、将来もそうである保証はありません。
153 それどころか、このコマンドは、将来のリリースのある時点で、
154 いずれ廃棄されるだろうとか、非推奨であるとかの警告に置き換えることが予定されています。
155 このコマンドを使用すると、mkinitrd
156 のようなディストリビューション固有のユーティリティが、
157 依存するモジュールを自動的に判断しようとするとき、作業が複雑になるのです
158 (なぜなら、現状では、そうしたユーティリティは、\fBinstall\fP
159 コマンドがやっていそうなことを、何らかの方法で解読しなければならないからです)。
160 完璧な世界でなら、このコマンドを使わないでも、モジュールは、
161 依存関係の情報を漏れなく提供することでしょう。実際、ゆるやかな依存関係のサポートを
162 Linux カーネルの内部で実装しようとする作業が、現在進行しています。
163 .sp
164 このコマンド中で、"$CMDLINE_OPTS" という文字列を使用すると、
165 \fBmodprobe\fP のコマンドラインでオプションを指定した場合に、そのオプションが
166 "$CMDLINE_OPTS" に置き換わります (訳注: このオプションは、上の \fBalias\fP
167 コマンドの訳注でも述べましたが、\fBmodprobe\fP(8) の「書式」で \fImodule parameter\fP
168 と言われているもののことです)。この動作は重宝なことがあります。
169 なぜなら、ユーザとしては、"modprobe fred opt=1" とコマンドライン上で指定したら、
170 設定ファイル中に \fBinstall\fP コマンドが存在する場合でも、モジュール fred に
171 "opt=1" という引数が渡ってほしいと思うからです。そこで、上記の例でこれを使うと、
172 "install fred /sbin/modprobe barney;
173 /sbin/modprobe \-\-ignore\-install fred $CMDLINE_OPTS" になります。
174 .RE
175 .PP
176 options \fImodulename\fP \fIoption\&.\&.\&.\fP
177 .RS 4
178 このコマンドを使えば、モジュール \fImodulename\fP (エイリアスであっても構いません)
179 がカーネルに組み込まれるたびに、それにオプションを付け加えることができます。
180 組み込みは、(\fBmodprobe \fP \fImodulename\fP を使って) 直接行われるか、
181 組み込もうとするモジュールがこのモジュールに依存しているために行われるかを問いません。
182 .sp
183 すべてのオプションは、まとめて付け加えられます。そうしたオプションには、
184 モジュールそのものやエイリアスに対して \fBoptions\fP
185 コマンドで指定したものあれば、コマンドラインで指定したものもあるわけです。
186 .RE
187 .PP
188 remove \fImodulename\fP \fIcommand\&.\&.\&.\fP
189 .RS 4
190 これは上記の \fBinstall\fP コマンドに似ていますが、"modprobe \-r"
191 が実行されるときに、呼び出される点が異なっています。
192 .RE
193 .PP
194 softdep \fImodulename\fP pre: \fImodules\&.\&.\&.\fP post: \fImodules\&.\&.\&.\fP
195 .RS 4
196 \fBsoftdep\fP コマンドを使えば、
197 ゆるやかな、すなわち使用・不使用が任意なモジュールの依存関係を指定できます。
198 \fImodulename\fP というモジュールは、
199 そうした使用・不使用が任意なモジュールをインストールしないでも、使うことができます。
200 でも、たいていの場合、何らかの機能が使えないことになります。
201 たとえば、ある記憶装置の HBA (ホストバスアダプタ) 用のドライバは、
202 管理機能を使うためには、別のモジュールをロードする必要があるかもしれません。
203 .sp
204 前依存モジュールや後依存モジュール (訳注: 上記 \fBsoftdep\fP の書式の pre: や
205 post: に続く \fImodules\&.\&.\&.\fP) は、\fImodulename\fP
206 という引数によって指定されたメインモジュールの前後に、\fBmodprobe\fP
207 が 順番に組み込み (あるいは、取り外し)
208 を試みるほかのモジュールの名前やエイリアスのリストです。
209 .sp
210 用例: "softdep c pre: a b post: d e"
211 という設定がなされているとします。このとき、"modprobe c" を実行するのは、この
212 softdep コマンドを設定せずに、"modprobe \-\-all a b c d e"
213 を行うのと同じことです。なお、\-\-use\-blacklist
214 のようなフラグは、指定されたすべてのモジュールに適用されますが、
215 モジュールパラメータが適用されるのは、モジュール c だけです。
216 .sp
217 注意: 同じ \fImodulename\fP 引数を取る \fBinstall\fP や \fBremove\fP
218 コマンドが設定ファイル中にあっても、\fBsoftdep\fP が優先されます。
219 .RE
220 .SH 互換性
221 .PP
222 kmod の将来のバージョンでは、上で述べたように、\fBinstall\fP
223 の使用は避けるべきだとの強い警告が出ることになるでしょう。
224 そうなるのは、カーネル中でのゆるやかな依存関係に対するサポートが完成したときのことです。
225 そうしたサポートでは、ゆるやかな依存関係の情報をモジュール内で直接提供することによって、
226 kmod ユーティリティ内での softdep
227 による現在のサポートを補完することになるでしょう。
228 .SH 著作権
229 .PP
230 このマニュアルページの最初の版は、"Copyright 2004, Rusty Russell,
231 IBM Corporation" でした。現在では、Jon Masters ほか数名によって保守されています。
232 .SH 関連項目
233 .PP
234 \fBmodprobe\fP(8), \fBmodules.dep\fP(5)
235 .SH 著者
236 .PP
237 \fBJon Masters\fP <\&jcm@jonmasters\&.org\&>
238 .RS 4
239 開発者
240 .RE
241 .PP
242 \fBRobby Workman\fP <\&rworkman@slackware\&.com\&>
243 .RS 4
244 開発者
245 .RE
246 .PP
247 \fBLucas De Marchi\fP <\&lucas\&.de\&.marchi@gmail\&.com\&>
248 .RS 4
249 開発者
250 .RE