OSDN Git Service

Convert release and draft pages to UTF-8.
[linuxjm/jm.git] / manual / cdrecord / release / man1 / cdrecord.1
1 .\" @(#)cdrecord.1      1.57 01/04/17 Copyright 1996 J. Schilling
2 .\" 
3 .\" This is free documentation; you can redistribute it and/or
4 .\" modify it under the terms of the GNU General Public License as
5 .\" published by the Free Software Foundation; either version 2 of
6 .\" the License, or (at your option) any later version.
7 .\"
8 .\" The GNU General Public License's references to "object code"
9 .\" and "executables" are to be interpreted as the output of any
10 .\" document formatting or typesetting system, including
11 .\" intermediate and printed output.
12 .\"
13 .\" This manual is distributed in the hope that it will be useful,
14 .\" but WITHOUT ANY WARRANTY; without even the implied warranty of
15 .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 .\" GNU General Public License for more details.
17 .\"
18 .\" You should have received a copy of the GNU General Public
19 .\" License along with this manual; if not, write to the Free
20 .\" Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139,
21 .\" USA.
22 .\"
23 .\" Japanese Version Copyright (c) 2001 Yuichi SATO
24 .\"         all rights reserved.
25 .\" Translated Sun Nov 25 18:34:39 JST 2001
26 .\"         by Yuichi SATO <ysato@h4.dion.ne.jp>
27 .\"
28 .if t .ds a \v'-0.55m'\h'0.00n'\z.\h'0.40n'\z.\v'0.55m'\h'-0.40n'a
29 .if t .ds o \v'-0.55m'\h'0.00n'\z.\h'0.45n'\z.\v'0.55m'\h'-0.45n'o
30 .if t .ds u \v'-0.55m'\h'0.00n'\z.\h'0.40n'\z.\v'0.55m'\h'-0.40n'u
31 .if t .ds A \v'-0.77m'\h'0.25n'\z.\h'0.45n'\z.\v'0.77m'\h'-0.70n'A
32 .if t .ds O \v'-0.77m'\h'0.25n'\z.\h'0.45n'\z.\v'0.77m'\h'-0.70n'O
33 .if t .ds U \v'-0.77m'\h'0.30n'\z.\h'0.45n'\z.\v'0.77m'\h'-0.75n'U
34 .if t .ds s \\(*b
35 .if t .ds S SS
36 .if n .ds a ae
37 .if n .ds o oe
38 .if n .ds u ue
39 .if n .ds s sz
40 .TH CDRECORD 1 "Version 1.10" "J\*org Schilling" "Schily\'s USER COMMANDS"
41 .SH 名前
42 cdrecord \- マスタからオーディオ CD やデータ CD を記録する
43 .SH 書式
44 .B cdrecord
45 [
46 .I "general options
47 ]
48 .BI dev= device
49 [
50 .I track options
51 ]
52 .IR track1 .\|.\|. trackn
53
54 .SH 説明
55 .B cdrecord
56 は Orange Book CD-Recorder で
57 データ CD やオーディオ CD を記録するために使う。
58 .PP
59 .I device
60 は CD レコーダの
61 .IR scsibus / target / lun
62 を指す。
63 .I SunOS
64 での通信は汎用 SCSI ドライバ 
65 .B scg 
66 を用いて行われる。
67 他の OS では、このドライバをシミュレートするライブラリを使う。
68 使用可能な書式は、
69 .B dev=
70 .IR scsibus , target , lun
71 または
72 .B dev=
73 .IR target , lun
74 である。
75 後者の場合、CD-R はマシンのデフォルトの SCSI バスに
76 接続されていなければならない。
77 .IR scsibus ,
78 .IR target , 
79 .I lun
80 は整数である。
81 OS や SCSI 転送の実装のなかには、これに加えてデバイスファイル名を
82 指定しなければならないものもある。
83 この場合の正しい書式は、
84 .B dev=
85 .IR devicename : scsibus , target , lun
86 または
87 .B dev=
88 .IR devicename : target , lun
89 である。
90 このようなシステムでは、指定されたデバイスノード名が
91 1 つの SCSI デバイスのみを参照している場合、
92 .B dev=
93 .IR devicename : scsibus , target , lun
94 の代わりに、省略形の
95 .B dev=
96 .IR devicename : @
97 または
98 .B dev=
99 .IR devicename : @ , lun
100 を使うことができる。
101 .PP
102 リモートの SCSI デバイスにアクセスするためには、
103 リモートのデバイスであることを示すインジケータを
104 SCSI デバイス名の前に付ける必要がある。
105 リモートデバイスのインジケータは
106 .BI REMOTE: user@host:
107 または
108 .BI REMOTE: host:
109 という形式である。
110 .br
111 指定可能なリモート SCSI デバイス名は、
112 .BI REMOTE: user@host:
113 または
114 .BI REMOTE: user@host:1,0,0
115 という形式である。
116 1 つ目の形式では、リモートで SCSI デバイスのスキャンを行わせる。
117 2 つ目の形式では、
118 .I host
119 の SCSI bus # 1,target 0 lun 0 に接続されている
120 SCSI デバイスにアクセスする。
121
122 .PP
123 .B cdrecord
124 を全ての \s-2UNIX\s0 系プラットフォームで汎用的にするためには、
125 .B dev=
126 .IR devicename : scsibus , target , lun
127 という書式が好ましい。
128 これによりデバイスについての各 OS 特有の知識を
129 ユーザーに対して隠蔽することができる。
130 またこれにより、実際のデバイスファイル名や
131 .IR scsibus , target , lun
132 を指定する方法を、特定の OS 上でサポートする必要がなくなる。
133
134 .PP
135 .I scsibus 
136 0 はマシンのデフォルトの SCSI バスである。
137 マシンの SCSI 設定についてのより詳細な情報は、
138 ブート時のメッセージや
139 .B /var/adm/messages 
140 を参照すること。
141 .IR scsibus , target , lun
142 にどのような値を指定してよいか分らない場合は、
143 以下に記述されている
144 .B cdrecord
145
146 .B \-scanbus
147 オプションを使ってみること。
148
149 .PP
150 ファイル /etc/default/cdrecord が存在する場合、
151 .B dev=
152 のパラメータはこのファイル中のドライブ名ラベルにもなる
153 (「ファイル」セクションを参照)。
154
155 .PP
156 .B SVr4 
157 互換のシステムでは、
158 .B cdrecord 
159 はリアルタイムクラスを使い、
160 可能な限りスケジューリング優先度を高くする
161 (全てのカーネルプロセスより優先度を高くする)。
162 \fBPOSIX リアルタイムスケジューリング\fR
163 を備えたシステムでも、
164 cdrecord はリアルタイムスケジューリングを使う。
165 ただし、カーネルプロセスより高い優先度は得られない。
166 .PP
167 .I Track At Once 
168 モードでは、
169
170 .I track
171 はそのトラックのデータが書かれた個別のファイルに対応する。
172 引き数が
173 .RB ` \- '
174 の場合は標準入力がトラックとして使われる。
175 この場合は
176 .I stdin 
177 (標準入力) から 1 つのトラックだけが読み込まれる。
178
179 .SH 一般的なオプション
180 .PP
181 一般オプションはトラックファイル名や
182 トラックオプションより前に指定しなければならない。
183 .TP
184 .B \-version
185 バージョン情報を表示して、終了する。
186 .TP
187 .B \-v
188 一般的な表示の詳細度を 1 つ上げる。
189 例えば、書き込み処理の進捗状況を表示するために使われる。
190 .TP
191 .B \-V
192 SCSI コマンド転送に関する表示の詳細度を 1 つ上げる。
193 CD レコーダにおける書き込み処理での問題をデバックするのに役立つ。
194 簡単なエラーメッセージしか表示されない場合は、
195 このフラグを使って詳細な表示を行わせることができる。
196 .B \-VV
197 を指定すると、データバッファの内容も表示される。
198 .B \-V
199
200 .B \-VV
201 を使うと、処理が遅くなりバッファアンダーランの原因になるかもしれない。
202 .TP
203 .BI debug= "#, " -d
204 (debug=# を使って) その他のデバッグレベルを # に設定する。
205 または (-d を使って) デバッグレベルを 1 つ上げる。
206 .I -dd
207 を指定した場合、
208 .BI debug= 2
209 と等しくなる。
210 libscg でドライバをオープンする際の問題や、
211 セクタサイズとセクタタイプの問題を発見するのに役立つ。
212 .B \-debug
213 を使うと、処理が遅くなりバッファアンダーランの原因になるかもしれない。
214 .TP
215 .BR kdebug= "#, " kd= #
216 .B scg
217 ドライバに対して、SCSI コマンドを動作させているときの
218 カーネルデバッグレベルを変更させる。
219 .TP
220 .BR \-silent ", " \-s
221 SCSI コマンドが失敗したときの状況報告を表示させない。
222 .TP
223 .B \-force
224 エラーが起こった場合でも処理を続行させる。
225 このオプションは、壊れた CD-RW ディスクを空にできるように、
226 いくつかのトリックを使って実装している。
227 .TP
228 .B \-dummy
229 記録プロセスの全ての段階を CD レコーダに行わせるが、
230 処理中にレーザーをオフにしておく。
231 システムにおけるタイミングと負荷がかかった場合の応答が不明な場合は、
232 実際に CD に書き込む前に何回かテストしておくことを薦める。
233 .TP
234 .B \-dao
235 \fBDisk At Once モード\fRに設定する。
236 今のところ、non raw
237 .B "Session At Once"
238 モードをサポートしている MMC ドライブでしか動作しない。
239 .TP
240 .B \-multi
241 マルチセッション CD の作成を可能にする。
242 メディアの最後のセッションを作成するのでなければ、
243 マルチセションディスクの全てのセッションについて、
244 このオプションを指定する必要がある。
245 CD レコーダが後でセッションを追加できるように修正を行う。
246 次のプログラム領域へのリンクを含んだ TOC が作成される。
247 ここで作成されたメディアは、
248 (CDplus 以外の) 製品版 CD とは 100% 互換ではない。
249 マルチセッション CD の記録だけに使用すること。
250 このオプションを指定した場合、デフォルトのトラックタイプは
251 .B "CD-ROM XA mode 2"
252 である。
253 .I Sony 
254 製のドライブはハードウェアが
255 .B "CD-ROM XA mode 2" 
256 に対応していない。
257 このようなドライブでマルチセッションのディスクを作成するためには、
258 .B \-data 
259 オプションを指定しなければならない。
260 cdrecord はデータセクタをオーディオセクタに変換する
261 コーダーを備えていないので、
262 マルチセッションディスクを DAO/SAO モードで記録したい場合は、
263 .B \-data
264 オプションをつけて
265 .B CD-ROM
266 セクタをマルチセッションにしなければならない。
267 全てのドライブがマルチセッション CD の DAO/SAO モードに対応している訳ではない。
268 .TP
269 .B \-msinfo
270 .B "mkisofs-1.10" 
271 以降に適した形式のマルチセッション情報を取得する。
272 .sp
273 このオプションは、少なくとも 1 つの閉じたセッションがあり、
274 セッションを追加できる (まだ閉じられていない) CD のみで動作する。
275 この操作に適さないディスクからマルチセッション情報を取得しようとした場合、
276 エラーメッセージを出すドライブもある。
277 .TP
278 .B \-toc
279 CD の table of content (内容一覧) または PMA を取得して表示する。
280 このオプションを使うと、
281 .B cdrecord
282 は CD-R ドライブと CD-ROM ドライブで動作する。
283 .TP
284 .B \-atip
285 CD-R メディアや CD-RW メディアの
286 ATIP (absolute Time in Pregroove) 情報を取得して表示する。
287 このオプションを使うと、
288 .B cdrecord
289 は ATIP 情報を取得する。
290 ドライブが ATIP    情報の読み取りに対応していない場合、
291 記録されている情報の一部もしくは何も表示されない。
292 ATIP 情報の読み取りは、
293 MMC 互換のわずかなドライブでしかサポートされていない。
294 .sp
295 .B cdrecord
296 が最初のセッションの lead-in start time を取得できる場合、
297 メディアにかかれた製造者情報をデコードして表示しようとする。
298 .TP
299 .B \-fix
300 ディスクの固定 (fixated) のみを行う (つまり、CD-R の TOC が書き込まれる)。
301 何らかの理由により、ディスクには書かれたが固定が行われなかった場合に、
302 このオプションを使うことができる。
303 現在のところ、このオプションは昔の TEAC 製ドライブ
304 (CD-R50S と CD-R55S) では動作しない。
305 .TP
306 .B \-nofix
307 トラックを書き込んだ後にディスクを固定しない。
308 このオプションはオーディオディスクを段階的に作成するために使用できる。
309 固定していないディスクは、一般には CD を記録するドライブ以外では使えないが、
310 このようなディスクを再生できるオーディオ CD プレーヤもある。
311 .TP
312 .B \-waiti
313 SCSI ドライバをオープンする前に、標準入力からの入力が可能になるのを待つ。
314 このオプションを使うと
315 .B cdrecord
316 がマルチセッションディスクに追加セッションを書き込んでいる間でも、
317 パイプからの入力を読み取ることができるようになる。
318 マルチセッションディスクに追加セッションを書き込んでいる場合、
319 .B mkisofs 
320 は出力を書き出す前に前のセッションを読み込む必要がある。
321 標準入力からの入力が可能になるのと同時に、
322 .B cdrecord 
323 が SCSI ドライバをオープンする場合は、このオプションを使用できない。
324 .TP
325 .B \-load
326 メディアをロードして終了する。
327 このオプションはトレーのロード機構があるドライブでしか動作しないが、
328 Kodak のディスクトランスポータを使う場合にも便利である。
329 .TP
330 .B \-eject
331 動作後にディスクを取り出す。
332 (Philips などの) いつかのデバイスでは、
333 新しいディスクを作成する前にメディアを取り出す必要がある。
334 これらのデバイスでは、
335 \-dummy テストをした直後に実際のディスクを作成できない。
336 .TP
337 .B "speed=#
338 書き込みプロセスの速度ファクタを # にする。
339 # はオーディオ速度の何倍の速さにするかを表す整数である。
340 オーディオ速度は CD-ROM では約 150 KB/s、
341 CD-Audio では約 172 KB/s である。
342 .I speed
343 オプションを指定しない場合、
344 .B cdrecord
345 は環境変数
346 .B CDR_SPEED
347 から速度を取得する。
348 .I "speed=2" 
349 または
350 .I "speed=4" 
351 で問題がある場合、
352 .I "speed=0" 
353 を試してみること。
354 .TP
355 .BI blank= type
356 CD-RW を空 (blank) にして終了する。または、書き込む前に CD-RW を空にする。
357 空にする方法は以下のいずれかである。
358 .RS
359 .TP 12
360 help
361 空にする方法の一覧を表示する。
362 .TP
363 all
364 ディスク全体を空にする。長い時間がかかる。
365 .TP
366 fast
367 最小限の手間でディスクを空にする。
368 PMA, TOC, pregap を消去する。
369 .TP
370 track
371 トラックを空にする。
372 .TP
373 unreserve
374 予約済みトラックの予約を解除する。
375 .TP
376 trtail
377 トラックの末尾を空にする。
378 .TP
379 unclose
380 最後のセッションを閉じない。
381 .TP
382 session
383 最後のセッションを空にする。
384 .RE
385 このオプションを
386 .B \-force
387 フラグと一緒に使うと、
388 .B \-force
389 フラグなしでは空にできない CD-RW ディスクを空にすることができる。
390 ドライブの中にはある種の壊れた CD-RW ディスクの消去を
391 続行することができないものもあるので、
392 .BI blank= all
393 を指定する必要があるかもしれない。
394 .B \-force 
395 が指定された場合、
396 .B cdecord
397 はできる限りのことを行うが、空にする操作が成功するか否かは、
398 最終的にはドライブのファームウェアに依存する。
399 .TP
400 .BR fs= #
401 fifo (リングバッファ) サイズを # にする。
402 このオプションは
403 .BR dd (1),
404 .BR sdd (1),
405 .BR star (1)
406 のものと同じ方法で使うことができる。
407 他の単位が指定されない限り、サイズはバイト数であるとする。
408 数字の直後に `b', `k', `m', `s', `f' を付けることができる。
409 それぞれサイズが 512, 1024, 1024*1024, 2048, 2352 倍であることを表す。
410 `x' や `*' で区切ってサイズを指定した場合、2 つの数の掛け算が行われる。
411 よって、
412 .I "fs=10x63k
413 は fifo のサイズを 630\ kB に指定したことになる。
414 .sp
415 .I fs=
416 引き数で指定されたサイズには、管理に必要な共有メモリの分も含まれている。
417 このメモリの大きさは、少なくとも 1 ページである。
418 .IR fs =
419 オプションが指定されていない場合、
420 .B cdrecord
421 は fifo のサイズを環境変数
422 .B CDR_FIFOSIZE
423 から取得する。
424 デフォルトの fifo サイズは、現在のところ 4 MB である。
425 .sp
426 fifo はリアルタイム書き込みプロセスのバッファを増やすために使われる。
427 これによって、
428 .B mkisofs
429
430 .B cdrecord
431 をパイプで直接つないで動作させることができる。
432 fifo がアクティブで、かつ CD を作成するために
433 .B mkisofs
434 から
435 .B cdrecord
436 へのパイプを使った場合、
437 .B cdrecord
438 が書き込みをする前に
439 .B mkisofs 
440 が落ちると、
441 .B cdrecord
442 はディスクの何も変更せずに終了する。
443 推奨される fifo サイズは 4 〜 32 MB である。
444 経験則として、fifo サイズは少なくとも
445 CD レコーダの内部バッファのサイズと同じなければならない。
446 また、マシンで使用されている RAM の物理サイズの半分以下でなければならない。
447 fifo サイズが充分大きい場合、
448 fifo empty count が 0 で、fifo min fill が 20% 以上であるという
449 fifo の統計情報が表示される。
450 fifo のためにあまり多くのメモリ量を使わない方がよい。
451 他に何もしていないマシンで、
452 CD を書き込むのに 8 MB 以上のメモリが必要になるのは、
453 マシンパワーが足りないか、ハードウェアに問題があるか、
454 設定が間違っている場合である。
455 (Sparcstation-2 などの) sun4c アーキテクチャでは、
456 1 プロセス当たりの MMU ページテーブルエントリは 16MB しかない。
457 sun4c では fifo に 14 MB 以上を使うと、
458 OS が MMU テーブルを絶えず再読み込みするために非常に時間がかかる。
459 Sun の新しいマシンでは、このような MMU のハードウェア問題はない。
460 PC ハードウェアがこの問題に影響されるかについての情報はない。
461 .sp
462 バッファアンダーランやそれと同様な問題があり、かつ
463 .I "fifo empty count"
464 が 0 であるという表示がされる場合は、
465 ハードウェア上の問題がある。
466 この場合、fifo のサイズは充分である。
467 .TP
468 .BI dev= target
469 CD レコーダの SCSI target を設定する。上記を参照。
470 一般的なデバイス指定では
471 .BI dev= 6,0
472 である。
473 数値での target 指定の他に、
474 ファイル名も指定しなければならない場合、
475 そのファイル名は実装依存である。
476 この場合の正確なファイル名は、
477 対象とする OS の独自のマニュアルに書かれているだろう。
478 .I CAM
479 をサポートしてない
480 .I FreeBSD
481 システムでは、
482 .RI ( /dev/rcd0.ctl
483 などの) 制御デバイスを使う必要がある。
484 この場合の正確なデバイス指定は、
485 .BI dev= /dev/rcd0.ctl:@
486 である。
487 .sp
488 Linux では、パラレルポートアダプタに接続されたデバイスは、
489 仮想 SCSI bus に対応付けされる。
490 別のパラレルポートアダプタは、
491 この仮想 SCSI bus の別の target に対応付けされる。
492 .sp
493 .I dev
494 オプションが指定されていない場合、
495 .B cdrecord
496 は環境変数
497 .B CDR_DEVICE
498 からデバイスを取得しようとする。
499 .sp
500 .B dev=
501 オプションの引き数に文字 ',', '/', '@', ':' がない場合、
502 ファイル /etc/default/cdrecord に書かれたラベル名として扱われる
503 (「ファイル」セクションを参照すること)。
504 .TP
505 .BI timeout= #
506 SCSI コマンドのデフォルトのタイムアウトを
507 .I #
508 秒にする。
509 SCSI コマンドのデフォルトのタイムアウトは、
510 SCSI コマンドを送る際の最短タイムアウトとして使われる。
511 SCSI コマンドがタイムアウトにより失敗した場合、
512 タイムアウトの値を失敗したコマンドの
513 デフォルトのタイムアウトより長くすることができる。
514 タイムアウトを長くしてコマンドが正常に動作した場合は、
515 成功したときのタイムアウト時間とそのコマンドを、
516 このプログラムの著者に知らせて下さい。
517 .I timeout 
518 オプションが指定されない場合、
519 デフォルトのタイムアウト 40 秒が使われる。
520 .TP
521 .BI driver= name
522 このオプションを指定すると、
523 デバイスに対してユーザーが指定したドライバ名を使える。
524 使用可能なドライバのリストを取得するには、
525 .B "driver=help"
526 を使うこと。
527 このオプションは存在するのは、
528 サポートされているドライブに似ているが、
529 .B cdrecord
530 が直接検出できないドライブで
531 .B cdrecord
532 を使うことができるようにするためである。
533 このオプションは細心の注意を払って使用すること。
534 デバイスに合わないドライバを使うと、
535 ディスクを使えなくしてしまう可能性が高くなる。
536 合わないドライバを使った場合、最も良くても
537 .B \-speed
538 または
539 .B \-dummy
540 が動作しない。
541 .sp
542 リストには
543 .B cdr_simul
544
545 .B dvd_simul
546 という 2 つの特別なドライバエントリがある。
547 これらのドライバエントリは、いろいろなスピードでのタイミングテストや、
548 .B \-dummy
549 オプションに対応していないドライバでのタイミングテストを
550 行うために作られている。
551 シミュレーションドライバは、バッファサイズが 1MB のドライブを実装している。
552 また、このバッファサイズは環境変数
553 .B CDR_SIMUL_BUFSIZE
554 で変更できる。
555 シミュレーションドライバはバッファアンダーランも正しくシミュレートする。
556 .B \-dummy 
557 オプションを指定すると、バッファアンダーランの場合でも終了しない。
558 .TP
559 .BI driveropts= "option list"
560 ドライバ特有のオプションを設定する。
561 オプションはコンマで区切ったリストで指定する。
562 使用可能なオプションのリストを取得するには、
563 .BI driveropts= help
564
565 .I \-checkdrive
566 オプションと一緒に指定すること。
567 現在のところ、
568 .B burnproof
569 オプションのみが実装されている。
570 これは Sanyo BURN-Proof 技術を使っているドライブで、
571 バッファアンダーラン検証書き込み
572 (Buffer Underrun Proof writing) に対応するためのものである。
573 .TP
574 .B \-checkdrive
575 現在のドライブに対応したドライバが存在するかをチェックして、終了する。
576 ドライブが既知のものであれば、
577 .B cdrecord
578 は終了コード 0 で終了する。
579 .TP
580 .B \-prcap
581 SCSI-3/mmc 互換ドライブでモードページを 0x2A としたときに取得できる
582 ドライブの機能を表示する。
583 .I kB
584 のマークがあるものは、1000 バイトを kilo-byte とする。
585 また
586 .I KB
587 のマークがあるものは、1024 バイトを Kilo-byte とする。
588 .TP
589 .B \-inq
590 ドライブから情報の取得 (inqurity) を行い、
591 取得された情報を表示して、終了する。
592 .TP
593 .B \-scanbus
594 全ての SCSI バス上のドライブをスキャンし、
595 取得できた文字列を表示する。
596 このオプションは、システム上の CD レコーダの SCSI アドレスを
597 知るために使われる。
598 ラベルに使われる数字は
599 .B "bus * 100 + target"
600 で計算される。
601 .TP
602 .B \-reset
603 CD レコーダのある SCSI バスをリセットする。
604 このオプションは全ての OS 上で動作するわけではない。
605 .TP
606 .B \-ignsize
607 メディアの既知のサイズを無視する。
608 このオプションは特に注意して使うべきである。
609 このオプションはデバッグのためだけに存在するので、
610 他の目的に使用してはならない。
611 通常の容量以上にディスクに書き込む必要はない。
612 .TP
613 .B \-useinfo
614 audio オプションを上書きするのに *.inf ファイルを使う。
615 このオプションを使うと、*.inf ファイルから
616 プレギャップサイズ情報を読み込む。
617 *.inf ファイルは 1 トラック毎のオーディオデータが書かれた
618 ファイルと関連づけられる。
619 .TP
620 .BR defpregap =#
621 第 1 トラック以外の全てのトラックのデフォルトのプレギャップサイズを設定する。
622 このオプションは現在のところ、
623 track-at-once ディスクを作成する際に
624 各トラックの先頭に 2 秒の無音領域がない場合には、
625 TEAC ドライブでしか機能しない。
626 .br
627 このオプションは将来なくなるかもしれない。
628 .TP
629 .B \-packet
630 .B "packet writing mode"
631 に設定する。
632 これは実験的なインターフェースである。
633 .TP
634 .BR pktsize =#
635 パケットサイズを # に設定し、修正パケットモードを使わせる。
636 これは実験的なインターフェースである。
637 .TP
638 .B \-noclose
639 現在のトラックを閉じない。パケット書き込みモードでのみ役立つ。
640 これは実験的なインターフェースである。
641 .TP
642 .B mcn=med_cat_nr
643 CD の
644 .B "メディアカタログ番号 (Media Catalog Number)"
645
646 .I med_cat_nr
647 に設定する。
648
649 .SH トラックオプション
650 .PP
651 トラックオプションはトラックファイル名と合わせて指定する。
652 .TP
653 .B isrc=ISRC_number
654 次のトラックの
655 .B "国際標準録音資料コード (International Standard Recording Code)"
656
657 .I ISRC_number
658 にする。
659 .TP
660 .BI index= list
661 次のトラックのインデックスリストを設定する。
662 インデックスリストは、コンマで区切られた数値のリストで、
663 インデックスは 1 から始める。
664 このリストの最初のエントリには 0 が書かれていなければならない。
665 以降はこれより大きな数値が順番にリストされていなければならず、
666 それぞれの数値は 1 単位を 1/75 秒として、インデックスの開始を表す。
667 インデックスリストは以下のような形式である:
668 0,7500,15000 はインデックス 1 を開始トラックとし、
669 インデックス 2 を開始トラックから 100 秒後、
670 インデックス 3 を開始トラックから 200 秒後とする。
671 .TP
672 .B \-audio
673 このフラグが指定されると、以降の全てのトラックが (Red Book と同じ) 
674 .B "CD-DA" 
675 オーディオフォーマットで書かれる。
676 このトラック用のデータファイルは、
677 ステレオ 16-bit デジタルオーディオデータで、
678 サプリングレートは 1 秒あたり 44100 回にすべきである。
679 バイトオーダーは、MSB left, LSB left, MSB right, LSB right, MSB left, ... 
680 というようにする。
681 トラックは 2352 バイトの倍数にする。
682 書き込みプロセスにおいて、データが 2352 バイトの倍数で読み込まれるので、
683 オーディオトラックのマスタイメージを raw ディスクにおくことはできない。
684 .sp
685 ファイル名が
686 .I .au
687 または
688 .I .wav
689 で終る場合、ファイルは構造化オーディオファイルデータファイルとして扱われる。
690 この場合
691 .B cdrecord
692 は、ファイルを Sun オーディオファイルまたは
693 Microsoft .WAV ファイルと仮定して、
694 オーディオヘッダ情報以外をスキップしてオーディオデータを抽出する。
695 それ以外の場合は、オーディオデータストリームに
696 ヘッダが含まれていないときにしか cdrecord は正常に動作しない。
697 多くの構造化オーディオファイルは
698 長さが (1/75 秒の) ブロックの倍数でないので、
699 .B \-pad
700 オプションも指定しなければならないことが多い。
701 .B cdrecord
702 は .WAV ファイルのオーディオデータが
703 Intel (リトルエンディアン) バイトオーダーで書かれていると認識して、
704 CD レコーダがビッグエンディアンのデータを必要としているときには、
705 データのバイト交換を行う。
706 .B cdrecord
707 は、(1 秒あたり 44100 回の 16 ビットステレオサンプリングを行い
708 PCM コーディングする) Red Book の必要条件を満たさない
709 オーディオファイルの使用を拒否する。
710 .sp
711 他の構造化オーディオデータ形式を
712 .B cdrecord
713 の入力に使う場合は、
714 データの構造が上記の (ビッグエンディアンバイトオーダー) 構造であれば、
715 通常は動作する。
716 しかし、データ形式にヘッダが含まれている場合は、
717 トラックの開始時にクリック音が聞こえてしまうだろう。
718 .TP
719 .I " "
720 .I \-data 
721
722 .I \-audio
723 がどちらも指定されていない場合、
724 .B cdrecord
725 は、ファイル名が
726 .I .au
727 または 
728 .I .wav
729 で終るときは
730 .I \-audio
731 をデフォルトとし、
732 それ以外のときは
733 .I \-data 
734 をデフォルトとする。
735 .TP
736 .B \-swab
737 このフラグが指定されている場合、オーディオデータは
738 バイトスワップ (リトルエンディアン) オーダーであると仮定する。
739 Yamaha, Sony, new SCSI-3/mmc などの CD ライタでは、
740 オーディオデータがリトルエンディアンオーダーでなければならない。
741 .\" (リトルエンディアンは、実際に CD に記録されるバイトオーダーである) ????
742 他の CD ライタでは、オーディオデータは SCSI プロトコルで使われる
743 ビッグエンディアン (ネットワーク) バイトオーダーなければならない。
744 .B cdrecord
745 は、CD レコーダがビッグエンディアンのオーディオデータを必要とするのか、
746 リトルエンディアンのオーディオデータを必要とするのかを認識して、
747 データストリームのバイトオーダーをレコーダの必要にあったものに修正する。
748 .I \-swab 
749 フラグが必要になるのは、データストリームが
750 Intel (リトルエンディアン) バイトオーダーの場合のみである。
751 .sp
752 .B cdrecord
753 の詳細な出力には、入力データをレコーダが必要とする
754 バイトオーダーに合わせるのために入れ換える必要があるかが表示される。
755 .B cdrecord
756
757 .I \-swab 
758 フラグが実際にトラックに指定されているかどうかは表示しない。
759 .TP
760 .B \-data
761 このフラグが指定されている場合、これ以降の全てのトラックは
762 .B "CD-ROM mode 1
763 (Yellow Book) フォーマットで書き込まれる。
764 データは 2048 バイトの倍数である。
765 The file with track data should contain an 
766 トラックデータのファイルは、
767 .BR ISO-9660 " または " Rock Ridge
768 ファイルシステムイメージでなければならない
769 (詳細は
770 .B mkisofs 
771 を参照すること)。
772 トラックデータが
773 .B ufs
774 ファイルシステムイメージの場合、
775 フラグメントサイズを 2 KB バイトに設定するれば、
776 セクタサイズが 2 KB の CD ドライブを読み込みに使うことができる。
777 .TP
778 .I " "
779 他のフラグが指定されていない場合、\-data がデフォルトである。
780 .TP
781 .I " "
782 .I \-data 
783
784 .I \-audio
785 がどちらも指定されていない場合、
786 .B cdrecord
787 は、ファイル名が
788 .I .au
789 または 
790 .I .wav
791 で終るときは
792 .I \-audio
793 をデフォルトとし、
794 それ以外のときは
795 .I \-data 
796 をデフォルトとする。
797 .TP
798 .B \-mode2
799 このフラグが指定されると、これ以降の全てのトラックは
800 .B "CD-ROM mode 2
801 フォーマットで書き込まれる。
802 データは 2048 バイトの倍数である。
803 .TP
804 .B \-xa1
805 このフラグが指定されると、これ以降の全てのトラックは
806 .B "CD-ROM XA mode 1
807 フォーマットで書き込まれる。
808 データは 2048 バイトの倍数である。
809 .TP
810 .B \-xa2
811 このフラグが指定されると、これ以降の全てのトラックは
812 .B "CD-ROM XA mode 2
813 フォーマットで書き込まれる。
814 データは 2048 バイトの倍数である。
815 .TP
816 .B \-cdi
817 このフラグが指定されると、これ以降の全てのトラックは
818 .B "CDI
819 フォーマットで書き込まれる。
820 データは 2048 バイトの倍数である。
821 .TP
822 .B \-isosize
823 .B "ISO-9660
824 ファイルシステムサイズを次のトラックのサイズとする。
825 raw ディスクパーティションまたはマスタ CD から
826 トラックのイメージを読み込ませたい場合、
827 このオプションが必要になる。
828 raw ディスクパーティションの場合は、
829 CD のサイズを ISO ファイルシステムのサイズに制限するために
830 .B \-isosize
831 オプションが必要となる。
832 マスタ CD の場合は、
833 track at once モードのときに
834 CD レコーダに 2 つのランアウト (run out) ブロックを読み込ませないために、
835 .B \-isosize
836 オプションが必要になる。
837 この 2 つのランアウトブロックは読み込むことができず、
838 defective コピーを引き起こすバッファアンダーランの原因になる。
839 .B cdrecord
840 がトラックデータを
841 .I stdin
842 から読み込む場合には、このオプションを使ってはならない。
843 今のところ \-multi オプションが指定されている場合には、
844 ファイルシステムのサイズを決定するために、このオプションを使うことはできない。
845 .TP
846 .B \-pad
847 データトラックの場合は、
848 各データトラックの後ろにデータ 0 が 15 セクタ分追加される。
849 この場合、
850 .B \-pad 
851 オプションは
852 .B padsize=
853 オプションによって上書きされる。
854 ただし、このオプションは
855 .BI padsize=15s
856 の省略形のままである。
857 .I \-pad 
858 がオーディオトラックを参照している場合、
859 .B cdrecord 
860 はオーディオデータが 2352 バイトの倍数になるようにデータを埋め込む。
861 詰め込まれるオーディオデータはバイナリの 0 であり、
862 全くの無音状態と等しい。
863 .sp
864 .B \-pad 
865
866 .B \-nopad 
867 によって無効にされるまで有効であり続ける。
868 .TP
869 .BR padsize= #
870 次のトラックに詰め込まれるデータ 0 の数を # に設定する。
871 .B \-pad
872 オプションの動作とは反対に、新たなトラックでは
873 .I padsize=
874 の値が 0 にリセットされる。
875 使用可能な引き数は
876 .BR fs =
877 オプションを参照すること。
878 CD ドライブがトラックの最終セクタを読み込めない場合、
879 または ISO-9660 ファイルシステムの先読みバグがある
880 .B Linux 
881 システム上で CD を読み込ませたい場合は、このオプションを使うこと。
882 空のファイルをトラックデータとして用いる場合、
883 このオプションは全てを 0 で埋めたディスクを作成するために使われる。
884 .TP
885 .B \-nopad
886 以降のトラックに対して 0 の埋め込みを行わない \- 
887 これがデフォルトである。
888 .TP
889 .B \-shorttrack
890 これ以降のトラックで、Red Book トラック長基準を破っても構わないことにする。
891 トラック長は最短でも 4 秒なければならない。
892 このオプションは DAO モードで用いられた場合にのみ有効である。
893 全てのドライブがこの機能に対応しているわけではない。
894 ドライブは結果として得られる CUE シートを受け付けなければならない。
895 .TP
896 .B \-noshorttrack
897 Red Book トラック長基準を再び守らせる。
898 トラックは少なくとも 4 秒でなければならない。
899 .TP
900 .BR pregap =#
901 次のトラックのプレギャップサイズを設定する。
902 このオプションは現在のところ、TEAC 製ドライブで
903 各トラックの前に 2 秒間の無音を入れずに
904 track-at-once ディスクを作成するときにしか動作しない。
905 .br
906 このオプションは将来なくなる。
907 .TP
908 .B \-preemp
909 .\"ysato: 
910 .\"ysato: 原文では "micro" の部分が「μ」の 1 バイト文字で書かれているが、
911 .\"ysato: EUC-JP で保存できないので変更した。
912 .\"ysato: 
913 このフラグを指定すると、オーディオトラックの全ての TOC エントリは、
914 オーディオデータが 50/15 μ秒のプレ・エンファシス (pre-emphasis) で
915 サンプリングされているとする。
916 ただし、このデータがファイルからディスクに移される際に変更されることはない。
917 このオプションはデータトラックには何も影響しない。
918 .TP
919 .B \-nopreemp
920 このフラグが指定されていると、
921 これ以降のオーディオトラックの TOC エントリは、
922 オーディオデータのマスタがリニアデータとして作成されているものとする
923 \- これがデフォルトである。
924 .TP
925 .B tsize=#
926 次のトラックのマスタイメージが raw ディスクに格納されている場合、
927 ディスク上の有効なデータ量を指定するために、このオプションを使うこと。
928 次のトラックのイメージが通常のファイルとして格納されている場合、
929 ファイルのサイズからそのトラックの長さを決定する。
930 トラックに ISO 9660 ファイルシステムイメージがある場合は、
931 ファイルシステムイメージの長さを決定するために
932 .I \-isosize
933 オプションを使うこと。
934 .br
935 TEAC プログラミングインターフェースを使ういくつかのドライブでは、
936 Disk at Once モードでも Track at Once モードでも
937 ディスクの書き込みを始める前に
938 .B cdrecord
939 が各トラックのサイズを知る必要がある。
940 今のところ cdrecord はサイズをチェックして、書き込みを始める前に中止する。
941 このような現象が起こった場合は、
942 .B "mkisofs -print-size
943 を実行して、得られた結果を
944 .B cdrecord
945
946 .BR tsize =
947 オプションの引き数として使うこと。
948 .br
949 指定可能な引き数は
950 .BR fs =
951 オプションを参照すること。
952
953 .SH 例
954 .PP
955 以下の例では、CD レコーダがマシンのプライマリ SCSI バスに
956 接続されていると仮定している。
957 SCSI ターゲット ID は 2 に設定されている。
958 .PP
959 ファイル
960 .I cdimage.raw 
961 にあるデータを使って単純な CD-ROM を 2 倍速で記録する:
962 .PP
963     cdrecord \-v speed=2 dev=2,0 cdimage.raw
964 .PP
965 Rock Ridge 拡張された ISO 9660 ファイルシステムのイメージを作成する:
966 .PP
967     mkisofs \-R \-o cdimage.raw /home/joerg/master/tree
968 .PP
969 Solaris で CD を書き込む前に上の結果のファイルを検査する:
970 .PP
971     mount \-r \-F fbk \-o type=hsfs /dev/fbk0:cdimage.raw /mnt
972 .PP
973 Linux では:
974 .PP
975     mount cdimage.raw \-r \-t iso9660 \-o loop /mnt
976 .PP
977 以下のように続ける:
978 .br
979     ls \-lR /mnt
980 .br
981     umount /mnt
982 .PP
983 システム全体のスピードが充分で、
984 ファイルシステムの構造がそれほど複雑でない場合、
985 cdrecord は ISO 9660 ファイルシステムのイメージを作成せずに実行できる。
986 単純にパイプラインで実行すればよい:
987 .PP
988     mkisofs \-R /master/tree | cdrecord \-v fs=6m speed=2 dev=2,0 -
989 .PP
990 このパイプラインを実行するために推奨される最小の fifo サイズは 4 MB である。
991 デフォルトの fifo サイズは 4 MB であるので、
992 別の fifo サイズを指定したい場合以外は
993 .B fs=
994 オプションを指定する必要はない。
995 システムに負荷がかかっている場合は、
996 mkisofs もリアルタイムクラスで実行すべきである。
997 .B mkisofs
998 の優先度を上げるためには、コマンド
999 .PP
1000     mkisofs \-R /master/tree
1001 .sp
1002 を Solaris では
1003 .sp
1004     priocntl \-e \-c RT \-p 59 mkisofs \-R /master/tree
1005 .sp
1006 に、
1007 .B "UNIX International"
1008 互換のリアルタイムスケジューリングのないシステムでは
1009 .sp
1010     nice --18 mkisofs \-R /master/tree
1011 .sp
1012 に変更する。
1013 .PP
1014 Solaris では cdrecord は優先度 59 で実行されるので、
1015 mkisofs は優先度 58 以下で実行すべきである。
1016 他のシステムでは nice -18 以上で mkisofs で実行すべきである。
1017 .PP
1018 Sparcstation-2 で Yamaha CDR-400 を使って
1019 ディスク上にファイルシステムイメージを置かずに
1020 CD-ROM を作成するテストを行ってみたが、
1021 マシンに負荷がかかっていない場合でも
1022 4 倍速では動作しなかった。
1023 より高速なマシンでは、負荷がかかった場合でも 4 倍速で動作できるだろう。
1024 .PP
1025 .IR track01.cdaudio ,
1026 .IR track02.cdaudio ", ..."
1027 というファイルに各トラックのデータがある場合に、
1028 単純な CD-DA (オーディオ) を等速で記録するには:
1029 .PP
1030     cdrecord \-v speed=1 dev=2,0 -audio track*.cdaudio
1031 .PP
1032 上の例が 2 倍速でできるかをチェックするためには、
1033 dummy 書き込みオプションを使うこと:
1034 .PP
1035     cdrecord \-v \-dummy speed=2 dev=2,0 \-audio track*.cdaudio
1036 .PP
1037 最初のトラックは ISO 9660 ファイルシステム
1038 .IR cdimage.raw 、
1039 それ以外は
1040 .IR track01.cdaudio ,
1041 .IR track02.cdaudio ", ..."
1042 というオーディオトラック、というようなミックスモード CD を記録するには:
1043 .PP
1044     cdrecord \-v \-dummy dev=2,0 cdimage.raw \-audio track*.cdaudio
1045 .PP
1046 書き込みを始める前にトラックのサイズを知らせる必要がある
1047 ドライブを操作するには、最初に
1048 .PP
1049     mkisofs -R -q -print-size /master/tree
1050 .PP
1051 を実行し、次に
1052 .PP
1053     mkisofs -R /master/tree | cdrecord speed=2 dev=2,0 tsize=XXXs -
1054 .PP
1055 を実行する。
1056 ここで
1057 .I XXX
1058 は先に実行した mkisofs の出力で置き換える。
1059 .PP
1060 オーディオ CD を最も正確な方法で複製するには、
1061 最初に
1062 .PP
1063     cdda2wav -v255 -D2,0 -B -Owav
1064 .PP
1065 を実行し、次に
1066 .PP
1067     cdrecord -v dev=2,0 -dao -useinfo  *.wav
1068 .PP
1069 を実行する。
1070
1071 .SH 環境変数
1072 .TP
1073 CDR_DEVICE
1074 SCSI 転送ライブラリの open コールに適したデバイス識別子と、
1075 ファイル /etc/default/cdrecord にかかれたラベルを設定できる。
1076 .TP
1077 CDR_SPEED
1078 デフォルトの書き込みの速度を設定する
1079 .RB ( \-speed
1080 オプションを参照)。
1081 .TP
1082 CDR_FIFOSIZE
1083 FIFO のデフォルトサイズを設定する
1084 .RB ( fs=#
1085 オプションを参照)。
1086
1087 .SH ファイル
1088 .TP
1089 /etc/default/cdrecord
1090 デフォルトの値は、/etc/default/cdrecord にある以下のオプションで設定できる。
1091 例えば、
1092 .SM CDR_FIFOSIZE=8m
1093
1094 .SM CDR_SPEED=2
1095 のように設定できる。
1096 .RS
1097 .TP
1098 CDR_DEVICE
1099 SCSI 転送ライブラリの open コールに適したデバイス識別子と、
1100 ファイル /etc/default/cdrecord にかかれたラベルを設定できる。
1101 これによりシステム上の特定のドライブを識別できる。
1102 .TP
1103 CDR_SPEED
1104 デフォルトの書き込みの速度を設定する
1105 .RB ( \-speed
1106 オプションを参照)。
1107 .TP
1108 CDR_FIFOSIZE
1109 FIFO のデフォルトサイズを設定する
1110 .RB ( fs=#
1111 オプションを参照)。
1112 .TP
1113 その他のラベル
1114 システム上の特定のドライブを識別する。
1115 識別子は文字 ',', '/', '@', ':' を含んではならない。
1116 .sp
1117 ラベルに続く行には、タブで区切られたアイテムのリストが書かれる。
1118 今のところ、ドライブの SCSI ID・ドライブのデフォルトの速度・
1119 デフォルトの FIFO サイズ、という3 つのアイテムが認識される。
1120 .I speed
1121
1122 .I fifosize
1123 の値を -1 に設定すると、cdrecord はグローバルのデフォルト値を使う。
1124 典型的な例としては以下のようものである:
1125 .sp
1126 teac1= 0,5,0    4       8m
1127 .sp
1128 yamaha= 1,6,0   -1      -1
1129 .sp
1130 これは
1131 .B cdrecord
1132 に対して、
1133 .I teac1
1134 という名前のドライブが scsibus 0, target 5, lun 0 にあり、
1135 速度を 4 倍速、FIFO サイズを 8 MB にすることを指示する。
1136 2 番目のドライブは scsibus 1, target 6, lun 0 にあり、
1137 デフォルトの速度とデフォルトの FIFO サイズを使う。
1138 .RE
1139
1140 .SH 関連項目
1141 .BR cdda2wav (1),
1142 .BR readcd (1),
1143 .BR scg (7),
1144 .BR fbk (7),
1145 .BR mkisofs (8).
1146
1147 .SH 注意
1148 .PP
1149 Solaris において USCSI フォールバック SCSI 転送コードを使いたい場合は、
1150 ボリューム管理を停止する必要がある。
1151 ボリューム管理が動作していると、
1152 .B "cdrecord -scanbus
1153 すらも動作しない。
1154 .PP
1155 .B "Track At Once 
1156 モードで作られたディスクは、CD 製造業者によって
1157 大量生産される製品のマスタには向いていない。
1158 このようなディスクを記録するには
1159 .B "disk at once
1160 オプションを指定する必要がある。
1161 .B "Track At Once 
1162 で作られたディスクは、通常はどの CD プレーヤでも読めるが、
1163 古いオーディオ CD プレーヤのなかには
1164 オーディオトラックの間に 2 秒間のクリック音を出してしまうものもある。
1165 .PP
1166 トラックの最小サイズは 4 秒または 300 セクタである。
1167 これよりも小さいトラックを書き込んだ場合、
1168 CD レコーダがダミーブロックを追加する。
1169 これが SCSI エラーメッセージに現れたとしてもエラーではない。
1170 .PP
1171 .B cdrecord
1172 は、SparcStation 20/502 上のアップグレードされた Philips CDD-521 レコーダで
1173 等速と 2 倍速でテストして問題がなかった。
1174 もっと遅いコンピュータシステムでも動作するだろう。
1175 Philips/HP/Plasmon/Grundig の新しいドライブでも、
1176 Yamaha の CDR-100 と CDR-102 でも動作する。
1177 Plasmon RF-4100 でも動作するが、マルチセッションについてはテストしていない。
1178 アップグレードされていない Philips CDD-521 では動作しない。
1179 Sony CDU-924 をテストしたが、ハードウェアが XA-mode2 に対応していない。
1180 よって Sony 製ドライブでは適合した
1181 マルチセッションディスクを作成することはできない。
1182 Ricoh RO-1420C でも動作するが、
1183 speed=2 で使うと問題が発生することがあるようなので、
1184 このような場合には speed=0 を試してみること。
1185 .PP
1186 Yamaha CDR-400 や SCSI-3/mmc に適合した全ての新しいドライブは、
1187 シングルセッションとマルチセッションに対応している。
1188 .PP
1189 不明なシステム上で
1190 .B cdrecord
1191 を使う場合は、
1192 .B \-dummy
1193 オプションをオンにして、ドライブでサポートされている
1194 全ての速度について何回かテストすべきである。
1195 CD の書き込みはリアルタイムプロセスである。
1196 .B NFS
1197 は必要とされるデータ転送率を絶えず提供するわけではない。
1198 .B NFS
1199 でマウントされたファイルシステム上にある CD イメージを
1200 .B cdrecord 
1201 で使いたい場合は、fifo サイズが充分大きいこと確認すること。
1202 .B cdrecord 
1203 を SS20/502 において中間的な負荷状態で使用したことや、
1204 Sparcstation-2 においてかなりの負荷状態で 4 倍速で使用したこともあるが、
1205 CD を書き込むときはシステムの負荷を出来る限り軽くしておくことを勧める。
1206 読み込み元のディスクが原因でバッファアンダーランが起こっていないことを
1207 確認したいなら、コマンド
1208 .PP
1209 .B "    cdrecord -dummy dev=2,0 padsize=600m /dev/null
1210 .PP
1211 を実行して、全てをダミーデータから作ったディスクを作成すればよい。
1212 .B cdrecord
1213 は、
1214 .B /dev/scg?
1215 デバイスノードにアクセスして、
1216 プログラム自身をメモリ内にロックできるように、
1217 root で実行する必要がある。
1218 .PP
1219 システム上でユーザーが root になるのを許可したくない場合は、
1220 .B cdrecord
1221 を root に suid することで安全にインストールできる。
1222 これにより、root 権限を持たない全てのユーザーやユーザーのグループが
1223 .B cdrecord
1224 を使うことができる。
1225 この場合
1226 .B cdrecord 
1227 は、実際のユーザーが特定のファイルを読めるかを調べる。
1228 全てのユーザーに
1229 .B cdrecord
1230 を使う権限を与えたいならば以下を実行する:
1231 .PP
1232         chown root /usr/local/bin/cdrecord
1233 .br
1234         chmod 4711 /usr/local/bin/cdrecord
1235 .PP
1236 特定のユーザーのグループに
1237 cdrecord を使う権限を与えたいならば以下を実行する:
1238 .PP
1239         chown root /usr/local/bin/cdrecord
1240 .br
1241         chgrp cdburners /usr/local/bin/cdrecord
1242 .br
1243         chmod 4710 /usr/local/bin/cdrecord
1244 .PP
1245 そして、システムの
1246 .I cdburners
1247 グループに追加する。
1248 .PP
1249 ディスクの読み込み・書き出し・フォーマットを
1250 全てのユーザーに許可したい場合を除き、
1251 root 以外のユーザーに
1252 .I /dev/scg?
1253 への書き込みを許可してはならない。
1254 .PP
1255 CD レコーダや読み込み元のディスクが接続された SCSI バスに、
1256 切断や再接続に対応していない昔のディスクを接続するべきではない。
1257 .PP
1258 CD には 99 トラック以上は入らない。
1259 .PP
1260 オーディオトラックとデータトラックが両方入ったディスクを作成する場合は、
1261 データをトラック 1 に入れるべきである。
1262 そうでなければ CDplus ディスクを作成するべきである。
1263 CDplus は、最初のセッションがオーディオトラックで、
1264 以降のセッションがデータトラックになったマルチセッションディスクである。
1265 .PP
1266 多くの OS ではデータトラックが 1 つしか読み出せない。
1267 また読むためには特別のソフトが必要である。
1268 .PP
1269 HP 製 CD レコーダの SCSI コマンドセットについての
1270 詳しい情報は以下で入手できる。
1271 .PP
1272         http://www.hp.com/isgsupport/cdr/index.html
1273 .PP
1274 もっと詳しい情報や、現在対応していないCD レコーダの
1275 SCSI コマンドマニュアルがあったら、著者に連絡してください。
1276 .PP
1277 Philips CDD 521 にはファームウェアのバグがある。
1278 (アップグレードされたものにもある)。
1279 これらうちのいくつかは、デバイスの電気の周波数を
1280 ある固定のものにしなければならず、
1281 そうしない場合にはマシンをリブートしなければならない。
1282 .PP
1283 壊れた
1284 .B "Linux SCSI generic driver"
1285
1286 .B cdrecord
1287 を使う場合、
1288 .B cdrecord
1289 は scg ドライバの機能をエミュレートを試みるという対処療法を使う。
1290 不幸なことに、
1291 .B Linux
1292 の sg ドライバには以下のような酷いバグがある:
1293 .TP
1294 \(bu
1295 SCSI コマンドが全く送られていないかを調べることができない。
1296 .TP
1297 \(bu
1298 SCSI status バイトを取得できない。
1299 このため、
1300 .B cdrecord
1301 は失敗した SCSI コマンドをある状況下では報告できない。
1302 .TP
1303 \(bu
1304 転送時の実際の DMA カウントを取得できない。
1305 .B cdrecord
1306 は、DMA の残余カウントがあるかをユーザーに知らせることができない。
1307 .TP
1308 \(bu
1309 auto sense データのうち有効なバイト数を取得できない。
1310 .B cdrecord
1311 は、認識したデータをデバイスが全く転送していないかを
1312 ユーザーに知らせることができない。
1313 .TP
1314 \(bu
1315 auto request sense では非常に少ないデータしか取得できない
1316 (CCS/SCSI-2/SCSI-3 では 18 以上でなければならない)。
1317 .PP
1318 fifo 率の表示は、CD レコーダにデータブロックが書き込まれた直後に計算される。
1319 このため、fifo がストリーミングモードであるにもかかわらず、
1320 100% fifo fill になることはない。
1321
1322 .SH 返り値
1323 .PP
1324 以下のようなメッセージが表示されてから、
1325 9 秒間の間に ^C で
1326 .B cdrecord
1327 を中止できる。
1328 .PP
1329 Starting to write CD at speed %d in %s mode for %s session.
1330 .PP
1331 SCSI コマンドの典型的なエラーメッセージは以下のようなものである:
1332 .sp
1333 .RS
1334 .nf
1335 cdrecord: I/O error. test unit ready: scsi sendcmd: no error
1336 CDB:  00 20 00 00 00 00
1337 status: 0x2 (CHECK CONDITION)
1338 Sense Bytes: 70 00 05 00 00 00 00 0A 00 00 00 00 25 00 00 00 00 00
1339 Sense Key: 0x5 Illegal Request, Segment 0
1340 Sense Code: 0x25 Qual 0x00 (logical unit not supported) Fru 0x0
1341 Sense flags: Blk 0 (not valid)
1342 cmd finished after 0.002s timeout 40s
1343 .fi
1344 .sp
1345 .RE
1346 1 行目はコマンドの転送についての情報である。
1347 最初のコロンのあとの文字列は、
1348 カーネルの視点からみたシステムコールのエラーである。
1349 他の問題が起こらないときに、一般的なのは
1350 .B "I/O error
1351 である。
1352 次の文字列は失敗した SCSI コマンドの簡単な説明である。
1353 残りの部分は SCSI バス越しにコマンドを転送する際に
1354 問題が発生したことを示す。
1355 .B "fatal error
1356 はコマンドを転送できなかったことを示す
1357 (つまり、要求された SCSI アドレスにデバイスが存在しなかった)。
1358 .PP
1359 2 行目には失敗したコマンドの SCSI コマンドの
1360 ディスクリプターブロックが表示される。
1361 .PP
1362 3 行目には、コマンドの転送が成功した場合に、
1363 コマンドによって返される SCSI status コードについての情報が表示される。
1364 これは SCSI デバイスからのエラー情報である。
1365 .PP
1366 4 行目はコマンドの auto request sense 情報の 16 進ダンプである。
1367 .PP
1368 5 行目は (もし存在すれば) sense key のエラー文字列である。
1369 コマンドが
1370 .I copy
1371 の場合にのみ、セグメント番号が続く。
1372 エラーメッセージが現在のコマンドに直接関係していない場合、
1373 .I deferred error
1374 という文字列が表示される。
1375 .PP
1376 6 行目は sense code のエラー文字列である。
1377 存在する場合には sense qualifier も表示される。
1378 デバイスのタイプが既知の場合、
1379 sense data は
1380 .I scsierrs.c"
1381 にあるテーブルを用いてデコードされる。
1382 その文字列の後には field replaceable unit についてのエラー値が続く。
1383 .PP
1384 7 行目には、失敗したコマンドに関連したブロック番号と
1385 エラーフラグ文字列が表示される。
1386 ブロック番号は有効ではないかも知れない。
1387 .PP
1388 8 行目は、そのコマンドについて設定されたタイムアウトと、
1389 実際にコマンドが完了するまでにかかった時間が表示される。
1390 .PP
1391 以下のメッセージはエラーではない:
1392 ..sp
1393 .RS
1394 .nf
1395 Track 01: Total bytes read/written: 2048/2048 (1 sectors).
1396 cdrecord: I/O error. flush cache: scsi sendcmd: no error
1397 CDB:  35 00 00 00 00 00 00 00 00 00
1398 status: 0x2 (CHECK CONDITION)
1399 Sense Bytes: F0 00 05 80 00 00 27 0A 00 00 00 00 B5 00 00 00 00 00
1400 Sense Key: 0x5 Illegal Request, Segment 0
1401 Sense Code: 0xB5 Qual 0x00 (dummy data blocks added) Fru 0x0
1402 Sense flags: Blk -2147483609 (valid)
1403 cmd finished after 0.002s timeout 40s
1404 .fi
1405 .sp
1406 .RE
1407 これは単に、最小サイズより小さいトラックを
1408 300 セクタに拡張したことを知らせているだけである。
1409 .SH バグ
1410 .PP
1411 .B cdrecord
1412 には
1413 .B ls
1414 よりも多くのオプションがある。
1415 .PP
1416 現在のところ、
1417 .B cdrecord 
1418 は入力データがディスクに合わない場合に警告しか出さない。
1419 コマンドを中止しないと、予想できない結果になる。
1420 .PP
1421 オーディオトラックのインデックス番号を
1422 書き込むオプションが存在するべきである。
1423 .PP
1424 パワー不足の時に書き込まれたディスクを
1425 修復して使えるようにするオプションが存在するべきである。
1426
1427 .SH 謝辞
1428 .PP
1429 .TP 15
1430 Bill Swartz     (Bill_Swartz@twolf.com)
1431 .br
1432 TEAC ドライバのサポートに協力してくれた。
1433 .TP
1434 Aaron Newsome   (aaron.d.newsome@wdc.com)
1435 .br
1436 彼のドライブで Sony 製ドライブのサポートを開発させてくれた。
1437 .TP
1438 Eric Youngdale  (eric@andante.jic.com)
1439 .br
1440 mkisofs を提供してくれた。
1441 .TP
1442 Gadi Oxman      (gadio@netvision.net.il)
1443 .br
1444 ATAPI 標準規格についてのいろいろな情報をもらった。
1445 .TP
1446 Finn Arne Gangstad      (finnag@guardian.no)
1447 .br
1448 最初の FIFO 実装をしてくれた。
1449 .TP
1450 Dave Platt      (dplatt@feghoot.ml.org)
1451 .br
1452 実験的なパケット書き込みの作成、
1453 CD-RW を空にする機能の最初の実装、
1454 \&.wav ファイルの最初のデコーダの実装、
1455 cdrecord に関する有益な議論をしてくれた。
1456 .TP
1457 Chris P. Ross (cross@eng.us.uu.net)
1458 .br
1459 BSDI SCSI 転送を最初に実装してくれた。
1460 .TP
1461 Grant R. Guenther   (grant@torque.net)
1462 .br
1463 Linux におけるパラレルポート転送を最初に実装してくれた。
1464 .TP
1465 Kenneth D. Merry (ken@kdm.org)
1466 .br
1467 Michael Smith (msmith@freebsd.org) とともに、
1468 FreeBSD の CAM ポートを提供してくれた。
1469
1470 .SH メーリングリスト
1471 cdrecord の開発に積極的に参加したいなら、本文に
1472 .I subscribe
1473 と書いたメールを
1474 .nf
1475 .sp
1476         other-cdwrite-request@lists.debian.org
1477 .sp
1478 .fi
1479 へ送って、cdwriting メーリングリストに入ることができる。
1480 .nf
1481 .sp
1482         other-cdwrite@lists.debian.org
1483 .sp
1484 .fi
1485 がメーリングリストのアドレスである。
1486
1487 .SH 著者
1488 .nf
1489 J\*org Schilling
1490 Seestr. 110
1491 D-13353 Berlin
1492 Germany
1493 .fi
1494 .PP
1495 その他の情報は以下で入手できる。
1496 .br
1497 http://www.fokus.gmd.de/usr/schilling/cdrecord.html
1498 .PP
1499 サポートに関する質問は、
1500 .PP
1501 .B
1502 cdrecord-support@berlios.de
1503 .br
1504 または
1505 .B
1506 other-cdwrite@lists.debian.org
1507 .PP
1508 にメールを送ってください。
1509 .PP
1510 明らかなバグを見付けた場合は、
1511 .PP
1512 .B
1513 cdrecord-developers@berlios.de
1514 .br
1515 または
1516 .B
1517 schilling@fokus.gmd.de
1518 .PP
1519 にメールを送ってください。
1520 .PP
1521 メーリングリストを購読するには、
1522 .PP
1523 .B
1524 http://lists.berlios.de/mailman/listinfo/cdrecord-developers 
1525 .br
1526 または
1527 .B
1528 http://lists.berlios.de/mailman/listinfo/cdrecord-support 
1529 .PP
1530 を参照すること。