OSDN Git Service

31a96db861858f1c5542c6f4c63203a2dc4ca563
[linuxjm/LDP_man-pages.git] / draft / man7 / bootparam.7
1 .\" Copyright (c) 1995,1997 Paul Gortmaker and Andries Brouwer
2 .\"
3 .\" %%%LICENSE_START(GPLv2+_DOC_FULL)
4 .\" This is free documentation; you can redistribute it and/or
5 .\" modify it under the terms of the GNU General Public License as
6 .\" published by the Free Software Foundation; either version 2 of
7 .\" the License, or (at your option) any later version.
8 .\"
9 .\" The GNU General Public License's references to "object code"
10 .\" and "executables" are to be interpreted as the output of any
11 .\" document formatting or typesetting system, including
12 .\" intermediate and printed output.
13 .\"
14 .\" This manual is distributed in the hope that it will be useful,
15 .\" but WITHOUT ANY WARRANTY; without even the implied warranty of
16 .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 .\" GNU General Public License for more details.
18 .\"
19 .\" You should have received a copy of the GNU General Public
20 .\" License along with this manual; if not, see
21 .\" <http://www.gnu.org/licenses/>.
22 .\" %%%LICENSE_END
23 .\"
24 .\" This man page written 950814 by aeb, based on Paul Gortmaker's HOWTO
25 .\" (dated v1.0.1, 15/08/95).
26 .\" Major update, aeb, 970114.
27 .\" FIXME ? The use of quotes on this page is inconsistent with the
28 .\" rest of man-pages.
29 .\"
30 .\"*******************************************************************
31 .\"
32 .\" This file was generated with po4a. Translate the source file.
33 .\"
34 .\"*******************************************************************
35 .TH BOOTPARAM 7 2013\-06\-08 Linux "Linux Programmer's Manual"
36 .SH 名前
37 bootparam \- Linux カーネル起動時パラメータの解説
38 .SH 説明
39 Linux カーネルは起動するときに「コマンドラインオプション」あるいは 「起動時パラメータ」を受け付ける。 これは一般に、
40 カーネルには決定できないハードウェアのパラメータをカーネルに渡したい場合や、
41 カーネルが検出するであろう値を意図的に無効にしたり変更したりする場合に用いる。
42
43 When the kernel is booted directly by the BIOS (say from a floppy to which
44 you copied a kernel using 'cp zImage /dev/fd0'), you have no opportunity to
45 specify any parameters.  So, in order to take advantage of this possibility
46 you have to use a boot loader that is able to pass parameters, such as GRUB.
47
48 .\" The LILO program (LInux LOader) written by Werner Almesberger is the
49 .\" most commonly used.
50 .\" It has the ability to boot various kernels, and
51 .\" stores the configuration information in a plain text file.
52 .\" (See
53 .\" .BR lilo (8)
54 .\" and
55 .\" .BR lilo.conf (5).)
56 .\" LILO can boot DOS, OS/2, Linux, FreeBSD, UnixWare, etc., and is quite flexible.
57 .\"
58 .\" The other commonly used Linux loader is 'LoadLin', which is a DOS
59 .\" program that has the capability to launch a Linux kernel from the DOS
60 .\" prompt (with boot-args) assuming that certain resources are available.
61 .\" This is good for people that want to launch Linux from DOS.
62 .\"
63 .\" It is also very useful if you have certain hardware which relies on
64 .\" the supplied DOS driver to put the hardware into a known state.
65 .\" A common example is 'SoundBlaster Compatible' sound cards that require
66 .\" the DOS driver to twiddle a few mystical registers to put the card
67 .\" into a SB compatible mode.
68 .\" Booting DOS with the supplied driver, and
69 .\" then loading Linux from the DOS prompt with loadlin avoids the reset
70 .\" of the card that happens if one rebooted instead.
71 .SS 引数リスト
72 カーネルのコマンドラインはパースされ、スペースで区切られた文字列 (\fI起動時引数: boot arguments\fP)  のリストとなる。
73 ほとんどの起動時引数は次の書式である。
74
75 .in +4n
76 .nf
77 name[=value_1][,value_2]...[,value_10]
78 .fi
79 .in
80 .LP
81 ここで 'name' は、それに対応する値がカーネルのどの部分に渡されるものなのかを 識別するための、他と重ならないキーワードである。 書式中の 10
82 という制限は実際に存在する。 現在のコードは、キーワードひとつあたり、コンマで区切られたパラメータを 10 個までしか取り扱うことができない。
83 (しかし、事情が非常に複雑な場合には、同じキーワードを再度利用して 10 個以上のパラメータを与えることができるかもしれない。
84 対象となるハードウェアの設定関数がそれをサポートしていれば、だが。)
85
86 カーネルコマンドラインの識別はほとんどがカーネルソースファイル \fIinit/main.c\fP に書かれている。 最初に、カーネルは \&'root=',
87 \&'nfsroot=', 'nfsaddrs=', 'ro', 'rw', 'debug', 'init' といった特別な引数があるかをチェックする。
88 これらの意味については後述する。
89
90 カーネルは次に設定関数のリスト (配列 bootsetups に含まれている) をスキャンし、 指定された引数文字列 (例えば 'foo') が
91 特定のデバイスやカーネルの一部に対する設定関数 ('foo_setup()') に関連付けられているかを調べる。 例えばカーネルに
92 foo=3,4,5,6 のようなパラメータを与えたとすると、 カーネルは配列 bootsetups を調べて、 'foo' が登録されているか調べる。
93 登録されていたら、'foo' に対応する設定関数 ('foo_setup()') をコールし、 カーネルコマンドラインに与えられた引数である 3, 4,
94 5, 6 を設定関数に渡す。
95
96 \&'foo=bar' という形式の引数のうち、 上記のように設定関数に受け入れられなかったものは、 環境変数と解釈されて設定される。
97 (あまり役に立たない?) 例としては、'TERM=VT100' がある。
98
99 カーネルによって処理されず、環境変数としても解釈されなかった 残りの引数は、プロセス 1 に渡されることになる。 通常このプロセス 1 は
100 \fBinit\fP(1) プログラムである。 \fIinit\fP プロセスに渡される引数で最もよく使われるのは、 'single' というキーワードである。
101 これを指定すると init はシングルユーザモードでコンピュータを起動し、 通常使われるデーモンは一切起動しない。 システムにインストールされている
102 \fBinit\fP(1) が どんな引数を受け付けるかは、 マニュアルページで調べること。
103 .SS 一般的な、デバイス固有ではない起動時引き数
104 .TP 
105 \&\fB'init=...'\fP
106 カーネルが実行する初期コマンドを設定する。 この指定がなされなかったり、指定したコマンドが見つからなかった場合には、 カーネルは
107 \fI/sbin/init\fP, \fI/etc/init\fP, \fI/bin/init\fP, \fI/bin/sh\fP の順で実行を試み、すべてに失敗したら
108 panic を起こす。
109 .TP 
110 \&\fB'nfsaddrs=...'\fP
111 nfs のブートアドレスを指定した文字列に設定する。 このブートアドレスはネットワークブートの場合に用いられる。
112 .TP 
113 \&\fB'nfsroot=...'\fP
114 nfs ルートの名前を設定する。 この文字列の先頭が '/'、','、数字のいずれでもでないときは、 \&'/tftpboot/' が先頭に付加される。
115 この名前はネットワークブートの場合に用いられる。
116 .TP 
117 \&\fB'no387'\fP
118 (カーネルのコンパイル時に \fBCONFIG_BUGi386\fP が指定されたときのみ有効。)  一部の i387 コプロセッサチップには、 32
119 ビットプロテクトモードでの使用時に生じるバグがある。 例えば初期の ULSI\-387 チップは、 浮動小数点演算を行なうと確実にロックアップしてしまう。
120 この起動時引数 'no387' を指定すると、 Linux はコプロセッサがあってもそれを無視するようになる。
121 なおもちろん、カーネルコンパイル時に浮動小数点演算をエミュレートする (kernel math emulation) 指定をしなければならない!
122 .TP 
123 \&\fB'no\-hlt'\fP
124 (カーネルのコンパイル時に \fBCONFIG_BUGi386\fP が指定されたときのみ有効。)  初期の i486DX\-100 チップの一部では
125 \&'hlt' 命令に問題があって、 この命令を使うとオペレーティングモードに正しく戻って来ない。 \&'no\-hlt' を指定すれば、Linux
126 はアイドリング時に CPU を停止 (halt) するかわりに無限ループを実行するようになる。 これによって、そのようなバグのあるチップでも Linux
127 を使用できる。
128 .TP 
129 \&\fB'root=...'\fP
130 起動時にルートファイルシステムとして使われるデバイスをカーネルに指定する。 デフォルトはコンパイル時に決定され、
131 通常はカーネルを構築したシステムのルートデバイスになる。 この値を無効にして、 例えば 2
132 番目のフロッピーディスクドライブをルートデバイスに指定する場合は、 \&'root=/dev/fd1' とする。
133
134 The root device can be specified symbolically or numerically.  A symbolic
135 specification has the form \fI/dev/XXYN\fP, where XX designates the device type
136 ('hd' for ST\-506 compatible hard disk, with Y in \&'a'\-'d'; 'sd' for SCSI
137 compatible disk, with Y in 'a'\-'e'; \&'ad' for Atari ACSI disk, with Y in
138 \&'a'\-'e', \&'ez' for a Syquest EZ135 parallel port removable drive, with
139 Y='a', \&'xd' for XT compatible disk, with Y either 'a' or 'b'; 'fd' for
140 floppy disk, with Y the floppy drive number\(emfd0 would be the DOS 'A:'
141 drive, and fd1 would be 'B:'), Y the driver letter or number, and N the
142 number (in decimal) of the partition on this device (absent in the case of
143 floppies).  Recent kernels allow many other types, mostly for CD\-ROMs: nfs,
144 ram, scd, mcd, cdu535, aztcd, cm206cd, gscd, sbpcd, sonycd, bpcd.  (The type
145 nfs specifies a net boot; ram refers to a ram disk.)
146
147 なお、これらはファイルシステム上でのデバイスの指定方法とは全く関係ない。 \&'/dev/' を用いるのは単に慣習に過ぎない。
148
149 扱いにくいし移植性も良くないが、 上記のデバイスを major/minor 番号の数値で指定してもよい。 (例えば \fI/dev/sda3\fP は
150 major 番号 8、minor 番号 3 なので、 \&'root=0x803' と記述できる。)
151 .TP 
152 \&\fB'rootfstype=...'\fP
153 \&'rootfstype' オプションが指定されると、 カーネルは、 指定されたタイプであるとみなしてルートファイルシステムをマウントする。
154 このオプションは、 例えば、ext3 ファイルシステムを ext2 としてマウントし、 ルートファイルシステムのジャーナルを削除する場合に便利である。
155 こうすると、 別のメディアからマシンを起動することなく ext3 から ext2 へ戻すことができる。
156 .TP 
157 \&\fB'ro'\fP と \fB'rw'\fP
158 \&'ro' オプションは、 ルートファイルシステムを 「読み出し専用」でマウントするようカーネルに指示し、 fsck
159 プログラムがファイルシステムの矛盾を検査できるようにする。 ファイルシステムが「読み書き可能」として再マウントされる (つまり 'mount \-w \-n
160 \-o remount /') までの間は、 いかなるプロセスもこのファイルシステム上のファイルに書き込むことはできない。 (\fBmount\fP(8)
161 も参照。)
162
163 rw オプションはルートファイルシステムを 「読み書き可能」でマウントするようカーネルに指示する。 こちらがデフォルトである。
164
165 .TP 
166 \&\fB'resume=...'\fP
167 このオプションは、 マシンを休止状態 (ハイバネーション) から再起動する際の、ディスク上に保存したデータの起動位置をカーネルに指示する。
168 通常は、スワップパーティションやスワップファイルと同じである。例えば、
169
170 .in +4n
171 .nf
172 resume=/dev/hda2
173 .fi
174 .in
175 .TP 
176 \&\fB'reserve=...'\fP
177 デバイスの自動検出から I/O ポートを保護するために用いる。 コマンドの形式は以下の通り。
178
179 .in +4n
180 .nf
181 \fBreserve=\fP\fIiobase,extent[,iobase,extent]...\fP
182 .fi
183 .in
184 .sp
185 機種によっては、 デバイスドライバによるデバイスの自動検出を、 特定の範囲に対しては禁止しなければならないことがある。
186 ハードウェアが検出動作によって深刻な問題を引き起こす場合や、 誤認識される可能性がある場合、
187 また単にカーネルにハードウェアを初期化させたくない場合などがありうるだろう。
188
189 この起動時引数 reserve は、自動検出の対象外とする I/O ポートの範囲を指定する。 デバイスドライバは、
190 他の起動時引数によって明示的に指定されない限り、 予約された範囲に対して自動検出動作を行わない。
191
192 例えばブート時のコマンドラインに
193
194 .in +4n
195 .nf
196 reserve=0x300,32  blah=0x300
197 .fi
198 .in
199 .IP
200 と指定すると、'blah' を除くすべてのデバイスドライバは 0x300 から 0x31f の範囲を自動検出の対象外とする。
201 .TP 
202 \&\fB'mem=...'\fP
203 搭載されているメモリの量を返す BIOS コールは PC の仕様で定義されているが、これは最大 64MB までしか返すことができない。 Linux
204 は搭載メモリの量を調べるために、 起動時にこの BIOS コールを使用する。 もし 64MB 以上の RAM を搭載している場合は、
205 この起動時引数を用いて 実際のメモリ容量を Linux に知らせることができる。 値は 10 進数または 16 進数 (先頭に 0x を付加)
206 の数値で指定し、 1024 倍を表す 'k' または 1048576 倍を表す 'M' を末尾に付加できる。 以下は Linus による 'mem='
207 パラメータの解説である。
208
209 .in +0.5i
210 カーネルは 'mem=xx' パラメータとして どんな値を指定してもそれをそのまま受け入れる。 だからそれが嘘だとわかったら、
211 遅かれ早かれひどいクラッシュをするだろう。 パラメータはアクセスしうる最も高位の RAM アドレスを指示する。 だから例えば
212 \&'mem=0x1000000' っていうのは 16MB のメモリがある、という意味になる。 96MB のマシンなら 'mem=0x6000000' だ。
213
214 \fB注意\fP: マシンによってはメモリの最上位の領域を BIOS のキャッシュやら何やらの ために使っていることがあるから、 実際には 96MB
215 をフルにアドレスすることはできないかもしれない。 逆の場合もある。 いくつかのチップセットでは、 BIOS
216 領域に入っている物理メモリを最上位のメモリのさらに上にマップする。 よって最上位のメモリはたとえば 96MB + 384kB
217 なんて値になるかもしれない。 linux に実際より多いメモリを教えてしまったとしたら、 まずいことが起きるだろう。
218 すぐにではないかもしれないけど、ゆくゆくは確実にね。
219 .in
220
221 また、起動時引数に 'mem=nopentium' を指定すると、 pentium とそれ以降の CPU を使った IA32
222 システム用に設定されたカーネルで 4MB のページテーブルを無効にすることができる。
223 .TP 
224 \&\fB'panic=N'\fP
225 デフォルトでは、カーネルはパニックの後リブートしない。 このオプションを用いて (N を 0 より大きな値とすれば)  N
226 秒後にリブートするようになる。 この値は、起動後に以下のようにして設定することもできる。
227
228 .in +4n
229 .nf
230 echo N > /proc/sys/kernel/panic
231 .fi
232 .in
233 .TP 
234 \&\fB'reboot=[warm|cold][,[bios|hard]]'\fP
235 (カーネルコンパイル時に \fBCONFIG_BUGi386\fP が指定されたときのみ有効。)  カーネルバージョン 2.0.22 から、
236 リブートのデフォルトはコールドブートになった。 以前のデフォルトであるウォームブートをするには \&'reboot=warm'
237 と指定しなければならない。 (ある種のハードウェアをリセットするにはコールドブートが必要になるが、
238 ディスクキャッシュにある書き込んでいないデータは破壊される。 ウォームブートでは、より素早くリブートできる。)  デフォルトではリブートは 'hard'
239 で行われる。 すなわちリセットラインに low を出力するようキーボードコントローラに要求して、 リブートを行う。
240 しかし一部のマザーボードではこれができない。 \&'reboot=bios' オプションを指定すると、 代わりに BIOS を経由するようになる。
241 .TP 
242 \&\fB'nosmp'\fP と \fB'maxcpus=N'\fP
243 (カーネルのコンパイル時に __SMP__ が指定されたときのみ有効。)  コマンドラインオプションに 'nosmp' または 'maxcpus=0'
244 を指定すると、 SMP (Symmetric Multi Processing) を完全に無効にする。 \&'maxcpus=N' オプションは、
245 SMP モードで有効にする CPU の最大数を N に制限する。
246 .SS カーネル開発者用の起動時引数
247 .TP 
248 \&\fB'debug'\fP
249 カーネルが出力するメッセージはカーネルログデーモン klogd に渡され、 ディスクに記録できるようになる。 プライオリティが
250 \fIconsole_loglevel\fP のメッセージはコンソールにも表示される。
251 (これらのレベルについては、\fI<linux/kernel.h>\fP を参照。)  デフォルトではこの変数は、
252 デバッグメッセージよりも重要なあらゆるメッセージを記録するよう設定されている (デバッグメッセージは含まない)。 この起動時引数を指定すると、
253 カーネルはプライオリティが DEBUG のメッセージも出力するようになる。 \fIconsole_loglevel\fP も klogd
254 にオプションを渡せば実行時に設定できる。 \fBklogd\fP(8)  を参照。
255 .TP 
256 \&\fB'profile=N'\fP
257 カーネルがどこで CPU サイクルを消費しているか調べたい場合には、 カーネルのプロファイリング機能を有効にすればこれを実現できる。
258 カーネルプロファイリングは、変数 \fIprof_shift\fP を 0 以外の値にセットすると有効になる。 この値はコンパイル時に
259 \fBCONFIG_PROFILE\fP で指定するか、 この 'prifile=N' オプションで指定できる。 \fIprof_shift\fP の値は N
260 が指定されれば N となり、N が指定されなかった場合は \fBCONFIG_PROFILE_SHIFT\fP の値が用いられる。
261 どちらも指定されなければデフォルト値の 2 が用いられる。 この変数が重要なのは、 カーネルプロファイリングの粒度を決定するところにある。
262 すなわち、各クロックの割込みごとに、システムがカーネルコードを実行していれば、 以下のようにカウンタの値がインクリメントされる。
263
264 .in +4n
265 .nf
266 profile[address >> prof_shift]++;
267 .fi
268 .in
269 .sp
270 生のプロファイリング情報は、 \fI/proc/profile\fP から見ることができるが、readprofile.c
271 のような情報を加工するツールを使ったほうが良いだろう。 \fI/proc/profile\fP に任意のデータを書込むと、 カウンタはリセットされる。
272 .TP 
273 \&\fB'swap=N1,N2,N3,N4,N5,N6,N7,N8'\fP
274 カーネルのスワップアルゴリズムをコントロールする 次の 8 つのパラメータをセットする。 max_page_age, page_advance,
275 page_decline, page_initial_age, age_cluster_fract, age_cluster_min,
276 pageout_weight, bufferout_weight.  これはカーネルをチューンする人のためのオプションである。
277 .TP 
278 \&\fB'buff=N1,N2,N3,N4,N5,N6'\fP
279 カーネルのバッファメモリ管理をコントロールする 次の 6 つのパラメータをセットする。 max_buff_age, buff_advance,
280 buff_decline, buff_initial_age, bufferout_weight, buffermem_grace.
281 これはカーネルをチューンする人のためのオプションである。
282 .SS "RAM ディスク関連の起動時引数"
283 (カーネルのコンパイル時に \fBCONFIG_BLK_DEV_RAM\fP オプションが指定されたときのみ有効。)  一般的には、Linux で RAM
284 ディスクを使用するのはあまり良い考えではない。 システムに任せておけばもっと効率的にメモリを使用する。 しかしブート時
285 (またはブートフロッピーの作成中) には、 フロッピーの内容を RAM ディスクにロードすると便利かもしれない。
286 メインディスクがアクセス可能になる前に、 (ファイルシステムやハードウェアに関する)
287 モジュールをいくつかロードしなければならないシステムもあるだろう。
288
289 In Linux 1.3.48, ramdisk handling was changed drastically.  Earlier, the
290 memory was allocated statically, and there was a 'ramdisk=N' parameter to
291 tell its size.  (This could also be set in the kernel image at compile
292 time.)  These days ram disks use the buffer cache, and grow dynamically.
293 For a lot of information in conjunction with the new ramdisk setup, see the
294 kernel source file \fIDocumentation/blockdev/ramdisk.txt\fP
295 (\fIDocumentation/ramdisk.txt\fP in older kernels).
296
297 4 つのパラメータがある。論理値をとるものが 2 つ、整数値をとるものが 2 つ。
298 .TP 
299 \&\fB'load_ramdisk=N'\fP
300 N=1 なら RAM ディスクをロードする。N=0 ならロードしない (デフォルト)。
301 .TP 
302 \&\fB'prompt_ramdisk=N'\fP
303 N=1 ならフロッピー挿入を促すプロンプトを出す (デフォルト)。 N=0 ならプロンプトを出さない。
304 (従って、このパラメータを指定する必要はまず無いであろう。)
305 .TP 
306 \&\fB'ramdisk_size=N'\fP もしくは (古い形式の) \fB'ramdisk=N'\fP
307 ラムディスクの最大サイズを N kB (キロバイト) にセットする。 省略時は 4096 (4 MB)。
308 .TP 
309 \&\fB'ramdisk_start=N'\fP
310 開始ブロック番号 (フロッピー先頭からのオフセットで指定した RAM ディスクの開始点)  を N にセットする。 これはカーネルイメージのあとに
311 RAM ディスクイメージを置く場合に必要となる。
312 .TP 
313 \&\fB'noinitrd'\fP
314 (Only if the kernel was compiled with \fBCONFIG_BLK_DEV_RAM\fP and
315 \fBCONFIG_BLK_DEV_INITRD\fP.)  These days it is possible to compile the kernel
316 to use initrd.  When this feature is enabled, the boot process will load the
317 kernel and an initial ramdisk; then the kernel converts initrd into a
318 "normal" ramdisk, which is mounted read\-write as root device; then
319 \fI/linuxrc\fP is executed; afterward the "real" root file system is mounted,
320 and the initrd file system is moved over to \fI/initrd\fP; finally the usual
321 boot sequence (e.g., invocation of \fI/sbin/init\fP)  is performed.
322
323 initrd に関する詳細な解説はカーネルソースファイル \fIDocumentation/initrd.txt\fP を参照。
324
325 \&'noinitrd' オプションを用いると、 カーネルは (initrd 動作を行うようにコンパイルされている場合でも)
326 上記の動作を行なわず、代わりに initrd のデータを \fI/dev/initrd\fP に残す。 (このデバイスは一度しか使えない。
327 データは、そのデータを使った最後のプロセスが \fI/dev/initrd\fP をクローズするとすぐに解放される。)
328 .SS "SCSI デバイス用の起動時引数"
329 この節における用語:
330
331 \fIiobase\fP \-\- SCSI ホストアダプタが占有する I/O ポートの先頭アドレス。 16 進表記で指定し、通常 0x200 から 0x3ff
332 の範囲に位置する。
333
334 \fIirq\fP \-\- カードが利用するハードウェア割り込み。有効な値はカードに よって異なるが、通常は 5, 7, 9, 10, 11, 12, 15
335 である。 これ以外の値は通常、IDE ハードディスク、フロッピー、 シリアルポートといった一般的な周辺機器によって使用される。
336
337 \fIscsi\-id\fP \-\- SCSI バス上のホストアダプタが自分自身を識別するために使用する ID 番号。
338 この値を変更できるホストアダプタもごく希に存在するが、 ほとんどはアダプタ内部で固定されている。 よく使われるデフォルト値は 7
339 であるが、Seagate もしくは Future Domain 製の TMC\-950 ボードでは 6 が使われる。
340
341 \fIparity\fP \-\- SCSI ホストアダプタが取り付けられたデバイスとの通信に際して パリティ値を必要とするかどうか。 1
342 を指定するとパリティチェックが有効になり、 0 でパリティチェックが無効になる。 しかし、すべてのデバイスがこの起動時引数によるパリティの選択を
343 サポートするわけではない。
344 .TP 
345 \&\fB'max_scsi_luns=...'\fP
346 SCSI デバイスは複数の「サブデバイス」を自分自身の内部に持つことができる。 最もよくある例として、一時に 1 枚以上のディスクを扱うことができる
347 (チェンジャー機能付の) SCSI CD\-ROM がある。 それぞれの CD はそのデバイスの 「論理ユニット番号 (LUN)」によって特定される。
348 しかしほとんどのデバイス (例えばハードディスクやテープドライブ) は、 LUN 番号 0 が割り当てられた、ただひとつのデバイスからなる。
349
350 設計が不十分な SCSI デバイスでは 0 以外の LUN 番号への自動検出を 扱えないことがある。 したがって、コンパイル時に
351 \fBCONFIG_SCSI_MULTI_LUN\fP オプションが指定されていないと、 最近のカーネルではデフォルトでは LUN 番号 0 のみを検出する。
352
353 起動時に調べる LUN 番号を指定する場合、起動時引数として \&'max_scsi_luns=n' を指定する。n は 1 から 8 の間で指定する。
354 n=1 以上の値を使用しないようにすれば、 このようないかれた機械にひどい目にあわされずにすむだろう。
355 .TP 
356 \fBSCSI テープドライブの設定\fP
357 SCSI テープドライバの起動時設定の一部は以下のようにして行なうことができる。
358
359 .in +4n
360 .nf
361 \fBst=\fP\fIbuf_size[,write_threshold[,max_bufs]]\fP
362 .fi
363 .in
364 .sp
365 最初の 2 つの数字は kB 単位で指定する。 \fIbuf_size\fP のデフォルトは 32kB である。上限は 16384kB まで指定できる。
366 \fIwrite_threshold\fP はデータ書き出しの閾値で、 バッファのデータのサイズがこの値を越えるとデータはテープに書き出される。
367 デフォルト値は 30kB である。 バッファ数の最大値 (\fImax_bufs\fP)  は検出されたドライブの数によって変化するが、デフォルトは 2
368 である。 使用例を以下に示す。
369
370 .in +4n
371 .nf
372 st=32,30,2
373 .fi
374 .in
375 .IP
376 詳細は Linux カーネルソース内の \fIDocumentation/scsi/st.txt\fP (古いカーネルの場合は
377 \fIdrivers/scsi/README.st\fP) に書かれている。
378 .TP 
379 \fBAdaptec aha151x, aha152x, aic6260, aic6360, SB16\-SCSI の設定\fP
380 aha に続く番号はカードを表し、 aic に続く番号はカードに搭載されている実際のチップを表す (Soundblaster\-16 SCSI
381 も後者に含まれる)。
382
383 SCSI ホストの検出コードは、 インストールされている BIOS を探す。 見つからないと、カードは検出できない。
384 この場合は以下のように起動時引数を指定することになる。
385
386 .in +4n
387 .nf
388 \fBaha152x=\fP\fIiobase[,irq[,scsi\-id[,reconnect[,parity]]]]\fP
389 .fi
390 .in
391 .IP
392 もしドライバのコンパイル時にデバッグオプションを指定していた場合は、 6 番目の値でデバッグレベルを指定できる。
393
394 すべてのパラメータは、このセクションの最初で説明した通りである。 \fIreconnect\fP に 0
395 以外の値を指定すると、デバイスを切断したり接続したりできる。 以下に例を示す。
396
397 .in +4n
398 .nf
399 aha152x=0x340,11,7,1
400 .fi
401 .in
402 .IP
403 パラメータは必ず上記の順番どおりに指定されなければならない。 例えば、パリティ (parity) を設定したい場合には、 iobase, irq,
404 scsi\-id, reconnect も同時に指定する必要がある。
405 .TP 
406 \fBAdaptec aha154x の設定\fP
407 aha1542 シリーズのカードは i82077 フロッピーディスクコントローラをボードに搭載している。 一方 aha1540
408 シリーズのカードは搭載していない。 これらは共にバスマスタカードであり、 他のデバイスとバスを共有する際に、
409 どのくらい「フェアに」振る舞うかを指定するパラメータがある。 起動時引数は以下のようにして指定する。
410
411 .in +4n
412 .nf
413 \fBaha1542=\fP\fIiobase[,buson,busoff[,dmaspeed]]\fP
414 .fi
415 .in
416 .IP
417 有効な iobase の値は次の通り。 0x130, 0x134, 0x230, 0x234, 0x330, 0x334。
418 クローンカードの中には他の値を指定できるものもある。
419
420 \fIbuson\fP, \fIbusoff\fP 値はカードがISA バスを占有する時間をマイクロ秒単位で指定する。 省略時はそれぞれ 11us on と 4us
421 off になっているので、 他のカード (例えば ISA LANCE イーサネットカード) も ISA バスにアクセスできる。
422
423 \fIdmaspeed\fP 値は DMA (Direct Memory Access) 転送速度を MB/s 単位で設定する。 省略時は 5MB/s
424 である。新しいリビジョンのカードでは、 この値を使ったソフトウェアによる設定ができる。 古いカードはジャンパ設定を必要とする。
425 マザーボードが対応していれば最大 10MB/s まで指定可能である。 5MB/s 以上の値を使う場合は注意して実験してからにすること。
426 .TP 
427 \fBAdaptec aha274x, aha284x, aic7xxx の設定\fP
428 これらのボードは以下の形式で指定する。
429
430 .in +4n
431 .nf
432 \fBaic7xxx=\fP\fIextended,no_reset\fP
433 .fi
434 .in
435 .IP
436 \fIextended\fP 値が 0 以外の時は、大容量ディスク用の拡張変換が有効になる。 \fIno_reset\fP 値を 0
437 以外の値にすると、ホストアダプタの検出時に、 ドライバによる SCSI バスの初期化を行わない。
438 .TP 
439 \fBAdvanSys SCSI ホストアダプタの設定 ('advansys=')\fP
440 AdvanSys ドライバはカードの検出先として 4 つの I/O アドレスを受け付ける。 EISA や PCI
441 カードではこれらを指定しても全く効果が無い。 ISA 及び VLB カードの検出に対してのみ用いられる。
442 さらに、デバッグオプション付きでドライバがコンパイルされている場合、 デバッグ情報の出力レベルとして 0xdeb[0\-f] パラメータを追加できる。
443 0\-f によりデバッグメッセージの情報のレベルを 16 段階で指定する。
444 .TP 
445 \fBAM53C974\fP
446 構文は以下の通り。
447
448 .in +4n
449 .nf
450 \fBAM53C974=\fP\fIhost\-scsi\-id,target\-scsi\-id,max\-rate,max\-offset\fP
451 .fi
452 .in
453 .TP 
454 \fBBusLogic SCSI ホストアダプタの設定 ('BusLogic=')\fP
455
456 構文は以下の通り。
457 .in +4n
458 .nf
459 \fBBusLogic=\fP\fIN1,N2,N3,N4,N5,S1,S2,...\fP
460 .fi
461 .in
462 .IP
463 .\" (lines 3149-3270 in the kernel version I am looking at).
464 Buslogic のコマンドラインパラメータに関する詳細な議論はカーネルソースファイル \fIdrivers/scsi/BusLogic.c\fP
465 を参照すること。 以下はこれを非常におおざっぱに要約したものである。
466
467 パラメータ N1 から N5 までは整数である。 パラメータ S1 以降は文字列である。 N1 はホストアダプタが存在する I/O アドレス。 N2
468 はタグキューイングをサポートするデバイスに対して使用するキューの深さ。 N3 はバス安定時間 (BST) を秒単位で指定する。
469 これはホストアダプタのハードリセットにより SCSI バスをリセットしてから SCSI コマンドの発行を開始するまでの待ち時間である。 N4
470 はローカルオプション (ひとつのホストアダプタ用)。 N5 はグローバルオプション (すべてのホストアダプタ用)。
471
472 文字列オプションは以下の動作を制御する: タグキューイング (TQ:Default, TQ:Enable, TQ:Disable,
473 TQ:<Per\-Target\-Spec>)、 エラー復帰 (ER:Default, ER:HardReset,
474 ER:BusDeviceReset, ER:None, ER:<Per\-Target\-Spec>)、 ホストアダプタの検出
475 (NoProbe, NoProbeISA, NoSortPCI)。
476 .TP 
477 \fBEATA/DMA の設定\fP
478 検出対象にする I/O ポートのデフォルトのリストは以下のようにして変更できる。
479
480 .in +4n
481 .nf
482 \fBeata=\fP\fIiobase,iobase,...\fP\fB.\fP
483 .fi
484 .in
485 .TP 
486 \fBFuture Domain TMC\-16x0 の設定\fP
487 構文は以下の通り。
488
489 .in +4n
490 .nf
491 \fBfdomain=\fP\fIiobase,irq[,adapter_id]\fP
492 .fi
493 .in
494 .TP 
495 \fBGreat Valley Products (GVP) SCSI コントローラの設定\fP
496 構文は以下の通り。
497
498 .in +4n
499 .nf
500 \fBgvp11=\fP\fIdma_transfer_bitmask\fP
501 .fi
502 .in
503 .TP 
504 \fBFuture Domain 製 TMC\-8xx, TMC\-950 の設定\fP
505 構文は以下の通り。
506
507 .in +4n
508 .nf
509 \fBtmc8xx=\fP\fImem_base,irq\fP
510 .fi
511 .in
512 .IP
513 \fImem_base\fP にはカードが使用するメモリマップ I/O の領域を指定する。
514 通常は次の値のどれかである: 0xc8000, 0xca000, 0xcc000, 0xce000, 0xdc000, 0xde000。
515 .TP 
516 \fBIN2000 の設定\fP
517 構文は以下の通り。
518
519 .in +4n
520 .nf
521 \fBin2000=\fP\fIS\fP
522 .fi
523 .in
524 .IP
525 S はコンマ区切りの文字列で、各項目は keyword[:value] 形式で指定する。 指定できるキーワードは以下の通り。 ioport:addr,
526 noreset, nosync:x, period:ns, disconnect:x, debug:x, proc:x。
527 これらのパラメータの機能についてはカーネルソースファイル \fIdrivers/scsi/in2000.c\fP を参照。
528 .TP 
529 \fBNCR5380 および NCR53C400 の設定\fP
530 この起動時引数は以下の書式で指定する。
531
532 .in +4n
533 .nf
534 \fBncr5380=\fP\fIiobase,irq,dma\fP
535 .fi
536 .in
537 .IP
538 または
539
540 .in +4n
541 .nf
542 \fBncr53c400=\fP\fIiobase,irq\fP
543 .fi
544 .in
545 .IP
546 カードが IRQ を使用しない場合は、 255 (0xff) を指定すれば無効にできる。 IRQ に 254 を指定すると自動検出する。 詳細は
547 Linux カーネルソース内の \fIDocumentation/scsi/g_NCR5380.txt\fP (古いカーネルの場合は
548 \fIdrivers/scsi/README.g_NCR5380\fP)  に書かれている。
549 .TP 
550 \fBNCR53C8xx の設定\fP
551 構文は以下の通り。
552
553 .in +4n
554 .nf
555 \fBncr53c8xx=\fP\fIS\fP
556 .fi
557 .in
558 .IP
559 S はコンマ区切りの文字列で、各項目は keyword[:value] 形式で指定する。 指定できるキーワードは以下の通り。 mpar
560 (master_parity), spar (scsi_parity), disc (disconnection), specf
561 (special_features), ultra (ultra_scsi), fsn (force_sync_nego), tags
562 (default_tags), sync (default_sync), verb (verbose), debug (debug), burst
563 (burst_max)。 これらのオプションの機能についてはカーネルソースファイル \fIdrivers/scsi/ncr53c8xx.c\fP
564 を参照すること。
565 .TP 
566 \fBNCR53c406a の設定\fP
567 構文は以下の通り。
568
569 .in +4n
570 .nf
571 \fBncr53c406a=\fP\fIiobase[,irq[,fastpio]]\fP
572 .fi
573 .in
574 .IP
575 割り込み無しで動作するモードには irq に 0 を指定する。 高速 PIO モードは fastpio に 1 を指定し、低速モードは 0 を指定する。
576 .TP 
577 \fBPro Audio Spectrum の設定\fP
578 PAS16 は NC5380 SCSI チップを使用しており、 最近のモデルはジャンパレスの設定をサポートしている。 起動時引数の書式は以下の通り。
579
580 .in +4n
581 .nf
582 \fBpas16=\fP\fIiobase,irq\fP
583 .fi
584 .in
585 .IP
586 唯一の違いとして、 IRQ に 255 を指定すれば割り込みを使用しないようドライバに指示できる (パフォーマンスは低下する)。 通常 iobase は
587 0x388 である。
588 .TP 
589 \fBSeagate 製 ST\-0x の設定\fP
590 カードが起動時に認識されない場合は以下のような指定が必要になるだろう。
591
592 .in +4n
593 .nf
594 \fBst0x=\fP\fImem_base,irq\fP
595 .fi
596 .in
597 .IP
598 \fImem_base\fP にはカードが使用するメモリマップ I/O の領域を指定する。
599 通常は次の値のどれかである: 0xc8000, 0xca000, 0xcc000, 0xce000, 0xdc000, 0xde000。
600 .TP 
601 \fBTrantor 製 T128 の設定\fP
602 このカードも NCR5380 チップを利用しており、 以下のオプションを受け付ける。
603
604 .in +4n
605 .nf
606 \fBt128=\fP\fImem_base,irq\fP
607 .fi
608 .in
609 .IP
610 有効な \fImem_base\fP の値は次の通りである: 0xcc000, 0xc8000, 0xdc000, 0xd8000。
611 .TP 
612 \fBUltraStor 製 14F/34F の設定\fP
613 検出対象にする I/O ポートのデフォルトのリストは以下のようにして変更できる。
614
615 .in +4n
616 .nf
617 \fBeata=\fP\fIiobase,iobase,...\fP\fB.\fP
618 .fi
619 .in
620 .TP 
621 \fBWD7000 の設定\fP
622 構文は以下の通り。
623
624 .in +4n
625 .nf
626 \fBwd7000=\fP\fIirq,dma,iobase\fP
627 .fi
628 .in
629 .TP 
630 \fBCommodore Amiga 製 A2091/590 SCSI コントローラの設定\fP
631 構文は以下の通り。
632
633 .in +4n
634 .nf
635 \fBwd33c93=\fP\fIS\fP
636 .fi
637 .in
638 .IP
639 S はコンマ区切りの文字列で、各項目は keyword[:value] 形式で指定する。 認識されるオプションは以下の通り。
640 nosync:bitmask, nodma:x, period:ns, disconnect:x, debug:x, clock:x, next。
641 詳細はカーネルソースファイル \fIdrivers/scsi/wd33c93.c\fP を参照。
642 .SS ハードディスク
643 .TP 
644 \fBIDE Disk/CD\-ROM ドライバのパラメータ\fP
645 IDE ドライバは、 ディスクのジオメトリ指定からバグのあるコントローラチップのサポートまで、 数多くのパラメータを受け付ける。 ドライブを特定するには
646 \&'hdX=' を使う。 ここで X には 'a' から 'h' の文字を指定する。
647
648 あるドライブに特有なものではないオプションは、hd= を前に付けて指定する。 ドライブ特有でないオプションに対してドライブ指定 ('hdX=')
649 を前置しても問題はない。 そのオプションは期待通りそのドライブに適用される。
650
651 \&'hd=' は、(a, ..., h) のシーケンスにおいて、 まだ指定されていない次のドライブを指すためにも使える。 これ以降では簡単のために
652 \&'hd=' を使って説明する。 さらに詳しい情報を得るには、Linux カーネルソース内の \fIDocumentation/ide.txt\fP
653 (古いカーネルの場合は \fIdrivers/block/README.ide\fP) を参照のこと。
654 .TP 
655 \&\fB'hd=cyls,heads,sects[,wpcom[,irq]]' オプション\fP
656 これらのオプションはディスクの物理的なジオメトリを指定するために使う。 最初の 3 つの値以降は省略できる。 シリンダ (cyls)、ヘッド
657 (heads)、セクタ (sects) の各値は fdisk で用いられるものと同じである。 書き込み補正 (wpcom) 値は IDE
658 ディスクでは無視される。 IRQ 値には、そのドライブが接続されているインターフェースが用いる IRQ を指定する
659 (本来の意味では「ドライブに特有」のパラメータではない)。
660 .TP 
661 \&\fB'hd=serialize' オプション\fP
662 デュアル IDE インターフェースである CMD\-640 チップには設計上の問題があって、 セカンダリインターフェース上のドライブと
663 プライマリインターフェース上のドライブを 同時に使用するとデータが破壊されることがある。 このオプションを使用すると、
664 ドライバは両方のインターフェースが 同時に使用されることが絶対にないようにする。
665 .TP 
666 \&\fB'hd=dtc2278' オプション\fP
667 このオプションは、DTC\-2278D IDE インターフェースが使われている ことをドライバに伝える。 するとドライバは、DTC 特有の機能 (2
668 番目のインターフェースと高速転送モード)  を使用可能にするよう試みる。
669 .TP 
670 \&\fB'hd=noprobe' オプション\fP
671 このドライブの自動検出をしない。 例えば
672
673 .in +4n
674 .nf
675 hdb=noprobe hdb=1166,7,17
676 .fi
677 .in
678 .IP
679 とすると自動検出が無効になる。 しかしドライブのジオメトリを指定しているので、 このドライブは正しいブロックデバイスとして登録され、使用可能になる。
680 .TP 
681 \&\fB'hd=nowerr' オプション\fP
682 ドライブによっては、書き込みエラー (\fBWRERR_STAT\fP)  ビットがクリアできなくなることがある。 このオプションを指定すると、
683 このような壊れたデバイスに対する回避機能が有効になる。
684 .TP 
685 \&\fB'hd=cdrom' オプション\fP
686 このオプションは、通常の IDE ハードディスクの代わりに、 ATAPI 互換の CDROM が続されていることを IDE ドライバに伝える。
687 CD\-ROM はたいてい自動的に認識されるが、 うまく行かない場合に試してみると良い。
688 .TP 
689 \fBスタンダード ST\-506 ディスクドライバのオプション ('hd=')\fP
690 スタンダードディスクドライバは IDE ドライバと同様のジオメトリ指定を引数にとることができる。 ただし受け付ける値はちょうど 3 つ (C/H/S)
691 に限られる。 それ以上の値やそれ以下の値を指定すると、ドライバは黙ってその指定を無視する。 また引数として受け入れられるのは 'hd='
692 の形式だけである。 つまり 'hda=' のような指定はここでは正しくない。 書式は次の通り。
693
694 .in +4n
695 .nf
696 hd=cyls,heads,sects
697 .fi
698 .in
699 .IP
700 2 台のディスクが接続されてい場合は、 2 番目のディスクに対しても上記のジオメトリが設定される。
701 .TP 
702 \fBXT ディスクドライバのオプション ('xd=')\fP
703 これらの古い 8 bit カード (125kB/s の転送速度しかない!)  を使わなければならない不幸な人のためのオプションである。
704 カードが認識されない場合は以下の書式で起動時引数を指定する必要があるだろう。
705
706 .in +4n
707 .nf
708 xd=type,irq,iobase,dma_chan
709 .fi
710 .in
711 .IP
712 .\" 1.1.50, 1.3.81, 1.3.99, 2.0.34, 2.1.67, 2.1.78, 2.1.127
713 type 値にはカードのメーカーを指定し、これは自動検知より優先される。 指定すべき type の値については、使っているカーネルのソースファイル
714 \fIdrivers/block/xd.c\fP を調べてほしい。type はリスト \fIxd_sigs\fP
715 のインデックスで、歴史と共に追加されたり削除されたりしてきた。 リストの途中での追加・削除も行われたので、 その場合はすべての type
716 番号が変更された。 今日 (Linux 2.5.0) における type は、 0=generic; 1=DTC 5150cx; 2,3=DTC
717 5150x; 4,5=Western Digital; 6,7,8=Seagate; 9=Omti; 10=XEBEC である。 ここではいくつかの
718 type に同じ指定が与えられているが、 それらは等価である。
719
720 xd_setup() 関数は引数をチェックせず、 4 つの値がすべて指定されることを想定している。 引数を省略してはならない。 例として、BIOS
721 が無効にされた (あるいは削除された)  WD1002 コントローラの場合を示す (パラメータには XT
722 コントローラの「デフォルト」の値を使っている)。
723
724 .in +4n
725 .nf
726 xd=2,5,0x320,3
727 .fi
728 .in
729 .TP 
730 \fBSyquest 製 EZ* リムーバブルディスク\fP
731 構文は以下の通り。
732
733 .in +4n
734 .nf
735 \fBez=\fP\fIiobase[,irq[,rep[,nybble]]]\fP
736 .fi
737 .in
738 .SS "IBM MCA バス上のデバイス"
739 カーネルソースファイル \fIDocumentation/mca.txt\fP も参照。
740 .TP 
741 \fBPS/2 ESDI ハードディスク\fP
742 起動時に所望のジオメトリを指定できる。
743
744 .in +4n
745 .nf
746 \fBed=\fP\fIcyls,heads,sectors.\fP
747 .fi
748 .in
749 .IP
750 ThinkPad\-720 を使用する場合は以下のオプションを追加すること。
751
752 .in +4n
753 .nf
754 \fBtp720=1\fP.
755 .fi
756 .in
757 .TP 
758 \fBIBM Microchannel SCSI サブシステムの設定\fP
759 構文は以下の通り。
760
761 .in +4n
762 .nf
763 \fBibmmcascsi=\fP\fIN\fP
764 .fi
765 .in
766 .IP
767 N はサブシステムの \fIpun\fP (SCSI ID) を表す。
768 .TP 
769 \fBAztech インターフェース\fP
770 このタイプのカードの構文は以下の通り。
771
772 .in +4n
773 .nf
774 aztcd=iobase[,magic_number]
775 .fi
776 .in
777 .IP
778 magic_number に 0x79 をセットすると、 ドライバはファームウェアのバージョンが分からない場合でも、 とにかく実行を試みる。
779 その他の値はすべて無視される。
780 .TP 
781 \fBパラレルポート CD\-ROM ドライブ\fP
782 構文は以下の通り。
783
784 .in +4n
785 .nf
786 pcd.driveN=prt,pro,uni,mod,slv,dly
787 pcd.nice=nice
788 .fi
789 .in
790 .IP
791 ここで 'port' はベースアドレス、'pro' はプロトコル番号、'uni' はユニットセレクタ (チェインデバイス用)、'mod' はモード
792 (あるいは自動的に最適のものを選ばせるには \-1)、'slv' はスレーブにしたい場合に 1、'dly'
793 はポートアクセスを遅くしたい場合に小さな整数を与える。'nice' パラメータは、 ドライバのアイドル CPU 時間の使い方を制御する。
794 ただし速度はある程度低下する。
795 .TP 
796 \fBSony 製 CDU\-31A と CDU\-33A のインターフェース\fP
797 この CD\-ROM インターフェースは、 Pro Audio Spectrum サウンドカードの一部や
798 ソニーが供給するインターフェースカードで使われている。 構文は以下の通り。
799
800 .in +4n
801 .nf
802 cdu31a=iobase,[irq[,is_pas_card]]
803 .fi
804 .in
805 .IP
806 IRQ に 0 を指定すると、 ハードウェア割り込みがサポートされていないことをドライバに伝える (PAS カードにはそのようなものがある)。
807 使用するカードが割り込みをサポートしているなら、 ドライバによる CPU の負荷を減らすためにも割り込みを使用すべきである。
808
809 \fIis_pas_card\fP には、Pro Audio Spectrum カードを使用しているときには 'PAS' を指定し、
810 そうでないときにはなにも指定しない。
811 .TP 
812 \fBSony 製 CDU\-535 インターフェース\fP
813 この CD\-ROM インターフェースの構文は以下の通り。
814
815 .in +4n
816 .nf
817 sonycd535=iobase[,irq]
818 .fi
819 .in
820 .IP
821 IRQ の値だけを指定したい場合には、 iobase 値を 0 とすれば単なる穴埋めと解釈される。
822 .TP 
823 \fBGoldStar インターフェース\fP
824 この CD\-ROM インターフェースの構文は以下の通り。
825
826 .in +4n
827 .nf
828 gscd=iobase
829 .fi
830 .in
831 .TP 
832 \fBISP16 CD\-ROM インターフェース\fP
833 構文は以下の通り。
834
835 .in +4n
836 .nf
837 isp16=[iobase[,irq[,dma[,type]]]]
838 .fi
839 .in
840 .IP
841 (整数値 3 つと文字列 1 つの形式) type に 'noisp16' を指定すると、 インターフェースの設定は行なわれない。 type
842 にはこの他にも 'Sanyo', 'Sony', 'Panasonic', 'Mitsumi' が指定できる。
843 .TP 
844 \fBMitsumi 標準インターフェース\fP
845 この CD\-ROM インターフェースの構文は以下の通り。
846
847 .in +4n
848 .nf
849 mcd=iobase,[irq[,wait_value]]
850 .fi
851 .in
852 .IP
853 \fIwait_value\fP はドライブに問題がある場合に、 ドライバ内部のタイムアウトの指定に用いる。 コンパイル時の #define
854 によって実装されるかされないかが決まる。 Mitsumi FX400 は IDE/ATAPI CD\-ROM プレイヤーであり、 この mcd
855 ドライバは使用しない。
856 .TP 
857 \fBMitsumi XA/マルチセッションインターフェース\fP
858 これは上記と同じハードウェアだが、拡張機能がある。 構文は以下の通り。
859
860 .in +4n
861 .nf
862 mcdx=iobase[,irq]
863 .fi
864 .in
865 .TP 
866 \fBOptics ストレージインターフェース\fP
867 このタイプのカードの構文は以下の通り。
868
869 .in +4n
870 .nf
871 optcd=iobase
872 .fi
873 .in
874 .TP 
875 \fBPhillips CM206 インターフェース\fP
876 このタイプのカードの構文は以下の通り。
877
878 .in +4n
879 .nf
880 cm206=[iobase][,irq]
881 .fi
882 .in
883 .IP
884 ドライバは IRQ 値として 3 から 11 まで、 I/O ポートアドレスの値として 0x300 から 0x370 を想定している。
885 いずれか一方、あるいは両方を指定できる。順番も問わない。 \&'cm206=auto' とすることにより自動検出もできる。
886 .TP 
887 \fBSanyo インターフェース\fP
888 このタイプのカードの構文は以下の通り。
889
890 .in +4n
891 .nf
892 sjcd=iobase[,irq[,dma_channel]]
893 .fi
894 .in
895 .TP 
896 \fBSoundBlaster Pro インターフェース\fP
897 このタイプのカードの構文は以下の通り。
898
899 .in +4n
900 .nf
901 sbpcd=iobase,type
902 .fi
903 .in
904 .IP
905 type 値には 'SoundBlaster', 'LaserMate', 'SPEA' のうちひとつを指定できる (大文字小文字が区別される)。
906 iobase は CD\-ROM インターフェースの値である。 カードのサウンド部の値と間違えないこと。
907 .SS イーサネットデバイス
908 ドライバが異なると用いるパラメータも異なるが、 すべてのドライバは、少なくとも割り込み番号 (irq)、 I/O ポートのベースアドレス
909 (iobase)、名前 (name) を持つ。 最も一般的な形式は以下の通り。
910
911 .in +4n
912 .nf
913 ether=irq,iobase[,param_1[,...param_8]],name
914 .fi
915 .in
916
917 最初の数字でない値は名前として使用される。 param_n の値はカード (ドライバ) ごとに異なる意味を持つ。
918 よくある目的は、共有メモリアドレスの指定、インターフェースの選択、 DMA チャネルなどである。
919
920 このパラメータの最もよくある利用法は、 2 番目の Ethernet カードを強制的に検出させる場合である (デフォルトでは 1 枚しか検出しない)。
921 これは簡単で、次のようにすればよい。
922
923 .in +4n
924 .nf
925 ether=0,0,eth1
926 .fi
927 .in
928
929 この例で IRQ と I/O ベースアドレスに 0 を指定しているのは、 ドライバに自動検出をするよう伝えているのである。
930
931 Ethernet\-HOWTO では、複数のカードを使うやり方や、 カードやドライバに特有の param_n 値の意味について、
932 ずっと詳細に解説されている。 興味を持った読者は、この文書にあたり、 自分のカードに関して書かれているセクションを参照すると良い。
933 .SS フロッピーディスクドライバ
934 フロッピードライバのオプションは多数あり、 Linux カーネルソース内の \fIDocumentation/floppy.txt\fP
935 (古いカーネルの場合は \fIdrivers/block/README.fd\fP)  にすべて記載されている。
936 以下の情報はこのファイルからとったものである。
937 .TP 
938 \fBfloppy=mask,allowed_drive_mask\fP
939 使ってよいドライブにかけるビットマスクを設定する。 デフォルトでは、 ユニット 0 と 1 のフロッピーコントローラだけが許可されている。
940 これは、標準でないハードウェア (例えば ASUS の PCIマザーボードなど)  でユニット 2 や 3 にアクセスすると、
941 キーボードがおかしくなってしまうからである。 cmos オプション (後述) の導入によって、 このオプションはあまり使われなくなった。
942 .TP 
943 \fBfloppy=all_drives\fP
944 許可するドライブを示すビットマスクを、「すべてのドライブ」にする。 1 つのフロッピーコントローラに 2 台以上のドライブを接続する場合に用いる。
945 .TP 
946 \fBfloppy=asus_pci\fP
947 ユニット 0 と 1 のみを許可するようビットマスクを設定する。 (デフォルト)。
948 .TP 
949 \fBfloppy=daring\fP
950 正しく振る舞うフロッピーコントローラを使っていることをドライバに伝える。 このオプションを使うと動作はより効率的かつスムースになるが、
951 コントローラによっては動作に失敗することがある。 これを指定するとある種の動作が高速になる。
952 .TP 
953 \fBfloppy=0,daring\fP
954 注意して扱わなければならない フロッピーコントローラであることをドライバに伝える。
955 .TP 
956 \fBfloppy=one_fdc\fP
957 フロッピーコントローラがひとつしかないことをドライバに伝える (デフォルト)。
958 .TP 
959 \fBfloppy=two_fdc\fP または \fBfloppy=address,two_fdc\fP
960 フロッピーコントローラがふたつあることをドライバに伝える。 2 番目のコントローラの I/O アドレスは address で指定する。 address
961 が指定されない場合は 0x370 が使われる。
962 .TP 
963 \fBfloppy=thinkpad\fP
964 Thinkpad を使っていることをフロッピードライバに伝える。
965 Thinkpad はディスク取出の検出信号を反転して使っている。
966 .TP 
967 \fBfloppy=0,thinkpad\fP
968 Thinkpad を使っていないことをドライバに伝える。
969 .TP 
970 \fBfloppy=drive,type,cmos\fP
971 ドライブの cmos タイプを type に設定する。 さらにビットマスクを変更し、このドライブの使用を許可する。
972 この指定が便利なのは、フロッピードライブが 2 台以上ある場合 (物理 cmos に記述できるのは 2 台まで) や、 BIOS が標準的でない
973 CMOS タイプを使っている場合である。 最初の 2 台のドライブの CMOS に 0 を指定する (デフォルト) と、
974 フロッピードライバはこれらのドライブの物理 cmos を参照する。
975 .TP 
976 \fBfloppy=unexpected_interrupts\fP
977 予期しない割り込みを受けた時に警告メッセージを表示する (デフォルト)。
978 .TP 
979 \fBfloppy=no_unexpected_interrupts\fP または \fBfloppy=L40SX\fP
980 予期しない割り込みを受けた時でも警告メッセージを表示しない。 これは IBM L40SX ラップトップコンピュータを
981 特定のビデオモードで使用する時に必要となる。 (ビデオとフロッピーとの間で何らかの相互作用があるようだ。
982 予期しない割り込みは性能だけに影響し、無視しても安全である。)
983 .SS サウンドドライバ
984 サウンドドライバも起動時引数を受け付け、 コンパイル時に指定された値を変更できる。 これはやや面倒なため、あまりお薦めできない。 詳細は、Linux
985 カーネルソース内の \fIDocumentation/sound/oss/README.OSS\fP (古いカーネルの場合は
986 \fIdrivers/sound/Readme.linux\fP)  に記載されている。 引数の形式は以下の通り。
987
988 .in +4n
989 .nf
990 sound=device1[,device2[,device3...[,device10]]]
991 .fi
992 .in
993 .IP
994 各 deviceN はそれぞれ 0xTaaaId という形式で指定する。 各バイトの意味は以下の通り。
995
996 T \- デバイスのタイプ: 1=FM, 2=SB, 3=PAS, 4=GUS, 5=MPU401, 6=SB16, 7=SB16\-MPU401
997
998 aaa \- I/O ポートアドレス (16進値)
999
1000 I \- 割り込み番号 (16 進値。例: 10=a, 11=b, ...)
1001
1002 d \- DMA チャネル
1003
1004 上記の通り、かなり扱いにくい形式となっており、 コンパイル時に自分にあった値を指定する方が良いだろう。 なお起動時引数として 'sound=0'
1005 を指定すると、 サウンドドライバを完全に無効にする。
1006 .SS "ISDN ドライバ"
1007 .TP 
1008 \fBICN ISDN ドライバ\fP
1009 構文は以下の通り。
1010
1011 .in +4n
1012 .nf
1013 icn=iobase,membase,icn_id1,icn_id2
1014 .fi
1015 .in
1016 .IP
1017 icn_id1,icn_id2 はカードを識別するための 2 つの文字列である。 カーネルメッセージで用いられる。
1018 .TP 
1019 \fBPCBIT ISDN ドライバ\fP
1020 構文は以下の通り。
1021
1022 .in +4n
1023 .nf
1024 pcbit=membase1,irq1[,membase2,irq2]
1025 .fi
1026 .in
1027 .IP
1028 membaseN は N 番目のカードの共有メモリのベースアドレスであり、 irqN は N 番目のカードの割り込み設定である。 無指定時には IRQ
1029 = 5, membase = 0xD0000 となる。
1030 .TP 
1031 \fBTeles ISDN ドライバ\fP
1032 構文は以下の通り。
1033
1034 .in +4n
1035 .nf
1036 teles=iobase,irq,membase,protocol,teles_id
1037 .fi
1038 .in
1039 .IP
1040 iobase はカードの I/O ポートアドレス、 membase はカードの共有メモリのベースアドレス、 そして irq
1041 はカードが使用する割り込みチャネルである。 teles_id はアスキー文字列による識別文字列である (他と重ならないようにする)。
1042 .SS シリアルポートドライバ
1043 .TP 
1044 \fBRISCom/8 マルチポートシリアルドライバ ('riscom8=')\fP
1045 構文は以下の通り。
1046
1047 .in +4n
1048 .nf
1049 riscom=iobase1[,iobase2[,iobase3[,iobase4]]]
1050 .fi
1051 .in
1052 .IP
1053 詳細はカーネルソースファイル \fIDocumentation/riscom8.txt\fP を参照のこと。
1054 .TP 
1055 \fBDigiBoard ドライバ ('digi=')\fP
1056 このオプションを使う場合は、6 個のパラメータをきっちり指定しなければならない。
1057 構文は以下の通り。
1058
1059 .in +4n
1060 .nf
1061 digi=status,type,altpin,numports,iobase,membase
1062 .fi
1063 .in
1064 .IP
1065 パラメータは整数値か文字列で与える。 文字列で指定する場合は、 iobase と membase は 16 進値でなければならない。
1066 整数値で指定する場合はパラメータの個数は少なくても良く、順に: status このカードの動作を指定する (Enable(1) または
1067 Disable(0)), type カードのタイプ (PC/Xi(0), PC/Xe(1), PC/Xeve(2), PC/Xem(3)),
1068 altpin ピン配置を反転させる (Enable(1) or Disable(0)), numports カードのポート番号, iobase
1069 このカードの I/O ポート (文字列指定の場合は 16 進表記), membase メモリウィンドウのベースアドレス (文字列指定の場合は 16
1070 進表記)。 したがって以下のふたつの起動時引数は同じ意味を持つ。
1071
1072 .in +4n
1073 .nf
1074 digi=E,PC/Xi,D,16,200,D0000
1075 digi=1,0,0,16,0x200,851968
1076 .fi
1077 .in
1078 .IP
1079 詳細はカーネルソースファイル \fIDocumentation/digiboard.txt\fP を参照。
1080 .TP 
1081 \fBBaycom シリアル・パラレル ラジオモデム\fP
1082 構文は以下の通り。
1083
1084 .in +4n
1085 .nf
1086 baycom=iobase,irq,modem
1087 .fi
1088 .in
1089 .IP
1090 ちょうど 3 つのパラメータを与える。 複数のカードがある場合は、'baycom=' コマンドも複数記述する。 modem パラメータは文字列で、
1091 ser12, ser12*, par96, par96* の中からひとつを選ぶ。 * をつけるとソフトウェア DCD を使用する。 モデムの種類に応じて
1092 ser12 か par96 かを選択する。 詳細は Linux カーネルソース内の
1093 \fIDocumentation/networking/baycom.txt\fP (古いカーネルの場合は
1094 \fIdrivers/net/README.baycom\fP)  を参照。
1095 .TP 
1096 \fBサウンドカードラジオモデムドライバ\fP
1097 構文は以下の通り。
1098
1099 .in +4n
1100 .nf
1101 soundmodem=iobase,irq,dma[,dma2[,serio[,pario]]],0,mode
1102 .fi
1103 .in
1104 .IP
1105 最後のパラメータを除くすべてのパラメータは整数である。 ダミーの 0 があるのは、設定プログラムのバグのせいである。 mode
1106 パラメータは文字列で、hw:modem という書式で指定する。 hw は sbc, wss, wssfdx のうちひとつ、 modem は
1107 afsk1200, fsk9600 のどちらかを選択して記述する。
1108 .SS ラインプリンタドライバ
1109 .TP 
1110 \&\fB'lp='\fP
1111 .br
1112 構文は以下の通り。
1113
1114 .in +4n
1115 .nf
1116 lp=0
1117 lp=auto
1118 lp=reset
1119 lp=port[,port...]
1120 .fi
1121 .in
1122 .IP
1123 プリンタドライバには、どのポートを使うか、 どのポートを使ってはいけないかを伝えることができる。 後者は、
1124 利用可能なあらゆるパラレルポートをプリンタドライバが要求しないようにして、 他のドライバ (PLIP や PPA など) から
1125 それらを使えるようにしたい場合に便利である。
1126
1127 引数の書式は、複数のポート名である。 例えば lp=none,parport0 とすると、 最初のパラレルポートを lp1 として使い、 lp0
1128 は無効にする。プリンタードライバを完全に無効にするには lp=0 とすればよい。
1129 .TP 
1130 \fBWDT500/501 ドライバ\fP
1131 構文は以下の通り。
1132
1133 .in +4n
1134 .nf
1135 wdt=io,irq
1136 .fi
1137 .in
1138 .SS マウスドライバ
1139 .TP 
1140 \&\fB'bmouse=irq'\fP
1141 バスマウスドライバはパラメータをひとつだけとり、 ハードウェア IRQ を指定できる。
1142 .TP 
1143 \&\fB'msmouse=irq'\fP
1144 msmouse ドライバでもこの事情はまったく同じである。
1145 .TP 
1146 \fBATARI マウスの設定\fP
1147 構文は以下の通り。
1148
1149 .in +4n
1150 .nf
1151 atamouse=threshold[,y\-threshold]
1152 .fi
1153 .in
1154 .IP
1155 パラメータがひとつだけ与えられた場合には、 x\-threshold と y\-threshold を両方に用いられる。 ふたつ与えられた場合は、最初の値が
1156 x\-threshold として用いられ、 2 番目の値が y\-threshold として用いられる。 値は 1 から 20 までの数値で指定する。
1157 デフォルトは 2。
1158 .SS ビデオ機器
1159 .TP 
1160 \&\fB'no\-scroll'\fP
1161 .\" .SH AUTHORS
1162 .\" Linus Torvalds (and many others)
1163 このオプションは、コンソールドライバに、 ハードウェアスクロールを用いないよう伝える (ここで言うハードウェアスクロールとは、
1164 ビデオメモリ上のデータを移動させることによって スクリーン表示領域をスクロールさせることを指す)。 特定の点字マシンではこの指定が必要となる。
1165 .SH 関連項目
1166 \fBlilo.conf\fP(5), \fBklogd\fP(8), \fBlilo\fP(8), \fBmount\fP(8)
1167
1168 このマニュアルページの大部分は Paul Gortmaker による Boot Parameter HOWTO (version 1.0.1)
1169 を基にしている。 この (あるいは最新の) HOWTO をあたれば、 さらに多くの情報が入手できるだろう。 最新の情報源はカーネルソースファイル
1170 \fIDocumentation/kernel\-parameters.txt\fP である。
1171 .SH この文書について
1172 この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.53 の一部
1173 である。プロジェクトの説明とバグ報告に関する情報は
1174 http://www.kernel.org/doc/man\-pages/ に書かれている。