Previous Next Contents

7. CD ROMs

This section gives information that is specific to cdrom drives.

7.1 Supported and Unsupported Hardware

SCSI CDs with a block size of 512 or 2048 bytes should work. Other block sizes will not work.

7.2 Common Problems

Unable to mount cdrom

The correct syntax to mount an ISO-9660 CDROM is

mount -t iso9660 /dev/sr0 /mount_point -o ro

Note that for this to work, you must have the kernel configured with support for SCSI, your host adapter, the SCSI CDROM driver, and the iso9660 filesystem.

Note that as of Linux 1.1.32, read-only devices such as CDROMs CANNOT be mounted with the default read/write options.

Unable to eject cdrom

Linux attempts to lock the drive door when a piece of media is mounted to prevent filesystem corruption due to an inadvertent media change.

Unable to play audio

The programs Workman or xcdplayer will do this for you.

Workman or Xcdplayer do not work

The functions to control audio functions are part of the SCSI-II command set, so any drive that is not SCSI-II will probably not work here. Also, many SCSI-I and some SCSI-II CDROM drives use a proprietary command set for accessing audio functions instead of the SCSI-II command set. For NEC drives, there is a version of xcdplayer specially adapted to use this command set floating around - try looking on tsx-11.mit.edu in pub/linux/BETA/cdrom.

These programs may work with some of the non-SCSI cdrom drives if the driver implements the same ioctls as the scsi drivers.

Additional drives on CD ROM changers do not work

Most CD changers assign each disc to a logical unit. Insure that you have special files made for each platter (see Device Files) and see LUNS other than 0 don't work.

7.3 Device Files

SCSI CD ROMs use major 11.

Minors are allocated dynamically (See Disks, Device Files for an example) with the first CDROM found being minor 0, the second minor 1, etc.

The standard naming convention is

/dev/sr{digit}, although some distributions have used /dev/scd{digit}, with examples being

/dev/sr0        /dev/scd0
/dev/sr1        /dev/scd1


Previous Next Contents