OSDN Git Service

8b1828d76ef5444609802b02006379501c920b95
[linuxjm/jm.git] / manual / modutils / release / man5 / modules.conf.5
1 .\"/* Copyright 1999 Bjorn Ekwall <bj0rn@blox.se>
2 .\" This program is distributed according to the Gnu General Public License.
3 .\" See the file COPYING in the base distribution directory
4 .\"
5 .\" Japanese Version Copyright (c) 2000 NAKANO Takeo all rights reserved.
6 .\" Translated Thu 12 Oct 2000 by NAKANO Takeo <nakano@apm.seikei.ac.jp>
7 .\" Updated Sun 28 Jan 2001 by Kentaro Shirakata <argrath@ub32.org>
8 .\" Updated Sun 6 Jan 2002 by NAKANO Takeo
9 .\" 
10 .TH MODULES.CONF 5 "07 December 1999"
11 .UC 4
12 .SH 名前
13 modules.conf \- カーネルモジュールのロードに対する設定ファイル
14 .hy 0
15 .SH このマニュアルについて
16 このマニュアルは、Linux Kernel 2.4 の時代に使われていた modutils
17 パッケージの設定ファイル \fBmodules.conf\fP
18 の説明で、古いものです。現在ではたいていの場合、kmod 
19 パッケージのユーティリティがモジュールの管理に使われており、
20 設定ファイルのマニュアルも \fBmodprobe.d\fP と \fBdepmod.d\fP 
21 の二つに別れています。(2022/12/02, Linux JM Project)
22 .SH 説明
23 .BR modprobe (8)
24 (および
25 .BR depmod (8))
26 の動作は、設定ファイル
27 .B /etc/modules.conf
28 によって変更できる (このファイルは無くてもよい)。
29 .PP
30 設定ファイルは行単位で解釈される。
31 .br
32 全ての空行と、'#' 文字以降の行末までは無視される。
33 .br
34 行末が '\e' になっている行は次の行に継続する。
35 .br
36 残りは指定行 (directive) であり、
37 すべて以下のフォーマットのいずれかに従う:
38 .sp
39 .nf
40   [add] above module module_list
41   alias alias_name result
42   [add] below module module_list
43   define VARIABLE WORD
44   depfile=A_PATH
45   else
46   elseif EXPRESSION
47   endif
48   if EXPRESSION
49   include PATH_TO_CONFIG_FILE
50   insmod_opt=GENERIC_OPTIONS_TO_INSMOD
51   install module command ...
52   keep
53   [add] options module MODULE_SPECIFIC_OPTIONS
54   path=A_PATH
55   path[TAG]=A_PATH
56   generic_stringfile=A_PATH
57   pcimapfile=A_PATH
58   isapnpmapfile=A_PATH
59   usbmapfile=A_PATH
60   parportmapfile=A_PATH
61   ieee1394mapfile=A_PATH
62   pnpbiosmapfile=A_PATH
63   [add] probe name module_list
64   [add] probeall name module_list
65   prune filename
66   post-install module command ...
67   post-remove module command ...
68   pre-install module command ...
69   pre-remove module command ...
70   remove module command ...
71   persistdir directory_name
72 .fi
73 .PP
74 各指定行に与える引数の解釈では、シェルのメタキャラクタが有効になる。
75 すなわち、ワイルドカードやコマンドのバッククォートといった、
76 シェルでの技が利用できる。
77 .sp
78 .nf
79   path[misc]=/lib/modules/1.1.5?/local
80   path[net]=/lib/modules/`uname \-r`/net
81 .fi
82 .sp
83 .B 危険:
84 ユーザーが指定した入力にシェル展開を適用するのは
85 大きなセキュリティ上のリスクがある。
86 modutils は信頼できるデータに対してのみシェルコマンドのメタ展開を行う。
87 基本的にこれは設定ファイルのデータのみを展開することを意味する。
88 modutils では、ユーザーは modprobe を (自分自身の設定ファイルを指定して)
89 root 権限で実行することはできない、と仮定している。
90 ユーザーからの入力を指定して modutils を root 権限で起動するプログラム
91 (カーネルを含む) は、正確に一つだけのユーザー入力パラメータを渡し、
92 かつセーフモードに設定しないと、ローカルで root を奪取される危険がある。
93 セーフモードの詳細については
94 .I modprobe
95 を参照のこと。
96 .PP
97 各指定は複数回繰り返してもよい。
98 指定によっては、前に
99 .I add
100 を置くこともできる。これがないと、指定した module_list が以前の
101 module_list を置き換えるが、
102 これがあると module_list が以前の module_list に\fB追加される\fP。
103 .SH 記法 (SEMANTICS)
104 .B A_PATH
105 はターゲットへの完全なパス名である。
106 .I \`uname \-r\`
107
108 .I \`kernelversion\`.
109 といったシェルのメタキャラクタを
110 .B A_PATH
111 に用いてもよい。
112 .br
113 これらの 2 つのコマンドは、
114 .RB ( modprobe " や " depmod
115 のような) ユーティリティの内部でも、
116 現在のカーネルのリリースとバージョン (それぞれ 2.2.3 や 2.2 など)
117 を表すものとして認識されている。
118 .PP
119 .B WORD
120 は空白文字以外からなるシーケンスである。
121 .\"NAKANO 原文は if -> of の typo だろう。
122 もし ' や " や ` が文字列にあると、
123 対応する ', ", ` にマッチするまでの全ての文字 (空白文字も)
124 がその文字列に含まれることになる。
125 全ての
126 .B WORD
127 は、その後メタキャラクタのルールにしたがって展開される。
128 .\"NAKANO w.r.t は with regard to かなあ?
129 展開した結果が二つ以上のワードになった場合は、
130 結果のうち最初のワードだけが用いられる。
131 .PP
132 EXPRESSION は以下のいずれかである。
133 .TP
134 .I "WORD compare_op WORD"
135 compare_op は ==, !=, <, <=, >=, > のいずれかである。
136 両 WORD が文字列として比較される。
137 .TP
138 .I "\-n WORD compare_op WORD"
139 compare_op は ==, !=, <, <=, >=, > のいずれかである。
140 両 WORD が数値として比較される。
141 .TP
142 .I WORD
143 WORD の展開に失敗するか、
144 展開した結果が "0" (zero), "false", "" (empty)
145 のいずれかであれば、展開結果の値は FALSE となる。
146 それ以外の場合は展開結果の値は TRUE となる。
147 .TP
148 .I "\-f FILENAME"
149 FILENAME が存在するかどうかのテスト。
150 .TP
151 .I \-k
152 "autoclean" が有効になっているかどうか (すなわちカーネルから呼ばれたかどうか)
153 のテスト。
154 .TP
155 .I "! EXPRESSION"
156 式の否定も式である。
157 .SH 文法 (SYNTAX)
158 以下に有効な指定について説明する。
159 .TP
160 .I "define VARIABLE WORD"
161 .I putenv("VARIABLE=WORD")
162 を実行する。この指定は変数の作成・変更のいずれも行える。
163 変数は環境に作られるので、
164 現在のセッションで実行される全てのコマンドから利用できる。
165 .TP
166 .I "depfile=A_PATH"
167 依存関係ファイルへのパス。
168 これは
169 .B depmod
170 によって作成され、
171 .B modprobe
172 によってモジュールとその依存モジュールを探すために利用される。
173 通常はデフォルトの値を用いるべきである。以下を参照のこと。
174 .TP
175 .I "if EXPRESSION"
176
177 .I EXPRESSION
178
179 .B TRUE
180 と解釈されたら、
181 .IR else ", " elseif ", " endif
182 のいずれかにマッチするまでの全ての指定行が実行される。
183 .B FALSE
184 と解釈されたら、それらの指定行は無視される。
185 .I if
186 行は、内部の最大値である 20 までネストできる。
187 .br
188 注意:
189 .B path
190 指定行を条件式内部で処理することは避けて欲しい。
191 .B modprobe
192 には「賢い頭脳」が組み込まれているので、
193 .B path
194 指定行の条件処理は、単に混乱を生むだけである。ほんとです。
195 .TP
196 .I "else"
197 これより前での
198 .IR if " または " elseif
199 指定行での式の評価が
200 .B FALSE
201 であり、
202 .I else
203 があれば、ここまでの指定行は無視され、
204 これ以降
205 .I endif
206 までの指定行が処理される。
207 .TP
208 .I "elseif EXPRESSION"
209 これより前に置かれた
210 .IR if " または " elseif
211 での式評価の結果が
212 .B FALSE
213 で、ここでの式評価の結果が
214 .B TRUE
215 であれば、次に
216 .IR elseif ", " else ", " endif
217 のいずれかが現れるまでの指定行が処理される。
218 .TP
219 .I "endif"
220 これは設定ファイルにおける条件処理を制御する
221 .IR if ", " elseif ", " else
222 のチェインを終了させる。
223 .sp
224 .nf
225   if EXPRESSION
226       any config lines
227   elseif EXPRESSION
228       any config lines
229   else
230       any config lines
231   endif
232 .fi
233 .sp
234 .IR else " と " elseif
235 は無くてもよい。
236 .TP
237 .I "include PATH_TO_CONFIG_FILE"
238 別々のプラットフォームや設定を一つの設定ファイルで扱うのは、
239 非常に複雑になる場合がある。
240 .I if
241 の条件によって
242 .I include
243 指定行を用いれば、この取り扱いは簡単になる。
244 .TP
245 .I "insmod_opt=GENERIC_OPTIONS_TO_INSMOD"
246 insmod に (他では指定できないような) 特殊なオプションが必要な場合は、
247 このオプションで起動の度にそれらを追加することが可能である。
248 特殊な状況を除いて、
249 通常は insmod の標準的なデフォルトのオプションを変更する必要はない。
250 .TP
251 .I "keep"
252 このワードが
253 .B path
254 の記述を含む行の\fB前に\fP置かれた場合は、
255 デフォルトのパスのセットは保存され、それに追加される。
256 これがない場合の通常の振舞いでは、
257 パスのセットが設定ファイルで\fB置き換え\fPられる。
258 .TP
259 .I "path=A_PATH"
260 .TP
261 .I "path[TAG]=A_PATH"
262 .B A_PATH
263 引数はモジュールを探すディレクトリの追加分を指定する。
264 .B path
265 指定行は、オプションのタグをとることができる。
266 これはそのモジュールの目的に関する情報を多少なりとも示し、
267 また
268 .B modprobe
269 の動作をいくらか自動化する。
270 この "path" キーワードに追加されるタグは角括弧 [] で括られる。
271 タグがない場合は、 "misc" タグが指定されたかのように動作する。
272 .br
273 非常に有用なタグとして、
274 .B boot
275 がある。これはブート時にロードしなければならないモジュールを
276 保有しているすべてのディレクトリをマークするために利用できる。
277 .br
278 なお
279 .B keep
280 指定行を使えば、
281 .B path
282 指定行によるデフォルトのパスの置き換えを防ぐことができる。
283 .TP
284 .I "generic_stringfile=A_PATH"
285 これは generic_string ファイルへのパスである。このファイルは
286 .B depmod
287 によって作成され、モジュールからの文字列情報が必要な
288 インストールスクリプトが利用する。
289 通常はデフォルトの値を用いるべきである。以下を参照のこと。
290 .TP
291 .I "pcimapfile=A_PATH"
292 これは pcimap ファイルへのパスである。このファイルは
293 .B depmod
294 によって作成され、インストールスクリプトが
295 pci デバイスをサポートするモジュールを検索する際に用いられる。
296 通常はデフォルトの値を用いるべきである。以下を参照のこと。
297 .TP
298 .I "isapnpmapfile=A_PATH"
299 これは isapnpmap ファイルへのパスである。このファイルは
300 .B depmod
301 によって作成され、インストールスクリプトが
302 ISA PNP デバイスをサポートするモジュールを検索する際に用いられる。
303 通常はデフォルトの値を用いるべきである。以下を参照のこと。
304 .TP
305 .I "usbmapfile=A_PATH"
306 これは usbmap ファイルへのパスである。このファイルは
307 .B depmod
308 によって作成され、インストールスクリプトが
309 USB デバイスをサポートするモジュールを検索する際に用いられる。
310 通常はデフォルトの値を用いるべきである。以下を参照のこと。
311 .TP
312 .I "parportmapfile=A_PATH"
313 これは parportmap ファイルへのパスである。このファイルは
314 .B depmod
315 によって作成され、インストールスクリプトが
316 parport デバイスをサポートするモジュールを検索する際に用いられる。
317 通常はデフォルトの値を用いるべきである。以下を参照のこと。
318 .TP
319 .I "ieee1394mapfile=A_PATH"
320 これは ieee1394map ファイルへのパスである。このファイルは
321 .B depmod
322 によって作成され、インストールスクリプトが
323 ieee1394 デバイスをサポートするモジュールを検索する際に用いられる。
324 通常はデフォルトの値を用いるべきである。以下を参照のこと。
325 .TP
326 .I "pnpbiosmapfile=A_PATH"
327 これは pnpbiosmap ファイルへのパスである。このファイルは
328 .B depmod
329 によって作成され、インストールスクリプトが
330 pnpbios デバイスをサポートするモジュールを検索する際に用いられる。
331 通常はデフォルトの値を用いるべきである。以下を参照のこと。
332 .TP
333 .I "alias alias_name result"
334 "alias" 指定行はモジュールに別名をつけるために用いる。
335 /etc/modules.conf に
336 .sp
337 .nf
338   alias iso9660 isofs
339 .fi
340 .sp
341 のような行があれば、実際にはそのようなモジュールがなくても
342 .B "modprobe iso9660"
343 のように書くことができるようになる。
344 .br
345 なお
346 .sp
347 .nf
348   alias some_module off
349 .fi
350 .sp
351 という行は、modprobe にそのモジュールのロード要求を無視させる。
352 また
353 .sp
354 .nf
355   alias some_module null
356 .fi
357 .sp
358 というエイリアスは、some_module への要求を常に成功させるが、
359 しかし実際にはそのモジュールはインストールされない。
360 これは
361 .I above
362
363 .I below
364 指定行で作成されるスタックのベースとして利用できる。
365 .IP
366 .I alias
367 指定のレベルは深くなっても良い
368 (訳注: alias の alias の alias... としてかまわない)。
369 全てのエイリアスは、
370 実際に物理的に存在しているモジュールを探すべく、再帰的に展開される。
371 エイリアスの実際の深さの限界は、おおよそ 1000 程度になっている。
372 これは以下のようなループを検知するためである。
373 .sp
374 .nf
375   alias a b
376   alias b a
377 .fi
378 .sp
379 .I alias
380 マッピングの最終的な結果がいずれのモジュールにもマッチしなければ、
381 modprobe はその結果に probe と probeall をマップする。
382 これらも成功しなければ、そのモジュールは見付からなかったことになる。
383 したがって以下のような指定は気が利いていると言える (devfs より)。
384 .\"NAKANO 最後の文、意味わかってません。
385 .sp
386 .nf
387   alias           /dev/sg*        /dev/sg
388   probeall        /dev/sg         scsi-hosts sg
389 .fi
390 .sp
391 .ne 7
392 モジュール A が実際に存在する場合にも、モジュール A をモジュール B への
393 エイリアスとしてマップすることはできる。
394 しかしこれは誤解の元であるので\fB推奨できない\fP。
395 歴史的な理由から、カーネルのサウンドシステムには
396 sound.o というモジュールがある。しかしサウンドの開発者たちも、
397 sound をユーザサウンドカード用モジュールへのエイリアスとしたい、
398 すなわち "alias\ sound\ sb" としたいことがあるかもしれない。
399 この要求をサポートし、
400 なおかつ「オプションをエイリアスに与えることが可能」
401 という定められた動作を維持するために、
402 modprobe はモジュール名のエイリアス展開を、
403 その名前が modules.dep に見付かった場合には行わない
404 (見付からなければ展開する)。
405 これはエイリアスと実際のモジュールのあり得る全ての組み合わせに対して
406 期待された動作をするとは限らないので、
407 実際に存在するモジュールと同じ名前へのエイリアスは避けるべきなのである。
408 .TP
409 .I "[add] probe name module_list"
410 .TP
411 .I "[add] probeall name module_list"
412 これらの指定行は
413 .I name
414
415 .B modprobe
416 のコマンドラインで要求されたモジュール名である場合に限って利用できる。
417 効果としては、
418 .I name
419 への要求があると、 module_list にあるモジュールが、
420 指定の順序で試される。二つの指定行の違いは、
421 .I probe
422 はモジュールの挿入が一度成功すればそこで試行を終了するのに対して、
423 .I probeall
424 はリストの最後まで続ける点にある。
425 終了ステータスは、いずれかのモジュールのインストールに
426 成功したかどうかを反映する。
427 .I add
428 が前に付加されると、新しいリストを前のリストに置き換えるのではなく追加する。
429 .TP
430 .I "prune filename"
431 インストールされているカーネルに対するモジュールディレクトリのトップには、
432 モジュールではないファイルがおかれている。
433 これらには modules.dep,
434 modules.generic_string, modules.pcimap, modules.isapnpmap,
435 modules.usbmap, modules.parportmap, modules.ieee1394map,
436 modules.pnpbiosmap のほか、
437 カーネルソースツリーへのビルド用 symlink など、インストールプロセスが
438 ビルドツリーから保存しておきたいと考えたファイルが含まれる。
439 これらに対して
440 .B depmod
441 が "not an ELF file" という警告を発するのをやめさせるには、
442 これらのモジュールでないファイルが prune リストに入っていなければならない。
443 .B depmod
444 は組み込みの prune リストを持っており、これにはいかなるカーネルビルドに
445 おいても存在するファイルが含まれているので、削除することはできない。
446 自分のファイルをこのモジュールディレクトリのトップに追加したら、
447
448 .I filename
449 に対して
450 .I prune
451 宣言を加えると良い。
452 \fB注意\fP: prune リストは
453 .I path
454 のトップディレクトリをスキャンするとき、
455 かつそのディレクトリが標準的なサブディレクトリ名リスト以下、
456 高々一つのサブディレクトリしか含まない場合にしか
457 (すなわちカーネルのインストールでビルドされた
458 トップディレクトリのように見える場合にしか) 参照されない。
459 .\"NAKANO と言うことを言っていると思うのだけれど...
460 .I prune
461 リストは
462 .I path
463 のサブディレクトリには効力を持たない。
464 .TP
465 .I "[add] options [-k] module [MODULE_SPECIFIC_OPTIONS]"
466 エイリアスされた名前も含め、すべてのモジュール名はそれぞれ固有の
467 .I options
468 指定行を持つことができる。
469 エイリアスに対して指定されたオプションは、
470 より「基本的な」名前に対して指定されたオプションよりも高い優先度を持つ。
471 このルールは
472 .I options
473 指定行の衝突を解決する際に利用される。
474 コマンドラインで指定されたオプションは、最も高い優先度を持つ。
475 モジュール名の前に
476 .I \-k
477 があると、たとえ
478 .B modprobe
479 が autoclean オプション
480 .I \-k
481 で実行されていた場合でも、モジュールは autoclean されなくなる。
482 .I add
483 が前に付加されると、新しいリストを前のリストに置き換えるのではなく追加する。
484 .I alias
485 の結果が実際のモジュールでなければ、その
486 .I alias
487 のチェーンによって構成された
488 .I options
489 は、probe[all] を呼ぶ前に捨てられる。
490 .I MODULE_SPECIFIC_OPTIONS
491 のどれかにシェルにとって特別な文字 (スペース・コンマ・括弧)
492 が含まれている場合には、そのオプションは '"..."'
493 で括らなければならない。 '' は
494 modules.conf の内部でオプションを区切り、 "" は
495 オプションがシェルに渡されるときにそれを区切る。以下に例を示す。
496 .sp
497 .nf
498   abc='"def,ghi jkl (xyz)"'
499 .fi
500 .sp
501 .TP
502 .I "[add] above module module_list"
503 この指定行は、あるモジュールのモジュールスタックの上に
504 他のモジュールセットを "pull in" するのに利用できる。
505 結果は
506 .BR lsmod (8)
507 コマンドの出力で見ることができる。
508 .I above
509 指定行は依存関係が
510 .B modules.dep
511 ファイルには記述できないほど複雑なような状況下で有用である。
512 これは
513 .I post-install
514 および
515 .I pre-remove
516 指定行の最適化された場合であるとみなすことができる。
517 モジュールのインストールに失敗しても、
518 .B modprobe
519 の終了ステータスには影響しないことに注意。
520 .I add
521 が前に付加されると、新しいリストを前のリストに置き換えるのではなく追加する。
522 .TP
523 .I "[add] below module module_list"
524 この指定行は、あるモジュールのモジュールスタックの下に
525 他のモジュールセットを "push" するのに利用できる。
526 結果は
527 .BR lsmod (8)
528 コマンドの出力で見ることができる。
529 .I below
530 指定行は依存関係が
531 .B modules.dep
532 ファイルには記述できないほど複雑なような状況下で有用である。
533 これは
534 .I pre-install
535 および
536 .I post-remove
537 指定行の最適化された場合であるとみなすことができる。
538 モジュールのインストールに失敗しても、
539 .B modprobe
540 の終了ステータスには影響しないことに注意。
541 .I add
542 が前に付加されると、新しいリストを前のリストに置き換えるのではなく追加する。
543 .PP
544 以下の指定行はモジュールのロード・アンロードの際に
545 特定のコマンドを実行したい場合に利用できる (指定しなくてもよい)。
546 エイリアスされたモジュール名に対してもこれらの指定は可能で、
547 エイリアス展開後のモジュール名に対する指定が他にあれば、
548 それらとともに適切な順序で実行される。
549 .TP
550 .I "pre-install module command"
551 指定したモジュールをインストールする前に
552 .I command
553 を実行する。
554 .I below
555 指定行も参照のこと。
556 .TP
557 .I "install module command"
558 指定したモジュールをインストールする際に、デフォルトの
559 .B insmod
560 ではなく
561 .I command
562 を実行する。
563 .TP
564 .I "post-install module command"
565 指定したモジュールをインストールした後に
566 .I command
567 を実行する。
568 .I above
569 指定行も参照のこと。
570 .TP
571 .I "pre-remove module command"
572 指定したモジュールを削除する前に
573 .I command
574 を実行する。
575 .I above
576 指定行も参照のこと。
577 .TP
578 .I "remove module command"
579 指定したモジュールを削除する際に、デフォルト (組み込み) の
580 .B rmmod
581 ではなく
582 .I command
583 を実行する。
584 .TP
585 .I "post-remove module command"
586 指定したモジュールを削除した後に
587 .I command
588 を実行する。
589 .I below
590 指定行も参照のこと。
591 .TP
592 .I "persistdir\fR=directory_name\fI"
593 .B rmmod
594 が永続モジュールパラメータを含むモジュールを削除する時、
595 (おそらく) 修正されたパラメータを
596 .I directory_name
597 の下に保存する。
598 .B modprobe
599 が永続モジュールパラメータを含むモジュールをロードする時、
600 以前の値を
601 .I directory_name
602 の下から探す。
603 .I persistdir
604 はモジュールがロードされた時に読み込み可能で、
605 モジュールがアンロードされた時に書き込み可能でなければならない。
606 デフォルト値は /var/lib/modules/persist である。
607 多くの Linux ディストリビューションはファイルシステムをマウントする前に
608 モジュールをロードするが、これは永続データに関する問題を引き起こすかもしれない。
609 /var が別のパーティションにあって、モジュールがロードされてからマウントされる場合、
610 .B insmod
611 は永続データを読み込めない。
612 /var が別のパーティションにある場合には、二つの選択肢がある。
613 .IP "" 8
614 1)
615 .I persistdir
616 にルートパーティションのディレクトリ、
617 例えば /lib/modules/persist を指定する。
618 これは
619 .B rmmod
620 が実行されるときにルートパーティションが書き込み可能であることを仮定している。
621 .IP "" 8
622 2)\ ファイルシステム関係のモジュールを全て最初にロードし、
623 /var パーティションをマウントし、それから残りのモジュールをロードする。
624 これはファイルシステムに永続データがないことを仮定している。
625 .PP
626 .SH デフォルトの設定
627 設定ファイル '/etc/modules.conf' がない場合や、
628 あるいは指定行の上書き変更がない場合には、
629 以下のデフォルトが用いられる。
630 .sp 
631 .nf
632   depfile=/lib/modules/`uname \-r`/modules.dep
633   generic_stringfile=/lib/modules/`uname \-r`/modules.generic_string
634   pcimapfile=/lib/modules/`uname \-r`/modules.pcimap
635   isapnpmapfile=/lib/modules/`uname \-r`/modules.isapnpmap
636   usbmapfile=/lib/modules/`uname \-r`/modules.usbmap
637   parportmapfile=/lib/modules/`uname \-r`/modules.parportmap
638   ieee1394mapfile=/lib/modules/`uname \-r`/modules.ieee1394map
639   pnpbiosmapfile=/lib/modules/`uname \-r`/modules.pnpbiosmap
640
641   path[boot]=/lib/modules/boot
642   path[toplevel]=/lib/modules/`uname \-r`
643   path[toplevel]=/lib/modules/`kernelversion`
644   path[toplevel]=/lib/modules/default
645   path[toplevel]=/lib/modules
646
647   persistdir=/var/lib/modules/persist
648 .fi
649 .sp
650 .I alias
651
652 .I options
653 指定行に対しても一連のデフォルト設定がある。
654 このセットは継続的に拡張されているので、ここにはリストしない。
655 (現在の) デフォルトのセットは、
656 .B /etc/modules.conf
657 ファイルがないときに
658 .B "modprobe \-c"
659 コマンドを実行すれば閲覧できる。
660 .PP
661 全ての
662 .I options
663 指定行は、以下のようにモジュールに必要なオプションを指定する。
664 .sp
665 .nf
666   modprobe de620 bnc=1
667 .fi
668 .sp
669 これらのオプションは
670 .B /etc/modules.conf
671 ファイルに与えられているオプションと、
672 .B modprobe
673 のコマンドラインによって上書きされる。
674 .PP
675 エイリアスされたモジュールにも
676 .I options
677 指定行は (されていないモジュールと) 同じように使うことができる。
678 これは例えばダミーのモジュールに便利である。
679 .sp
680 .nf
681   alias dummy0 dummy
682   options dummy0 \-o dummy0
683 .fi
684 .SH 別の設定ファイル
685 歴史的な理由から、もし /etc/modules.conf が存在しないと、
686 modutils は代わりに /etc/conf.modules を読む。
687 しかしこの古い名前の利用は推奨できない。
688 /etc/modules.conf に置き換えるべきである。
689 このバージョンの modutils では、
690 /etc/conf.modules があると警告メッセージを発する。
691 以降のバージョンではエラーメッセージを出して
692 モジュールのロードを行わないことになるだろう。
693 .SH 関連項目
694 .BR depmod (8),
695 .BR modprobe (8),
696 .BR insmod (8)
697 .SH 著者
698 .nf
699 Bjorn Ekwall <bj0rn@blox.se>
700 Keith Owens <kaos@ocs.com.au>
701 .fi
702