$ cdrecord -scanbus
Cdrecord 1.10 (i686-pc-linux-gnu) Copyright (C) 1995-2001 Jrg Schilling
Linux sg driver version: 3.1.24
Using libscg version 'schily-0.5'
0,0,0 0) 'TOSHIBA ' 'DVD-ROM SD-M1202' '1020' Removable CD-ROM
0,1,0 1) 'LITE-ON ' 'LTR-24102B ' '5S54' Removable CD-ROM
0,2,0 2) *
0,3,0 3) *
0,4,0 4) *
0,5,0 5) *
0,6,0 6) *
0,7,0 7) *
The first three numbers for each item refer to SCSI bus, device ID, and LUN (Logical Unit Number), respectively. (The fourth number is the device ID again.) cdrecord wants these three numbers. In this example, the CD recorder is 0,1,0. Anything on SCSI bus 0 can be shortened to 1,0, leaving off the first 0. This is a common convention. Additional buses, if any, must be specified -- no shortcuts.
Now write to disk:
$ cdrecord -v -eject speed=8 dev=0,1,0 test.iso
In this example:
* -v is verbose
* -eject ejects the disk when finished
* -speed specifies write speed (8)
* -dev is the device number (0,1,0) obtained from cdrecord -scanbus
* Last is the name of the image being burned (test.iso)
This is a simple, serviceable way to create disks for public distribution, as it creates a disk that can be read on any Windows or Linux system. mkisofs alone is good for creating .isos for download, and mkisofs is capable of creating filesystems for many platforms. Please see mkisofs man pages for more information.
On a fast machine with lots of memory, you can get away with doing low-CPU-intensive tasks during recording, but it is better to do nothing else during a burn. The laser is not capable of stopping and then picking up where it left off, so any interruptions are fatal.
cdrecord will try to run the recorder at its highest speed, so it is not necessary to specify a speed, but let experience be your guide. Specifying slower speeds is useful for correcting errors and buffer underruns. Newer drives with "burn-proof" technology (the opposite of what it's supposed to do; again, who comes up with these names?) are not plagued by buffer underruns as older drives are...