CD-Writing HOWTO --------------------------------------------------------------- Origin: Linux CD-Writing HOWTO http://linux.ru.net/book/html/CD-Writing-HOWTO.html http://linux.ru.net/book/html/CD-Writing-HOWTO.html ---------------------------------------------------------------
<truemper@guug.de>
<admapril@april.kiev.ua>
CD-ROM, . " " , . , . CD-writing HOWTO , , .
Copyright Winfried Trmper 1996,1997,1998,1999. All rights reserved.
, , , .
, ; , , , , , .
: .
CD-R FAQ - FAQ - (CD-R).
CD_writers CD-ROM, Linux CD-ROM HOWTO, Linux SCSI HOWTO Linux Kernel HOWTO.
CD-ROM Compact Disc Read Only Memory ( ), , ( - pits) . ( , ). ( ) , . CD-ROM - .
CD-R - CD-ROM recordable CD-ROM, " " ..., . () CD-R () " " . , , , - . CD-R. , CD-ROM.
CD-ROM rewritable (: CD-RW) , CD-R . , . , - " ". - , " " CD-RW-writers. , : , (-> - ), .
HOWTO CD-R CD-RW. , .
, , UNIX- , online http://www.guug.de:8080/cgi-bin/winni/lsc.pl.
, cdrecord:
Acer: CDRW 6206A
BTC: BCE 621E (IDE)
Compro: CW-7502, CW-7502B
Creative: RW 4224E
Dysan: CRW-1622
Elite: Elite b444.41
Grundig: CDR 100 IPW
Guillemot: Maxi CD-R 4X/8X
HP: SureStore 4020i, SureStore 6020i,
C4324, C4325
CD-Writer+ 7100, CD-Writer+ 7200i,
CD-Writer+ 8100i, CD-Writer+ 8110i,
Hi-Val: CDD 2242, CDD-3610,
JVC: XR-W2001, XR-W2010, XR-W2042, R-2626
Kodak: PCD 200, PCD 225, PCD 260, PCD 600
Matsushita: CW-7502
Memorex: CRW-620, CRW-1622
Microboards: PlayWrite 2000, PlayWrite 4000RW, PlayWrite 4001RW
MicroNet: MasterCD Plus 4x4, MasterCD Plus 4x6
Mitsubishi: CDRW-226
Mitsumi: CR-2401-TS, CR-2600 TE, CR-2801 TE, CR-4801 TE
Nomai: 680.RW
OTI: CDRW 965
Olympus: CDS 615E, CDS 620E
Optima: DisKovery 650 CD-R
OTI: CDRW 965
Panasonic: CW-7502, CW-7582
Philips: CDD-521/10, CDD-522
CDD-2000, CDD-2600, CDD-3600, CDD-3610
Omniwriter 26, Omniwriter 26A
Plasmon: CDR 480, CDR 4220, RF-4100, RF-4102, CDR 4400
Plextor: CDR PX-24 CS, PX-412 C, PX-R412 C
PX-R810Ti, PleXwriter 412C
Procom: PCDR 4
Ricoh: RO-1420C+, MP 1420C, MP 6200S, MP 6201S, MP 7040A
Sanyo: CRD-R24S
Smart and
Friendly: CD-RW226, CD-R1002, CD-R1002/PRO, CD-R1004,
CD-R2004, CD-R2006 PLUS, CD-R2006 PRO,
CD-R4000, CD-R4006, CD-R4012
Sony: CDU 920S, CDU 924, CDU 926S, CDU-928E,
CDU 948S, CDRX 100E
Taiyo Yuden: EW-50
TEAC: CD-R50S, CD-R55S, CDR-55S, CDR-56S-400
Traxdata: CRW 2260, CDR 4120, CDRW 4260,
Turtle Beach: 2040R
WPI (Wearnes): CDRW-622, CDR-632P
YAMAHA: CDR-100, CDR 102, CDR-200, CDR-200t, CDR-200tx
CDR-400, CDR-400c, CDR-400t, CDR-400tx, CDR-400Atx
CRW-2260, CRW-2260t,
CRW-4250tx, CRW-4260 t, CRW-4260 tx, CRW-4261,
CRW-4416 S
1: CD-writers Linux
, Linux, CD, CD-R Macintosh. , , Linux.
CD Linux :
cdwrite-2.1 cdrecord-1.6 cdrdao
--------------------------------------------------------------
IDE/ATAPI
CD-RW
AudioCD
Data CD-ROM
Multisession
TAO (Track at once)
DAO (Disk at once)
2:
cdwrite
- . cdrecord
, .. .
cdrdao - CD
( disk-at-once mode). -
(" ")
mkisofs mkhybrid
--------------------------------------------
ISO 9660
RockRidge
El Torito
HFS
Joliet
Multisession
3:
ISO9660, Extended-2 , - , . ISO9660 .
RockRidge , . , CD DOS Windows.
El Torito , CD. BIOS PC . , 1.44 CD-ROM . , .
HFS macintosh CD-ROM, HFS ( MacOs)
Joliet ( ) Windows (95, NT). DOS Windows 3.11
2.8 .
( ),
cdwrite-request@other.debian.org
, subscribe
.
http://www.guug.de/~winni/linux/.
Linux, cdrecord -scanbus
. -
Linux , .. - :
shell> cdrecord -scanbus
Cdrecord release 1.7a1 Copyright (C) 1995-1998 Jrg Schilling
scsibus0:
0) 'Quantum ' 'XP34300 ' 'F76D' Disk
1) 'SEAGATE ' 'ST11200N ' '8334' Disk
2) *
3) 'TOSHIBA ' 'MK537FB/ ' '6258' Disk
4) 'WANGTEK ' '5150ES SCSI-36 ' 'ESB6' Removable Tape
5) 'EXABYTE ' 'EXB-8500-85QUE ' '0428' Removable Tape
6) 'TOSHIBA ' 'XM-3401TASUNSLCD' '3593' Removable CD-ROM
7) *
scsibus1:
100) 'Quantum ' 'XP31070W ' 'L912' Disk
101) *
102) *
103) 'TEAC ' 'CD-R55S ' '1.0H' Removable CD-ROM
104) 'MATSHITA' 'CD-R CW-7502 ' '4.02' Removable CD-ROM
105) *
106) 'YAMAHA ' 'CDR400t ' '1.0d' Removable CD-ROM
107) *
1: SCSI-
Jrg Schilling CD-writers. SCSI , CD-ROM . R, -R, -RW.
Linux . , . Linux . : IDE, IDE , .
CD-writer-: SCSI, IDE/ATAPI . 4 Linux . - , . - ( ). - . SCSI, IDE PP (PP= )
Sect. Description Module SCSI IDE PP
------------------------------------------------------------
BLOCK Enhanced IDE/MFM/RLL... Y
BLOCK IDE/ATAPI CDROM ide-cd M
BLOCK SCSI hostadaptor emulation ide-scsi M
BLOCK Loopback device loop M M M
PARIDE Parallel port IDE device paride Y/M
PARIDE Parallel port ATAPI CD-ROMs M
PARIDE Parallel port generic ATAPI M
PARIDE (select a low-level driver) Y
SCSI SCSI support scsi_mod Y/M Y/M
SCSI SCSI CD-ROM support sr_mod Y/M Y/M
SCSI Enable vendor-specific Y Y
SCSI SCSI generic support sg Y/M Y/M
SCSI (select a low-level driver) Y
FS ISO 9660 CDROM filesystem iso9660 Y Y Y
FS Microsoft Joliet cdrom... joliet M M M
4:
Y , . M , , . Y/M ( ). , , , , ( ).
, SCSI, ATAPI, .
( : ), /proc/devices. , 'lsmod'. , 'modprobe -l'. , . , Kernel-HOWTO . Module-HOWTO.
, /etc/modules, (kerneld, kmod). Linux, .
- , .
CD-ROM, ISO9660. RockRidge. MS Joliet , c .
, . , . SCSI , , .
2.2.10, CONFIG_SCSI_MULTI_LUN ('probe for multiple luns') ide-scsi , ide-scsi .
2.2-. Linux. :
2.2 , (IDE SCSI) ATAPI . : 2.0 2.2.
2.2, IDE/ATAPI ignore= ide . : "modprobe ide-cd ignore=hdb", ATAPI-writer hdb ide-scsi hdb scsi-( sr0). ( 2.0)
2.0.31 CD-ROM. 2.0.37.
2.0.36 (IDE SCSI) ATAPI . , "SCSI emulation" (/ ). , CD-writer /dev/hdb, hdb=ide-scsi
image=/boot/zImage-2.0.36
label=Linux
read-only
append="hdb=ide-scsi"
2: lilo (/etc/lilo.conf)
linux "Linux 2.0.36" {
image=/boot/zImage-2.0.36
cmdline= root=/dev/hda5 readonly hdb=ide-scsi
}
3: chos (/etc/chos.conf)
, . .
{ devfs . devfs, .}
/dev
-
, , . (. 3.5).
ls
- loop0
-loop7
:
shell> cd /dev
shell> ls loop*
loop0 loop1 loop2 loop3 loop4 loop5 loop6 loop7
:
, , /dev/MAKEDEV
-:
shell> cd /dev/
shell> modprobe loop
shell> ./MAKEDEV loop
:
, loop
- .
loop- (sg*, pg*, hd*, ...)
.
ATAPI "SCSI- IDE ". , IDE/ATAPI SCSI ( ) SCSI .
Linux , IDE-writer , SCSI , "SCSI (hostadaptor) emulation". .. ide-scsi , , SCSI-writer.
, writer BIOS . , ( ).
SCSI , . http://www.torque.net/parport/parscsi.html, .
/dev/sd* /dev/sr* SCSI SCSI CD-ROM- - . . CD-writer- , . sd* sr* , SCSI SCSI . SCSI- , - .
, /dev ( )
shell> cd /dev
shell> ls sg*
sg0 sg1 sg2 sg3 sg4 sg5 sg6 sg7
, /dev/MAKEDEV
:
shell> cd /dev/
shell> ./MAKEDEV sg
Linux /dev/MAKEDEV, :
for i in 0 1 2 3 4 5 6 7
do
mknod /dev/sg$i c 21 $i
done
, . , http://www.torque.net/parport/paride.html /usr/src/linux/Documentation/paride.txt.
CD-ROM- http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilling/private/cdb.html.
, CD-R: ( CD-ROM )
ftp://tsx-11.mit.edu/pub/linux/packages/mkisofs/ (mkisofs)ftp://ftp.ge.ucl.ac.uk/pub/mkhfs (mkhybrid)
CD-R, :
ftp://ftp.fokus.gmd.de/pub/unix/cdrecord/ (cdrecord)http://www.ping.de/sites/daneb/cdrdao.html (cdrdao)
() mkisofs
, ,
1.5 cdwrite
. cdrecord, .
, , mkisofs cdrecord
( cdrecord).
Linux. , , .
X-CD-Roast - CD Linux.
, cdrecord
mkisofs
,
.
http://www.fh-muenchen.de/home/ze/rz/services/projects/xcdroast/e_overview.html
BurnIT - JAVA cdrecord, mkisofs cdda2wav-0.95, CD UNIX .
http://sunsite.auc.dk/BurnIT/
XDaodio
cdrdao. - 1:1 CD.
http://www.lrz-muenchen.de/~MarkusTschan/
"If to smoke you turn I shall not cease to fiddle while you burn." ( -CD AD64. .)
CD Linux 2 :
cdrecord
data-CD audio-CD .
, . , , CD .
, CD ISO-9660 ( ). 620 650 CD-R.
( , CD) (DOS : ). , .
, , . CD , , - .: , .. , .
CD.
mkisofs
. :
mkisofs -r -o cd_image private_collection/
`---------' `-----------------'
| |
'-r ' CD Rock Ridge.
, , ,
(: '-r ' private_collection
!).
mkisofs
8.3, DOS,
. ( 8.3 ),
, STDERR
( ). : Linux 8.3 , Linux RockRidge
, (, , ..).
, mkisofs CD. :
mkisofs
CDCD-R .
. , , (- ), Linux- (: ). , - , CD- - , CD. 650 ( , ).
Linux , . CD CD. , , , , .
cd_image
/cdrom
,
mount -t iso9660 -o ro,loop=/dev/loop0 cd_image /cdrom
/cdrom
- , CD.
CD- umount /cdrom
(:
'-K ' mkisofs, /cdrom . ,
, 2.0.36. -pad mkisofs audio-CD -pad mkisofs
, , ).
:
mount
.mount
, - , Linux-., HOWTO. . Linux
mount
: . Linux : .Linux, HOWTO .
. ,
cdrecord -scanbus
SCSI- CD-writer. cdrecord- HOWTO ( SCSI ).
, , , CD , . .. CD , CD . . : 650, 650000 ( 1 ). . , , web .
, , CD, . CD, .
, , SCSI-id CD SCSI , ASR-FAQ ( alt.sysadmin.recovery) : (. .: :)
shell> SCSI_BUS=0 # 1 "scsibus0:"
shell> SCSI_ID=6 # 1 "TOSHIBA XM-3401"
shell> SCSI_LUN=0
shell> cdrecord -v speed=2 dev=$SCSI_BUS,$SCSI_ID,$SCSI_LUN \
-data cd_image
# , , :
shell> cdrecord -v speed=2 dev=0,6,0 -data cd_image
, :SCSI_BUS, SCSI_ID, SCSI_LUN. -data non-mandatory , audio-CD.
cdrecord CD-RW, "blank=..." . man- CD-RW.
, , , 400 , mkisofs cdrecord:
shell> IMG_SIZE=`mkisofs -R -q -print-size private_collection/ 2>&1 \
| sed -e "s/.* = //"`
shell> echo $IMG_SIZE
shell> [ "0$IMG_SIZE" -ne 0 ] && mkisofs -r private_collection/ \
|cdrecord speed=2 dev=0,6,0
tsize=${IMG_SIZE}s -data -
# s --^ ^-- STDIN
( mkisofs cdrecord). writer , . tsize- cdrecord ( IMG_SIZE). - mkisofs cdrecord, .
audio-CD . : audio-CD , . .. 10 CD, . - ISO9660 ( ), "16 PCM 44100 / (44.1)".
- sox. :
shell> sox killing-my-software.wav killing-my-software.cdr
killing-my-software WAV- CDR-. . man- sox , sox. .. , cdrecord WAV AU. , .wav .au ( 16 44.1 ), .
cdrecord audio-, -audio. CD ( ). , :
shell> cdrecord -v speed=2 dev=0,6,0 -audio track1.cdr track2.cdr...
shell> cdrecord -v speed=2 dev=0,6,0 -audio track1.wav track2.wav...
shell> cdrecord -v speed=2 dev=0,6,0 -audio track1.au track2.au...
MPEG-3 , "mpg123 -s track1.mp3>track.cdr". (: , -swap cdrecord). "8bz-mp3" WAV ( cdda2wav CD MP# 8Hz-mp3). CD_R MP3 , .
for I in *.mp3
do
mpg123 -s $I | cdrecord -audio -pad -swab -nofix -
done
cdrecord -fix
, "speed=1" ( cdrecord). "speed=4", MP3 . mpg123 ! , -dummy ( ). audio-CD, .
, disk-at-once (DAO) track-at-once (TAO) . DAO cdrdao. .
read-cd, 1:1 audio-CD.
. () -data -audio. :
cdrecord -v dev=0,6,0 -data cd_image -audio track*.cdr
, " ". , , , CD-R .