2147 lines
102 KiB
Plaintext
2147 lines
102 KiB
Plaintext
The Linux CD-ROM HOWTO
|
||
|
||
Jeff Tranter
|
||
|
||
tranter@pobox.com
|
||
|
||
v1.17, 18 July 2001
|
||
Revision History
|
||
Revision 1.17 2001-07-18 Revised by: jjt
|
||
Merged in some questions from the no longer maintained ATAPI/IDE CD-ROM FAQ
|
||
by Mathew Kirsch. Added note on the Red Hat 7.1 DMA issue.
|
||
Revision 1.16 2001-07-16 Revised by: jjt
|
||
Relicensed under the GFDL.
|
||
Revision 1.15 2001-05-11 Revised by: jjt
|
||
|
||
|
||
This document describes how to install, configure, and use CD-ROM drives
|
||
under Linux. It lists the supported hardware and answers a number of
|
||
frequently asked questions. The intent is to bring new users up to speed
|
||
quickly and reduce the amount of traffic in the Usenet news groups and
|
||
mailing lists.
|
||
|
||
-----------------------------------------------------------------------------
|
||
Table of Contents
|
||
1. Introduction
|
||
1.1. Acknowledgments
|
||
1.2. New Versions Of This Document
|
||
1.3. Feedback
|
||
1.4. Distribution Policy
|
||
|
||
|
||
2. CD-ROM Technology
|
||
3. Supported Hardware
|
||
3.1. ATAPI CD-ROM Drives
|
||
3.2. SCSI CD-ROM Drives
|
||
3.3. Proprietary CD-ROM Drives
|
||
3.4. Parallel Port Drives
|
||
3.5. PCMCIA Drives
|
||
3.6. USB CD-ROM Drives
|
||
|
||
|
||
4. Installation
|
||
4.1. Installing the Hardware
|
||
4.2. Configuring and Building the Kernel
|
||
4.3. Creating Device Files and Setting Boot Time Parameters
|
||
4.4. Booting the Linux Kernel
|
||
4.5. Mounting, Unmounting, and Ejecting Devices
|
||
4.6. Troubleshooting
|
||
|
||
|
||
5. Applications
|
||
5.1. Audio CD Players
|
||
5.2. PhotoCD
|
||
5.3. Mkisofs
|
||
5.4. ISO-9660 Utilities
|
||
|
||
|
||
6. Answers to Frequently Asked Questions
|
||
6.1. How can a non-root user mount and unmount discs?
|
||
6.2. Why do I get device is busy when unmounting a CD-ROM?
|
||
6.3. How do I export a CD-ROM to other hosts over NFS?
|
||
6.4. Can I boot Linux from a CD-ROM?
|
||
6.5. How can I read digital data from audio CDs?
|
||
6.6. Why doesn't the find command work properly?
|
||
6.7. Does Linux support any recordable CD-ROM drives?
|
||
6.8. Why do I get mount: Read-only file system when mounting a CD-ROM?
|
||
6.9. Why does the disc tray open when I shut down the system?
|
||
6.10. I have a "special" CD that can't be mounted
|
||
6.11. Do multi-platter CD-ROM drives work with Linux?
|
||
6.12. I get "/cdrom: Permission denied" errors
|
||
6.13. How do I interpret IDE CD kernel error messages?
|
||
6.14. How can I tell what speed CD-ROM I have?
|
||
6.15. My CD-ROM stopped working after Linux was installed
|
||
6.16. There are "hidden" files on a CD which I can't read
|
||
6.17. Where is the CD-ROM API documented?
|
||
6.18. Why don't I see long filenames on this Windows CD-ROM?
|
||
6.19. Is Microsoft's Joliet filesystem supported?
|
||
6.20. Does Linux support "enhanced" CDs?
|
||
6.21. Does Linux support DVD-ROM?
|
||
6.22. Does Linux support CD-RW?
|
||
6.23. How do I mount a multi-session disc?
|
||
6.24. How do I read a CD volume label?
|
||
6.25. My IDE CD-R or CD-RW drive is not working with Linux
|
||
6.26. Is the insert your brand/model here IDE CD-ROM drive supported?
|
||
6.27. I can't seem to find a driver for my IDE drive in the kernel
|
||
source?
|
||
6.28. I'm having problems with my CD-ROM on Red Hat 7.1
|
||
|
||
|
||
7. References
|
||
|
||
1. Introduction
|
||
|
||
This is the Linux CD-ROM HOWTO. It is intended as a quick reference covering
|
||
everything you need to know to install and configure CD-ROM hardware under
|
||
Linux. Frequently asked questions related to CD-ROM are answered, and
|
||
references are given to other sources of information related to CD-ROM
|
||
applications and technology.
|
||
-----------------------------------------------------------------------------
|
||
|
||
1.1. Acknowledgments
|
||
|
||
Much of this information came from the documentation and source files
|
||
provided with the Linux kernel, the Internet [news:alt.cd-rom] alt.cdrom
|
||
newsgroup FAQ, and input from Linux users.
|
||
|
||
Thanks to the [http://www.docbook.org] DocBook tools, this HOWTO is available
|
||
in several formats, all generated from a common source file.
|
||
-----------------------------------------------------------------------------
|
||
|
||
1.2. New Versions Of This Document
|
||
|
||
New versions of this document will be periodically posted to the [news:
|
||
comp.os.linux.answers] comp.os.linux.answers newsgroup. Hypertext versions of
|
||
this and other Linux HOWTOs are available on many world-wide web sites,
|
||
including [http://www.linuxdoc.org/] http://www.linuxdoc.org. Most Linux
|
||
CD-ROM distributions include the HOWTOs, often under the /usr/doc directory,
|
||
and you can also buy printed copies from several vendors. Sometimes the
|
||
HOWTOs available from CD-ROM vendors, ftp sites, and printed format are out
|
||
of date. If the date on this HOWTO is more than six months in the past, then
|
||
a newer copy is probably available on the Internet.
|
||
|
||
Please note that, due to the dynamic nature of the Internet, all web and ftp
|
||
links listed in this document are subject to change.
|
||
|
||
Translations of this document are available in several languages:
|
||
|
||
Chinese: [http://www.linux.org.tw/CLDP/CDROM-HOWTO.html] http://
|
||
www.linux.org.tw/CLDP/CDROM-HOWTO.html
|
||
|
||
French: [http://www.freenix.org/unix/linux/HOWTO/] http://www.freenix.org/
|
||
unix/linux/HOWTO/
|
||
|
||
German: [http://www.tu-harburg.de/dlhp/HOWTO/DE-CDROM-HOWTO.html] http://
|
||
www.tu-harburg.de/dlhp/HOWTO/DE-CDROM-HOWTO.html
|
||
|
||
Korean: [http://kldp.org/HOWTO/html/CDROM/CDROM-HOWTO.html] http://kldp.org/
|
||
HOWTO/html/CDROM/CDROM-HOWTO.html
|
||
|
||
Japanese: [http://www.linux.or.jp/JF/JFdocs/CDROM-HOWTO.html] http://
|
||
www.linux.or.jp/JF/JFdocs/CDROM-HOWTO.html
|
||
|
||
Polish: [http://www.jtz.org.pl/Html/CDROM-HOWTO.pl.html] http://
|
||
www.jtz.org.pl/Html/CDROM-HOWTO.pl.html
|
||
|
||
Spanish: [ftp://ftp.insflug.org/es] ftp://ftp.insflug.org/es
|
||
|
||
Swedish: [ftp://ftp.hig.se/pub/linux/swe-doc/] ftp://ftp.hig.se/pub/linux/
|
||
swe-doc/
|
||
|
||
Most translations of this and other Linux HOWTOs can also be found at [http:/
|
||
/www.ibiblio.org/pub/Linux/docs/HOWTO/translations/] http://www.ibiblio.org/
|
||
pub/Linux/docs/HOWTO/translations/. If you make a translation of this
|
||
document into another language, let me know and I'll include a reference to
|
||
it here.
|
||
-----------------------------------------------------------------------------
|
||
|
||
1.3. Feedback
|
||
|
||
I rely on you, the reader, to make this HOWTO useful. If you have any
|
||
suggestions, corrections, or comments, please send them to me, [mailto:
|
||
tranter@pobox.com] tranter@pobox.com, and I will try to incorporate them in
|
||
the next revision.
|
||
|
||
I am also willing to answer general questions on CD-ROM under Linux, as best
|
||
I can. Before doing so, please read all of the information in this HOWTO, and
|
||
then send me detailed information about the problem. Please do not ask me
|
||
about using CD-ROM drives under operating systems other than Linux.
|
||
|
||
If you publish this document on a CD-ROM or in hardcopy form, a complimentary
|
||
copy would be appreciated; mail me for my postal address. Also consider
|
||
making a donation to the Linux Documentation Project to help support free
|
||
documentation for Linux. Contact the LDP at [mailto:feedback@linuxdoc.org]
|
||
feedback@linuxdoc.org for more information.
|
||
-----------------------------------------------------------------------------
|
||
|
||
1.4. Distribution Policy
|
||
|
||
Copyright (c) 1995-2001 by Jeff Tranter. Permission is granted to copy,
|
||
distribute and/or modify this document under the terms of the GNU Free
|
||
Documentation License, Version 1.1 or any later version published by the Free
|
||
Software Foundation; with no Invariant Sections, with no Front-Cover Texts,
|
||
and with no Back-Cover Texts. A copy of the license is available at [http://
|
||
www.gnu.org/copyleft/fdl.html] http://www.gnu.org/copyleft/fdl.html
|
||
-----------------------------------------------------------------------------
|
||
|
||
2. CD-ROM Technology
|
||
|
||
<EFBFBD> "CD-ROM is read-only memory, and audio compact disc system <20>
|
||
is available as package-media of digital data for those
|
||
purpose. For playing audio CD, please insert Head-phone
|
||
jack."
|
||
--from a CD-ROM instruction manual <20>
|
||
|
||
Don't Panic! The world of CD-ROM technology is not as confusing as your
|
||
instruction manual.
|
||
|
||
CD-ROM stands for Compact Disc Read-Only Memory, a mass storage medium
|
||
utilizing an optical laser to read microscopic pits on the aluminized layer
|
||
of a polycarbonate disc. The same format is used for audio Compact Discs.
|
||
Because of its high storage capacity, reliability, and low cost, CD-ROM has
|
||
become an increasingly popular storage media.
|
||
|
||
The storage capacity of a CD-ROM disc is approximately 650 megabytes,
|
||
equivalent to over 500 high density 3.5" floppy disks or roughly 250,000
|
||
typed pages.
|
||
|
||
First generation drives (known as single speed), provided a transfer rate of
|
||
approximately 150 kilobytes per second. Hardware manufacturers then
|
||
introduced double speed (300 kB/sec), quad speed (600 kB/sec), and higher.
|
||
Current drives operate at up to 40 times speed, although the maximum rate is
|
||
only achievable over certain portions of the disc surface.
|
||
|
||
Most CD-ROM drives use either the Small Computer Systems Interface (SCSI),
|
||
ATAPI enhanced IDE interface, or a vendor proprietary interface. They also
|
||
typically support playing audio CDs via an external headphone jack or line
|
||
level output. Most drives also allow reading the frames of data from audio
|
||
CDs in digital form.
|
||
|
||
CD-ROMs are usually formatted with an ISO-9660 (formerly called High Sierra)
|
||
file system. This format restricts filenames to the MS-DOS style (8+3
|
||
characters). The Rock Ridge Extensions use undefined fields in the ISO-9660
|
||
standard to support longer filenames and additional Unix style information
|
||
(e.g. file ownership, symbolic links, etc.). Microsoft has defined a
|
||
proprietary ISO file system extension called Joliet which supports long
|
||
filenames using the 16-bit UNICODE character encoding.
|
||
|
||
PhotoCD is a standard developed by Kodak for storing photographic images as
|
||
digital data on a CD-ROM. With appropriate software, you can view the images
|
||
on a computer, manipulate them, or send them to a printer. Information can be
|
||
added to a PhotoCD at a later date; this is known as multi-session
|
||
capability.
|
||
|
||
CD recordable (CD-R) drives allow writing onto a special "gold" CD which can
|
||
then be read by any CD-ROM drive. Data can only be written once, although
|
||
using multi-session new data can be appended to a disc.
|
||
|
||
CD-RW (rewritable) drives can be erased and rewritten with new data. They use
|
||
special discs which can be read by most recent CD-ROM drives (but not older
|
||
ones or most audio CD players).
|
||
|
||
DVD-ROM expands the storage of a CD to as much as 17 gigabytes. They are
|
||
commonly used as a medium for distributing full length motion pictures
|
||
encoded using the MPEG-2 format. The MPEG video decoding is performed using
|
||
specialized decoder software and/or hardware. DVD-RAM is a writable version
|
||
of DVD.
|
||
-----------------------------------------------------------------------------
|
||
|
||
3. Supported Hardware
|
||
|
||
This section lists the CD-ROM drivers and interfaces that are currently
|
||
supported under Linux. The information here is based on the latest stable
|
||
Linux kernel, which at time of writing was version 2.4.4.
|
||
|
||
This information is valid for Linux on the Intel x86 platform. Much of it is
|
||
applicable to Linux on other processor architectures as well.
|
||
-----------------------------------------------------------------------------
|
||
|
||
3.1. ATAPI CD-ROM Drives
|
||
|
||
ATAPI (ATA Packet Interface) is a protocol for controlling mass storage
|
||
devices. It builds on the ATA (AT Attachment) interface, the official ANSI
|
||
standard name for the IDE interface developed for hard disk drives. ATAPI is
|
||
commonly used for hard disks, CD-ROM drives, tape drives, and other devices.
|
||
Currently the most popular type of interface, it offers most of the
|
||
functionality of SCSI, without the need for an expensive controller or
|
||
cables.
|
||
|
||
The Linux kernel has a device driver that should work with any ATAPI
|
||
compliant CD-ROM drive. Vendors shipping compatible drives include Aztech,
|
||
Mitsumi, NEC, Sony, Creative Labs, and Vertos. If you have recently purchased
|
||
a CD-ROM drive, especially if it is quad speed or faster, it is almost
|
||
guaranteed to be IDE/ATAPI.
|
||
|
||
Linux also has an IDE SCSI emulation kernel driver that makes an IDE/ATAPI
|
||
device appear in software to be a SCSI device, allowing the use of a SCSI
|
||
device driver instead of the native ATAPI driver. This is useful if you have
|
||
an ATAPI device for which no native driver has been written (for example, an
|
||
ATAPI PD-CD or CDR drive); you can then use this emulation together with an
|
||
appropriate SCSI device driver.
|
||
-----------------------------------------------------------------------------
|
||
|
||
3.2. SCSI CD-ROM Drives
|
||
|
||
SCSI (Small Computer Systems Interface) is a popular format for CD-ROM
|
||
drives. Its chief advantages are a reasonably fast transfer rate,
|
||
multi-device capability, and support on a variety of computer platforms. Some
|
||
disadvantages of SCSI are the need for a relatively expensive controller card
|
||
and cables.
|
||
|
||
Any SCSI CD-ROM drive with a block size of 512 or 2048 bytes should work
|
||
under Linux; this includes the vast majority of CD-ROM drives on the market.
|
||
|
||
You will also need a supported SCSI controller card; see the [http://
|
||
www.ibiblio.org/pub/Linux/docs/HOWTO/unmaintained/SCSI-HOWTO] Linux SCSI
|
||
HOWTO for more information on interface hardware.
|
||
|
||
Note that some older CD-ROM drives use a proprietary controller with a
|
||
modified interface that is not fully SCSI compatible (e.g. it may not support
|
||
adding other SCSI devices on the bus). These will most likely not work under
|
||
Linux.
|
||
-----------------------------------------------------------------------------
|
||
|
||
3.3. Proprietary CD-ROM Drives
|
||
|
||
Several CD-ROM drives using proprietary interfaces are available; the
|
||
interface is often provided on a sound card. Simple interface cards
|
||
equivalent to that provided on the sound card are also available. These
|
||
drives generally tend to be lower in cost and smaller than SCSI drives. Their
|
||
disadvantages are the lack of standardization and expandability.
|
||
|
||
Note that proprietary interfaces are sometimes erroneously referred to as IDE
|
||
interfaces, because like IDE hard disks, they use a simple interface based on
|
||
the PC/AT bus. To add to the confusion, some vendors, most notably Creative
|
||
Labs, have shipped many different types of CD-ROM drives and have offered
|
||
proprietary, SCSI, and ATAPI interfaces on their sound cards.
|
||
|
||
The table below lists the proprietary CD-ROM drives that are known to be
|
||
supported under Linux. Drivers for additional devices may be available in the
|
||
latest development kernels or as kernel patches. The latter can most often be
|
||
found at [ftp://www.ibiblio.org/pub/Linux/kernel/patches/cdrom/] ftp://
|
||
www.ibiblio.org/pub/Linux/kernel/patches/cdrom/. Also check the documentation
|
||
files included with the kernel distribution, usually installed in /usr/src/
|
||
linux/Documentation/cdrom, for the latest information.
|
||
|
||
|
||
+--------------+--------------+-------------+---------+
|
||
|Vendor |Model |Kernel Driver|Notes |
|
||
+--------------+--------------+-------------+---------+
|
||
|Panasonic |CR-521 |sbpcd |Note 1 |
|
||
+--------------+--------------+-------------+---------+
|
||
|Panasonic |CR-522 |sbpcd |Note 1 |
|
||
+--------------+--------------+-------------+---------+
|
||
|Panasonic |CR-523 |sbpcd |Note 1 |
|
||
+--------------+--------------+-------------+---------+
|
||
|Panasonic |CR-562 |sbpcd |Note 1 |
|
||
+--------------+--------------+-------------+---------+
|
||
|Panasonic |CR-563 |sbpcd |Note 1 |
|
||
+--------------+--------------+-------------+---------+
|
||
|Creative Labs |CD-200 |sbpcd |<7C> |
|
||
+--------------+--------------+-------------+---------+
|
||
|IBM |External ISA |sbpcd |Note 2 |
|
||
+--------------+--------------+-------------+---------+
|
||
|Longshine |LCS-7260 |sbpcd |<7C> |
|
||
+--------------+--------------+-------------+---------+
|
||
|Teac |CD-55A |sbpcd |<7C> |
|
||
+--------------+--------------+-------------+---------+
|
||
|Sony |CDU-31A |cdu31a |<7C> |
|
||
+--------------+--------------+-------------+---------+
|
||
|Sony |CDU-33A |cdu31a |<7C> |
|
||
+--------------+--------------+-------------+---------+
|
||
|Sony |CDU-535 |sonycd535 |Note 3 |
|
||
+--------------+--------------+-------------+---------+
|
||
|Sony |CDU-531 |sonycd535 |<7C> |
|
||
+--------------+--------------+-------------+---------+
|
||
|Aztech |CDA268-01A |aztcd |Note 4 |
|
||
+--------------+--------------+-------------+---------+
|
||
|Orchid |CDS-3110 |aztcd |<7C> |
|
||
+--------------+--------------+-------------+---------+
|
||
|Okano/Wearnes |CDD110 |aztcd |<7C> |
|
||
+--------------+--------------+-------------+---------+
|
||
|Conrad |TXC |aztcd |<7C> |
|
||
+--------------+--------------+-------------+---------+
|
||
|CyCDROM |CR520ie |aztcd |<7C> |
|
||
+--------------+--------------+-------------+---------+
|
||
|CyCDROM |CR940ie |aztcd |<7C> |
|
||
+--------------+--------------+-------------+---------+
|
||
|GoldStar |R420 |gscd |Note 5 |
|
||
+--------------+--------------+-------------+---------+
|
||
|Philips/LMS |CM206 |cm206 |Note 6 |
|
||
+--------------+--------------+-------------+---------+
|
||
|Mitsumi |CRMC LU005S |mcd/mcdx |Note 7, 8|
|
||
+--------------+--------------+-------------+---------+
|
||
|Mitsumi |FX001 |mcd/mcdx |Note 7, 8|
|
||
+--------------+--------------+-------------+---------+
|
||
|Optics Storage|Dolphin 8000AT|optcd |<7C> |
|
||
+--------------+--------------+-------------+---------+
|
||
|Lasermate |CR328A |optcd |<7C> |
|
||
+--------------+--------------+-------------+---------+
|
||
|Sanyo |H94A |sjcd |<7C> |
|
||
+--------------+--------------+-------------+---------+
|
||
|various |various |isp16 |Note 9 |
|
||
+--------------+--------------+-------------+---------+
|
||
|
||
Notes:
|
||
|
||
1. These drives may be sold under the names Creative Labs, Panasonic,
|
||
Matsushita, or Kotobuki.
|
||
|
||
2. This drive is the same as a Panasonic CR-562.
|
||
|
||
3. May also be sold under the Procomm name.
|
||
|
||
4. This driver is for the CDA268-01A only. Other models, including the
|
||
CDA268-03I and CDA269-031SE are not proprietary and should use the IDECD
|
||
(ATAPI) kernel driver.
|
||
|
||
5. May also be sold as part of a Reveal Multimedia Kit.
|
||
|
||
6. The Philips CM205 is not supported by this driver, but there is a
|
||
separate alpha release driver available from ftp://www.ibiblio.org in /
|
||
pub/Linux/kernel/patches/cdrom/lmscd0.4.tar.gz
|
||
|
||
7. May also be sold under the Radio Shack name.
|
||
|
||
8. There are two drivers available. "mcd" is the original one, and "mcdx" is
|
||
a newer driver with more features (XA and multi-session support).
|
||
|
||
9. This driver works with CD-ROM drives that are attached to the interface
|
||
on an ISP16, MAD16 or Mozart sound card.
|
||
|
||
|
||
|
||
|
||
If a drive listed here is not supported by your kernel, you probably need to
|
||
upgrade to a newer version.
|
||
|
||
If your drive is not one of the models listed here, particularly if it was
|
||
bought recently and is quad speed or faster, it probably uses the IDE/ATAPI
|
||
interface listed in a previous section. The single most common error among
|
||
Linux CD-ROM users is to assume that any drive connected to a SoundBlaster
|
||
card should use the SBPCD driver. Creative Labs and most other vendors are no
|
||
longer selling proprietary interface drives, they are following the standard
|
||
ATAPI/IDE interface.
|
||
-----------------------------------------------------------------------------
|
||
|
||
3.4. Parallel Port Drives
|
||
|
||
There are external storage devices, including CD-ROM drives, that attach to
|
||
the parallel port of personal computers. In many cases the devices internally
|
||
use an IDE interface in conjunction with an adaptor which interfaces the
|
||
internal IDE bus to the PC parallel port.
|
||
|
||
Linux has a parallel port IDE driver which supports most parallel port
|
||
devices. At the time of writing it supported devices from the following
|
||
vendors (as well as most no-name and clone drives compatible with these):
|
||
ATEN, Avatar, DataStor, Fidelity International Technology, Freecom,
|
||
Hewlett-Packard, Imation, KT Technology, KingByte Information Corp., Maxell,
|
||
MicroSolutions, OnSpec, Shuttle Technology, SyQuest, and ValuStore.
|
||
|
||
Additional information can be found at [http://www.torque.net/parport/] http:
|
||
//www.torque.net/parport/.
|
||
-----------------------------------------------------------------------------
|
||
|
||
3.5. PCMCIA Drives
|
||
|
||
Using a PCMCIA SCSI or IDE adaptor you can connect external CD-ROM drives to
|
||
a laptop. Once the appropriate PCMCIA kernel driver is installed the drives
|
||
will appear like any other IDE or SCSI drives.
|
||
|
||
See the [http://www.ibiblio.org/LDP/HOWTO/PCMCIA-HOWTO.html] Linux PCMCIA
|
||
HOWTO for more information.
|
||
-----------------------------------------------------------------------------
|
||
|
||
3.6. USB CD-ROM Drives
|
||
|
||
The Universal Serial Bus has support for mass storage devices. USB CD-R and
|
||
CD-RW drives are popular because they can be quickly and easily moved between
|
||
systems.
|
||
|
||
You need to configure the kernel for "USB Mass Storage support". This makes
|
||
USB storage devices appear like SCSI, although they do not use the same
|
||
device files. See the [http://www.dynamine.net/linux-usb/HOWTO] Linux USB
|
||
HOWTO for more details.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4. Installation
|
||
|
||
Installation of a CD-ROM under Linux consists of these steps:
|
||
|
||
1. Installing the hardware.
|
||
|
||
2. Configuring and building the Linux kernel.
|
||
|
||
3. Creating device files and setting boot time parameters
|
||
|
||
4. Booting the Linux kernel.
|
||
|
||
5. Mounting the media.
|
||
|
||
|
||
The next sections will cover each of these steps in detail.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.1. Installing the Hardware
|
||
|
||
Follow the manufacturer's instructions for installing the hardware or have
|
||
your dealer perform the installation. The details will vary depending on
|
||
whether the drive is internal or external and on the type of interface used.
|
||
There are no special installation requirements for Linux. You may need to set
|
||
jumpers on the drive and/or interface card for correct operation; some of the
|
||
kernel drivers include documentation files that include this information.
|
||
|
||
As explained in the file ide-cd, ATAPI CD-ROMS should be jumpered as "single"
|
||
or "master", and not "slave" when only one IDE device is attached to an
|
||
interface (although this restriction is no longer enforced with recent
|
||
kernels).
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.2. Configuring and Building the Kernel
|
||
|
||
When initially installing Linux from CD-ROM you will likely be using a boot
|
||
and/or root disk provided as part of a Linux distribution. If possible, you
|
||
should choose a boot disk with the kernel driver for your CD-ROM device type.
|
||
If you cannot find a boot disk with the necessary CD-ROM driver, you have
|
||
several options:
|
||
|
||
1. Boot directly from CD-ROM (if supported by your computer and Linux CD)
|
||
|
||
2. Install over a network
|
||
|
||
3. Boot DOS, and install the Linux files onto your hard disk
|
||
|
||
4. Boot DOS, and create a set of floppies to install Linux
|
||
|
||
5. Find someone who can build you a boot disk with the needed CD-ROM driver
|
||
|
||
|
||
The [http://www.linuxdoc.org/HOWTO/Installation-HOWTO/index.html] Linux
|
||
Installation HOWTO has more information on installing Linux. If you purchased
|
||
Linux on CD-ROM, it likely also came with some installation instructions
|
||
(that little booklet inside the jewel case, and/or files on the CD).
|
||
|
||
Once Linux has initially been installed, most users will want to compile
|
||
their own kernel, usually for one of these reasons:
|
||
|
||
<EFBFBD><EFBFBD>*<2A>to support a CD-ROM drive or other hardware
|
||
|
||
<EFBFBD><EFBFBD>*<2A>to upgrade to a newer kernel release
|
||
|
||
<EFBFBD><EFBFBD>*<2A>to free up memory resources by minimizing the size of the kernel
|
||
|
||
|
||
The [http://www.ibiblio.org/LDP/HOWTO/Kernel-HOWTO.html] Linux Kernel HOWTO
|
||
should be consulted for the details of building a kernel. I will just mention
|
||
here some issues that are specific to CD-ROM drives.
|
||
|
||
Obviously, you need to compile in support for your CD-ROM drive when you
|
||
configure the kernel.
|
||
|
||
If you have an ATAPI CD-ROM drive, you need to enable Enhanced IDE/MFM/RLL
|
||
disk/cdrom/tape support and Include IDE/ATAPI CDROM support.
|
||
|
||
For SCSI CD-ROM drives, enable the options SCSI support and SCSI CDROM
|
||
support. Also enable support for your SCSI host adapter when prompted, e.g.
|
||
Adaptec AHA152X/2825 support.
|
||
|
||
For proprietary interface CD-ROM drives, enable the appropriate driver. You
|
||
can use the table listed previously to determine the driver to use for your
|
||
model.
|
||
|
||
Virtually all CD-ROMs use the ISO-9660 file system, so you must also enable
|
||
ISO 9660 CDROM filesystem support.
|
||
|
||
Although not needed for CD-ROM operation, if you have a sound card that is
|
||
supported under Linux you might want to enable and configure the kernel sound
|
||
driver at this time as well. The [http://www.ibiblio.org/LDP/HOWTO/
|
||
Sound-HOWTO.html] Sound HOWTO can be a useful reference here.
|
||
|
||
You should then follow the usual procedure for building the kernel and
|
||
installing it. Don't boot with the new kernel until you create the device
|
||
files and set up any boot time parameters as described in the next section.
|
||
|
||
The ISO-9660 filesystem and almost all of the CD-ROM drivers can be built as
|
||
loadable kernel modules. This scheme allows the kernel drivers to be loaded
|
||
and unloaded without rebooting the kernel, freeing up memory. I recommend you
|
||
get your CD-ROM installation running using compiled-in drivers first. How to
|
||
use modules is described in the modules documentation and the [http://
|
||
www.ibiblio.org/LDP/HOWTO/Kernel-HOWTO.html] Kernel HOWTO.
|
||
|
||
If a drive type listed here is not supported by your kernel, you likely need
|
||
to upgrade to a newer version.
|
||
|
||
It is possible that you need to use a driver that is distributed separately
|
||
from the kernel source code. This usually involves patching the kernel.
|
||
Again, the [http://www.ibiblio.org/LDP/HOWTO/Kernel-HOWTO.html] Kernel HOWTO
|
||
explains how to do this.
|
||
|
||
Note that you can configure the kernel using the text-based program using
|
||
"make config", a menu-based kernel configuration program invoked by "make
|
||
menuconfig" and an X11-based graphical configuration invoked as "make
|
||
xconfig". All three configuration methods offer on-line help.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.3. Creating Device Files and Setting Boot Time Parameters
|
||
|
||
The kernel uses device files to identify which device driver to use. If you
|
||
are running a standard Linux distribution you may have created the necessary
|
||
device files during installation. Under Slackware Linux, for example, there
|
||
is a menu-based setup tool that includes CD-ROM setup, and most systems have
|
||
a /dev/MAKEDEV script. If you don't use these methods, you can use the more
|
||
manual procedure listed in this section. Even if you use either of these
|
||
methods, it is recommended that you at least verify the device files against
|
||
the information in this section.
|
||
|
||
If you are using the new devfs file system in the 2.4 kernels, the device
|
||
files are created dynamically by the kernel rather than residing on disk, and
|
||
follow a different naming convention. The examples in this document assume
|
||
that devfs is not being used, and may need to be adjusted accordingly if you
|
||
are.
|
||
|
||
You create the device file by running the shell commands indicated for your
|
||
drive type. This should be done as user root. Note that some Linux
|
||
distributions may use slightly different CD-ROM device names from those
|
||
listed here.
|
||
|
||
I recommended that you also create a symbolic link to the CD-ROM device to
|
||
make it easier to remember. For example, for an IDE CD-ROM drive that is the
|
||
second device on the secondary interface, the link would be created using
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|# ln -s /dev/hdd /dev/cdrom |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
If you want to play audio CDs, you will need to set the protection on the
|
||
device file (the real file, not the symbolic link to it) to allow all users
|
||
to read, e.g.
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|# chmod 664 /dev/hdd |
|
||
|# ls -l /dev/hdd |
|
||
|brw-rw-r-- 1 root disk 22, 64 Feb 4 1995 /dev/hdd |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
Some Linux distributions use group permissions to control access to devices
|
||
such as CD-ROMs. A common convention is to only allow members of a group
|
||
called cdrom to have access. In this case you should add the appropriate
|
||
users to the group rather than changing file permissions on the device file.
|
||
|
||
When booting Linux, the device drivers attempt to determine whether the
|
||
appropriate devices are present, typically by probing specific addresses.
|
||
Many of the drivers auto-probe at several addresses, but because of
|
||
differences in configuration, possible device conflicts, and hardware
|
||
limitations, the drivers sometimes need help identifying the addresses and
|
||
other parameters. Most drivers support an option on the kernel command line
|
||
to pass this information to the device driver. This can be done
|
||
interactively, or more commonly, configured into your boot loader. With LILO,
|
||
for example, you would add an append command such as the following to your /
|
||
etc/lilo.conf file:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|append = "sbpcd=0x230,SoundBlaster" |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
See the LILO documentation for more information.
|
||
|
||
In the next section I discuss issues specific to individual device drivers,
|
||
including device files, boot parameters, and the capabilities of the
|
||
different drivers. You probably only need to read the section relevant to
|
||
your drive type. The documentation files are usually found in the directory /
|
||
usr/src/linux/Documentation/cdrom.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.3.1. Sbpcd Driver
|
||
|
||
+------------------------+-------------------------------------+
|
||
|Principal author: |Eberhard Moenkeberg (emoenke@gwdg.de)|
|
||
+------------------------+-------------------------------------+
|
||
|Multi-session support: |yes (but not all drives) |
|
||
+------------------------+-------------------------------------+
|
||
|Multiple drive support: |yes |
|
||
+------------------------+-------------------------------------+
|
||
|Loadable module support:|yes |
|
||
+------------------------+-------------------------------------+
|
||
|Reading audio frames: |yes (CR-562, CR-563, CD-200 only) |
|
||
+------------------------+-------------------------------------+
|
||
|Auto-probing: |yes |
|
||
+------------------------+-------------------------------------+
|
||
|Device file: |/dev/sbpcd, major 25 |
|
||
+------------------------+-------------------------------------+
|
||
|Configuration file: |sbpcd.h |
|
||
+------------------------+-------------------------------------+
|
||
|Kernel config option: |Matsushita/Panasonic CDROM support |
|
||
+------------------------+-------------------------------------+
|
||
|Documentation file: |sbpcd |
|
||
+------------------------+-------------------------------------+
|
||
|
||
This driver accepts a kernel command line of the form:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|sbpcd=<io-address>,<interface-type> |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
where the first parameter is the base address of the device (e.g. 0x230), and
|
||
<interface-type> is one of "SoundBlaster", "LaserMate", or "SPEA". See the
|
||
file sbpcd.h for hints on what interface type to use. Using sbpcd=0 disables
|
||
auto-probing, disabling the driver.
|
||
|
||
The device file can be created using:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|# mknod /dev/sbpcd b 25 0 |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
Up to four drives per controller are supported. The next three drives on the
|
||
first controller would use minor device numbers 1 through 3. If you have more
|
||
than one controller, create devices with major numbers 26, 27, and 28, up to
|
||
a maximum of 4 controllers (this is 16 CD-ROM drives in total; hopefully
|
||
enough for most users :-).
|
||
|
||
See the file sbpcd for more information on this driver.
|
||
|
||
If you recently bought a CD-ROM drive, don't assume that if it connects to a
|
||
SoundBlaster card it should use this kernel driver. Most CD-ROM drives being
|
||
sold by Creative Labs are now EIDE/ATAPI drives.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.3.2. Sonycdu535 Driver
|
||
|
||
+------------------------+------------------------------+
|
||
|Principal author: |Ken Pizzini (ken@halcyon.com) |
|
||
+------------------------+------------------------------+
|
||
|Multiple drive support: |no |
|
||
+------------------------+------------------------------+
|
||
|Loadable module support:|yes |
|
||
+------------------------+------------------------------+
|
||
|Reading audio frames: |no |
|
||
+------------------------+------------------------------+
|
||
|Auto-probing: |no |
|
||
+------------------------+------------------------------+
|
||
|Device file: |/dev/sonycd535, major 24 |
|
||
+------------------------+------------------------------+
|
||
|Configuration file: |sonycd535.h |
|
||
+------------------------+------------------------------+
|
||
|Kernel config option: |Sony CDU535 CDROM support |
|
||
+------------------------+------------------------------+
|
||
|Documentation file: |sonycd535 |
|
||
+------------------------+------------------------------+
|
||
|
||
This driver accepts a kernel command line of the form:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|sonycd535=<io-address> |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
where <io-address> is the base address of the controller (e.g. 0x320).
|
||
Alternatively you can set the address in the file sonycd535.h and compile it
|
||
in.
|
||
|
||
The device file can be created using:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|# mknod /dev/sonycd535 b 24 0 |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
Some Linux distributions use /dev/sonycd for this device. Older versions of
|
||
the driver used major device number 21; make sure your device file is
|
||
correct.
|
||
|
||
This driver was previously distributed as a patch but is now part of the
|
||
standard kernel. See the file sonycd535 for more information on this driver.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.3.3. Cdu31a Driver
|
||
|
||
+------------------------+-------------------------------------+
|
||
|Principal author: |Corey Minyard (minyard@-rch.cirr.com)|
|
||
+------------------------+-------------------------------------+
|
||
|Multi-session support: |yes |
|
||
+------------------------+-------------------------------------+
|
||
|Multiple drive support: |no |
|
||
+------------------------+-------------------------------------+
|
||
|Loadable module support:|yes |
|
||
+------------------------+-------------------------------------+
|
||
|Reading audio frames: |yes |
|
||
+------------------------+-------------------------------------+
|
||
|Auto-probing: |no |
|
||
+------------------------+-------------------------------------+
|
||
|Device file: |/dev/cdu31a, major 15 |
|
||
+------------------------+-------------------------------------+
|
||
|Configuration file: |cdu31a.h |
|
||
+------------------------+-------------------------------------+
|
||
|Kernel config option: |Sony CDU31A/CDU33A CDROM support |
|
||
+------------------------+-------------------------------------+
|
||
|Documentation file: |cdu31a |
|
||
+------------------------+-------------------------------------+
|
||
|
||
This driver accepts a kernel command line of the form:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|cdu31a=<io-address>,<interrupt>,PAS |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
The first number is the I/O base address of the card (e.g. 0x340). The second
|
||
is the interrupt number to use (0 means to use polled i/o). The optional
|
||
third parameter should be "PAS" if the drive is connected to a Pro-Audio
|
||
Spectrum 16 sound card, otherwise left blank.
|
||
|
||
If the driver is loaded as a module, it uses a slightly different format.
|
||
When loading the driver using the modprobe or insmod command, the parameters
|
||
take the form:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|cdu31a_port=<io-address> cdu31a_irq=<interrupt> |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
The base io-address is required while the interrupt number is optional.
|
||
|
||
The device file can be created using:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|# mknod /dev/cdu31a b 15 0 |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
See the file cdu31a for more information on this driver.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.3.4. Aztcd Driver
|
||
|
||
+------------------------+--------------------------------------------------+
|
||
|Principal author: |Werner Zimmermann (zimmerma@rz.fht-esslingen.de) |
|
||
+------------------------+--------------------------------------------------+
|
||
|Multi-session support: |yes |
|
||
+------------------------+--------------------------------------------------+
|
||
|Multiple drive support: |no |
|
||
+------------------------+--------------------------------------------------+
|
||
|Loadable module support:|yes |
|
||
+------------------------+--------------------------------------------------+
|
||
|Reading audio frames: |no |
|
||
+------------------------+--------------------------------------------------+
|
||
|Auto-probing: |no |
|
||
+------------------------+--------------------------------------------------+
|
||
|Device file: |/dev/aztcd0, major 29 |
|
||
+------------------------+--------------------------------------------------+
|
||
|Configuration file: |aztcd.h |
|
||
+------------------------+--------------------------------------------------+
|
||
|Kernel config option: |Aztech/Orchid/Okano/Wearnes (non IDE) CDROM |
|
||
| |support |
|
||
+------------------------+--------------------------------------------------+
|
||
|Documentation file: |aztcd |
|
||
+------------------------+--------------------------------------------------+
|
||
|
||
This driver accepts a kernel command line of the form:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|aztcd=<io-address> |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
where the parameter is the I/O base address of the card (e.g. 0x340).
|
||
|
||
The device file can be created using:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|# mknod /dev/aztcd0 b 29 0 |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
Note that this driver is for the CDA268-01A only. Other models, including the
|
||
CDA268-03I and CDA269-031SE are not proprietary and should use the IDECD
|
||
(ATAPI) kernel driver.
|
||
|
||
See the file aztcd for more information on this driver.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.3.5. Gscd Driver
|
||
|
||
+-------------------------+-------------------------------------------------+
|
||
|Principal author: |Oliver Raupach (raupach@nwfs1.rz.fh-hannover.de) |
|
||
+-------------------------+-------------------------------------------------+
|
||
|Multi-session support: |no |
|
||
+-------------------------+-------------------------------------------------+
|
||
|Multiple drive support: |no |
|
||
+-------------------------+-------------------------------------------------+
|
||
|Loadable module support: |yes |
|
||
+-------------------------+-------------------------------------------------+
|
||
|Reading audio frames: |no |
|
||
+-------------------------+-------------------------------------------------+
|
||
|Auto-probing: |no |
|
||
+-------------------------+-------------------------------------------------+
|
||
|Device file: |/dev/gscd0, major 16 |
|
||
+-------------------------+-------------------------------------------------+
|
||
|Configuration file: |gscd.h |
|
||
+-------------------------+-------------------------------------------------+
|
||
|Kernel config option: |Goldstar R420 CDROM support |
|
||
+-------------------------+-------------------------------------------------+
|
||
|Documentation file: |gscd |
|
||
+-------------------------+-------------------------------------------------+
|
||
|
||
This driver accepts a kernel command line of the form:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|gscd=<io-address> |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
specifying the I/O base address of the card (e.g. 0x340).
|
||
|
||
The device file can be created using:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|# mknod /dev/gscd0 b 16 0 |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
See the file gscd for more information on this driver.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.3.6. Mcd Driver
|
||
|
||
+------------------------+------------------------------+
|
||
|Principal author: |Martin (martin@bdsi.com) |
|
||
+------------------------+------------------------------+
|
||
|Multi-session support: |no |
|
||
+------------------------+------------------------------+
|
||
|Multiple drive support: |no |
|
||
+------------------------+------------------------------+
|
||
|Loadable module support:|yes |
|
||
+------------------------+------------------------------+
|
||
|Reading audio frames: |no |
|
||
+------------------------+------------------------------+
|
||
|Auto-probing: |no |
|
||
+------------------------+------------------------------+
|
||
|Device file: |/dev/mcd, major 23 |
|
||
+------------------------+------------------------------+
|
||
|Configuration file: |mcd.h |
|
||
+------------------------+------------------------------+
|
||
|Kernel config option: |Standard Mitsumi CDROM support|
|
||
+------------------------+------------------------------+
|
||
|Documentation file: |mcd |
|
||
+------------------------+------------------------------+
|
||
|
||
This is the older driver for Mitsumi drivers that has been available for some
|
||
time. You might want to try the newer mcdx driver, which has some new
|
||
features but is possibly less stable.
|
||
|
||
This driver accepts a kernel command line of the form:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|mcd=<io-address>,<irq> |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
specifying the I/O base address of the card (e.g. 0x340) and the IRQ request
|
||
number used.
|
||
|
||
The device file can be created using:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|# mknod /dev/mcd b 23 0 |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
See the file mcd for more information on this driver.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.3.7. Mcdx Driver
|
||
|
||
+------------------------+------------------------------+
|
||
|Principal author: |Heiko Schlittermann |
|
||
+------------------------+------------------------------+
|
||
|Multi-session support: |yes |
|
||
+------------------------+------------------------------+
|
||
|Multiple drive support: |yes |
|
||
+------------------------+------------------------------+
|
||
|Loadable module support:|yes |
|
||
+------------------------+------------------------------+
|
||
|Reading audio frames: |no (not supported by hardware)|
|
||
+------------------------+------------------------------+
|
||
|Auto-probing: |no |
|
||
+------------------------+------------------------------+
|
||
|Device file: |/dev/mcdx0, major 20 |
|
||
+------------------------+------------------------------+
|
||
|Configuration file: |mcdx.h |
|
||
+------------------------+------------------------------+
|
||
|Kernel config option: |Experimental Mitsumi support |
|
||
+------------------------+------------------------------+
|
||
|Documentation file: |mcdx |
|
||
+------------------------+------------------------------+
|
||
|
||
This is a newer driver for Mitsumi drivers. The older and possibly more
|
||
stable mcd driver is still available.
|
||
|
||
This driver accepts a kernel command line of the form:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|mcdx=<io-address>,<irq> |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
specifying the I/O base address of the card (e.g. 0x340) and the IRQ request
|
||
number used.
|
||
|
||
The device file can be created using:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|# mknod /dev/mcdx0 b 20 0 |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
If you recently bought a Mitsumi CD-ROM drive, don't assume that it should
|
||
use this kernel driver. New Mitsumi drives are now EIDE/ATAPI compatible and
|
||
should use the idecd kernel driver instead.
|
||
|
||
See the file mcdx for more information on this driver.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.3.8. Cm206 Driver
|
||
|
||
+------------------------+---------------------------------------+
|
||
|Principal author: |David A. van Leeuwen (david@tm.tmo.nl) |
|
||
+------------------------+---------------------------------------+
|
||
|Multi-session support: |yes |
|
||
+------------------------+---------------------------------------+
|
||
|Multiple drive support: |no |
|
||
+------------------------+---------------------------------------+
|
||
|Loadable module support:|yes |
|
||
+------------------------+---------------------------------------+
|
||
|Reading audio frames: |no |
|
||
+------------------------+---------------------------------------+
|
||
|Auto-probing: |yes |
|
||
+------------------------+---------------------------------------+
|
||
|Device file: |/dev/cm206cd, major 32 |
|
||
+------------------------+---------------------------------------+
|
||
|Configuration file: |cm206.h |
|
||
+------------------------+---------------------------------------+
|
||
|Kernel config option: |Philips/LMS CM206 CDROM support |
|
||
+------------------------+---------------------------------------+
|
||
|Documentation file: |cm206 |
|
||
+------------------------+---------------------------------------+
|
||
|
||
The driver accepts a kernel command line of the form:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|cm206=<io-address>,<interrupt> |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
where the first number is the I/O base address of the card (e.g. 0x340). The
|
||
second is the interrupt channel.
|
||
|
||
The device file can be created using:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|# mknod /dev/cm206cd b 32 0 |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
See the file cm206 for more information on this driver.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.3.9. Optcd Driver
|
||
|
||
+------------------------+----------------------------------------------+
|
||
|Principal author: |Leo Spiekman (spiekman@dutette.et.tudelft.nl) |
|
||
+------------------------+----------------------------------------------+
|
||
|Multi-session support: |yes |
|
||
+------------------------+----------------------------------------------+
|
||
|Multiple drive support: |no |
|
||
+------------------------+----------------------------------------------+
|
||
|Loadable module support:|yes |
|
||
+------------------------+----------------------------------------------+
|
||
|Reading audio frames: |no |
|
||
+------------------------+----------------------------------------------+
|
||
|Auto-probing: |no |
|
||
+------------------------+----------------------------------------------+
|
||
|Device file: |/dev/optcd0, major 17 |
|
||
+------------------------+----------------------------------------------+
|
||
|Configuration file: |optcd.h |
|
||
+------------------------+----------------------------------------------+
|
||
|Kernel config option: |Experimental Optics Storage ... CDROM support |
|
||
+------------------------+----------------------------------------------+
|
||
|Documentation file: |optcd |
|
||
+------------------------+----------------------------------------------+
|
||
|
||
The driver accepts a kernel command line of the form
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|optcd=<io-address> |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
to specify the I/O base address of the card (e.g. 0x340).
|
||
|
||
The device file can be created using:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|# mknod /dev/optcd0 b 17 0 |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
See the file optcd for more information on this driver.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.3.10. Sjcd Driver
|
||
|
||
+------------------------+-------------------------------------+
|
||
|Principal author: |Vadim V. Model (vadim@rbrf.msk.su) |
|
||
+------------------------+-------------------------------------+
|
||
|Multi-session support: |no |
|
||
+------------------------+-------------------------------------+
|
||
|Multiple drive support: |no |
|
||
+------------------------+-------------------------------------+
|
||
|Loadable module support:|yes |
|
||
+------------------------+-------------------------------------+
|
||
|Reading audio frames: |no |
|
||
+------------------------+-------------------------------------+
|
||
|Auto-probing: |no |
|
||
+------------------------+-------------------------------------+
|
||
|Device file: |/dev/sjcd, major 18 |
|
||
+------------------------+-------------------------------------+
|
||
|Configuration file: |sjcd.h |
|
||
+------------------------+-------------------------------------+
|
||
|Kernel config option: |Experimental Sanyo H94A CDROM support|
|
||
+------------------------+-------------------------------------+
|
||
|Documentation file: |sjcd |
|
||
+------------------------+-------------------------------------+
|
||
|
||
The driver accepts a kernel command line of the form:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|sjcd=<io-address>,<interrupt>,<dma> |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
indicating the base address, interrupt, and DMA channel to be used (e.g. sjcd
|
||
=0x340,10,5).
|
||
|
||
The device file can be created using:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|# mknod /dev/sjcd b 18 0 |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
See the file sjcd for more information on this driver.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.3.11. Paride Driver
|
||
|
||
+------------------------+-------------------------------------+
|
||
|Principal author: |Grant R. Guenther (grant@torque.net) |
|
||
+------------------------+-------------------------------------+
|
||
|Multi-session support: |no |
|
||
+------------------------+-------------------------------------+
|
||
|Multiple drive support: |yes |
|
||
+------------------------+-------------------------------------+
|
||
|Loadable module support:|yes |
|
||
+------------------------+-------------------------------------+
|
||
|Reading audio frames: |no |
|
||
+------------------------+-------------------------------------+
|
||
|Auto-probing: |yes |
|
||
+------------------------+-------------------------------------+
|
||
|Device file: |/dev/pcd0, major 46 |
|
||
+------------------------+-------------------------------------+
|
||
|Configuration file: |bpcd.h |
|
||
+------------------------+-------------------------------------+
|
||
|Kernel config option: |Parallel port IDE device support |
|
||
+------------------------+-------------------------------------+
|
||
|Documentation file: |paride.txt |
|
||
+------------------------+-------------------------------------+
|
||
|
||
This is the driver for various types of storage devices that attach to a
|
||
parallel port. Normally the driver will auto-detect the parallel port device.
|
||
The documentation describes parameters that can be used to specify the device
|
||
parameters if auto-detection does not work.
|
||
|
||
The device file for the first drive can be created using:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|# mknod /dev/pcd0 b 46 0 |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
See the file /usr/src/linux/Documentation/paride.xt for more information on
|
||
this driver. Note that this replaces the bpcd driver that was present in
|
||
older kernels.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.3.12. SCSI Driver
|
||
|
||
+------------------------+------------------------+
|
||
|Principal author: |David Giller |
|
||
+------------------------+------------------------+
|
||
|Multi-session support: |yes (depending on drive)|
|
||
+------------------------+------------------------+
|
||
|Multiple drive support: |yes |
|
||
+------------------------+------------------------+
|
||
|Loadable module support:|yes |
|
||
+------------------------+------------------------+
|
||
|Reading audio frames: |no |
|
||
+------------------------+------------------------+
|
||
|Auto-probing: |yes |
|
||
+------------------------+------------------------+
|
||
|Device file: |/dev/scd0, major 11 |
|
||
+------------------------+------------------------+
|
||
|Configuration file: |cdrom.h |
|
||
+------------------------+------------------------+
|
||
|Kernel config option: |SCSI CDROM support |
|
||
+------------------------+------------------------+
|
||
|Documentation file: |scsi.txt |
|
||
+------------------------+------------------------+
|
||
|
||
There are kernel command line option specific to each type of SCSI
|
||
controller. See the [ftp://www.ibiblio.org/pub/Linux/docs/HOWTO/unmaintained/
|
||
SCSI-HOWTO] SCSI HOWTO for more information.
|
||
|
||
Multiple drives are supported (up to the limit of the maximum number of
|
||
devices on the SCSI bus). Create device files with major number 11 and minor
|
||
numbers starting at zero:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|# mknod /dev/scd0 b 11 0 |
|
||
|# mknod /dev/scd1 b 11 1 |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
While the kernel driver itself does not support reading digital audio frames,
|
||
some SCSI drives have the capability and will work with the cdda2wav program
|
||
(which uses the generic SCSI kernel interface).
|
||
|
||
Also see the discussion of the IDE SCSI emulation driver earlier in this
|
||
document.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.3.13. IDECD Driver
|
||
|
||
+------------------------+-------------------------------------+
|
||
|Principal author: |Scott Snyder (snyder@fnald0.fnal.gov)|
|
||
+------------------------+-------------------------------------+
|
||
|Multi-session support: |yes |
|
||
+------------------------+-------------------------------------+
|
||
|Multiple drive support: |yes |
|
||
+------------------------+-------------------------------------+
|
||
|Loadable module support:|no |
|
||
+------------------------+-------------------------------------+
|
||
|Reading audio frames: |yes (on supported drives) |
|
||
+------------------------+-------------------------------------+
|
||
|Auto-probing: |yes |
|
||
+------------------------+-------------------------------------+
|
||
|Device file: |/dev/hd{a,b,c,d}, major 22 |
|
||
+------------------------+-------------------------------------+
|
||
|Configuration file: |cdrom.h |
|
||
+------------------------+-------------------------------------+
|
||
|Kernel config option: |Include support for IDE/ATAPI CDROMs |
|
||
+------------------------+-------------------------------------+
|
||
|Documentation file: |ide-cd |
|
||
+------------------------+-------------------------------------+
|
||
|
||
This is the driver for ATAPI CD-ROMS. The driver accepts a kernel command
|
||
line of the form
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|hdx=cyls,heads,sects,wpcom,irq |
|
||
| or |
|
||
|hdx=cdrom |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
where hdx can be any of {hda,hdb,hdc,hdd}, or simply hd, for the "next" drive
|
||
in sequence. Only the first three parameters are required (cyls,heads,sects).
|
||
For example hdc=1050,32,64 hdd=cdrom.
|
||
|
||
Getting the IDE driver to recognize your CD-ROM drive can be tricky,
|
||
especially if you have more than 2 devices or more than one IDE controller.
|
||
Usually all that is required is to pass the right command line options from
|
||
LILO. The file /usr/src/linux/Documentation/cdrom/ide-cd explains how to do
|
||
this. Read it carefully.
|
||
|
||
Recent Linux kernels have better support for multiple IDE devices. If you
|
||
have problems with an older kernel, upgrading may help.
|
||
|
||
Some IDE controllers have hardware problems which the kernel driver can work
|
||
around. You may need to pass additional parameters to the driver to enable
|
||
this. See the documentation for details.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.4. Booting the Linux Kernel
|
||
|
||
You can now reboot with the new kernel. Watch for a message such as the
|
||
following indicating that the CD-ROM has been found by the device driver (the
|
||
message will vary depending on the drive type):
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|hdd: TOSHIBA CD-ROM XM-7002B, ATAPI CD/DVD-ROM drive |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
If the bootup messages scroll by too quickly to read, you should be able to
|
||
retrieve them using dmesg or tail /var/log/messages.
|
||
|
||
If the drive is not found, then a problem has occurred, See the section on
|
||
troubleshooting.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.5. Mounting, Unmounting, and Ejecting Devices
|
||
|
||
To mount a CD-ROM, insert a disc in the drive, and run the mount command as
|
||
root (this assumes you created a symbolic link to your device file as
|
||
recommended above and that an empty directory /mnt/cdrom exists):
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|# mount -t iso9660 -r /dev/cdrom /mnt/cdrom |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
The CD can now be accessed under the directory /mnt/cdrom.
|
||
|
||
There are other options to the mount command that you may wish to use; see
|
||
the mount(8) man page for details.
|
||
|
||
You can add an entry to /etc/fstab to automatically mount a CD-ROM when Linux
|
||
boots or to specify parameters to use when it is mounted; see the fstab(5)
|
||
man page.
|
||
|
||
Note that to play audio CDs you should not try to mount them.
|
||
|
||
To unmount a CD-ROM, use the umount command as root:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|# umount /mnt/cdrom |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
The disc can only be unmounted if no processes are currently accessing the
|
||
drive (including having their default directory set to the mounted drive).
|
||
You can then eject the disc. Most drives have an eject button; there is also
|
||
a standalone [http://www.pobox.com/~tranter/eject.html] eject program that
|
||
allows ejecting CD-ROMs under software control.
|
||
|
||
Note that you should not eject a disc while it is mounted (this may or may
|
||
not be possible depending on the type of drive). Some CD-ROM drivers can
|
||
automatically eject a CD-ROM when it is unmounted and insert the CD tray when
|
||
a disc is mounted (you can turn this feature off when compiling the kernel or
|
||
by using a software command).
|
||
|
||
Its possible that after playing an audio CD you may not be able to mount a
|
||
CD-ROM. You need to send a CD audio "stop" command (using a CD player
|
||
program) before trying the mount. This problem only appears to occur with the
|
||
SBPCD driver.
|
||
|
||
Recent kernels support a kernel-based automounter which provides transparent
|
||
mounting of removable media including CD-ROM. You can find the tools needed
|
||
to use it at [ftp://ftp.kernel.org/pub/linux/daemons/autofs/] ftp://
|
||
ftp.kernel.org/pub/linux/daemons/autofs/.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.6. Troubleshooting
|
||
|
||
If you still encounter problems after following the instructions in the
|
||
HOWTO, here are some things to check. The checks are listed in increasing
|
||
order of complexity. If a check fails, solve the problem before moving to the
|
||
next stage.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.6.1. Step 1: Make sure you are really running the kernel you compiled
|
||
|
||
You can check the date stamp on the kernel to see if you are running the one
|
||
that you compiled with CD-ROM support. You can do this with the uname
|
||
command:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|% uname -a |
|
||
|Linux moe 2.4.4 #1 Sat Apr 28 10:30:45 EDT 2001 i686 unknown |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
or by displaying the file /proc/version:
|
||
|
||
+---------------------------------------------------------------------------------------------------------------+
|
||
|% cat /proc/version |
|
||
|Linux version 2.4.4 (root@moe) (gcc version 2.95.2 20000220 (Debian GNU/Linux)) #1 Sat Apr 28 10:30:45 EDT 2001|
|
||
+---------------------------------------------------------------------------------------------------------------+
|
||
|
||
If the date stamp doesn't match when you compiled the kernel, then you are
|
||
running an old kernel. Did you remember to reboot? If you use LILO, did you
|
||
re-install it (typically by running /sbin/lilo)? If booting from floppy, did
|
||
you create a new boot floppy and use it when booting?
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.6.2. Step 2: Make sure the proper kernel drivers are compiled in
|
||
|
||
You can see what drivers are compiled in by looking at /proc/devices:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|% cat /proc/devices |
|
||
|Character devices: |
|
||
| 1 mem |
|
||
| 2 pty |
|
||
| 3 ttyp |
|
||
| 4 ttyS |
|
||
| 5 cua |
|
||
| 7 vcs |
|
||
| |
|
||
|Block devices: |
|
||
| 3 ide0 |
|
||
|22 ide1 |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
First look for your CD-ROM device driver. These are all block devices, in
|
||
this case we can see that the idecd driver with major number 22 was present.
|
||
|
||
Also make sure that ISO-9660 filesystem support was compiled in, by looking
|
||
at /proc/filesystems:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|% cat /proc/filesystems |
|
||
| ext2 |
|
||
|nodev proc |
|
||
|nodev devpts |
|
||
| vfat |
|
||
| iso9660 |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
You can also see what i/o port addresses are being used by a driver with the
|
||
file /proc/ioports:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|howto % cat /proc/ioports |
|
||
| ... |
|
||
|0230-0233 : sbpcd |
|
||
| ... |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
If any of the drivers you thought you compiled in are not displayed, then
|
||
something went wrong with the kernel configuration or build. Start the
|
||
installation process again, beginning with configuration and building of the
|
||
kernel.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.6.3. Step 3: Did the kernel detect your drive during booting?
|
||
|
||
Make sure that the CD-ROM device was detected when the kernel booted. You
|
||
should have seen a message on bootup. If the messages scrolled off the
|
||
screen, you can usually recall them using the dmesg command:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|% dmesg |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
or
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|% tail /var/log/messages |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
If your drive was not found then something is wrong. Make sure it is powered
|
||
on and all cables are connected. If your drive has hardware jumpers for
|
||
addressing, check that they are set correctly (e.g. drive 0 if you have only
|
||
one drive). ATAPI CD-ROMS must be jumpered as "single" or "master", and not
|
||
"slave" when only one IDE device is attached to an interface. If the drive
|
||
works under DOS then you can be reasonably confident that the hardware is
|
||
working.
|
||
|
||
Many kernel drivers using auto-probing, but some do not, and in any case the
|
||
probing is not always reliable. Use the kernel command line option listed for
|
||
your kernel driver type. You may want to try several different values if you
|
||
are not sure of the i/o address or other parameters. LILO can be (and usually
|
||
is) configured to allow you to enter the parameters manually when booting.
|
||
|
||
Another possibility is that you used the wrong kernel driver for your CD-ROM
|
||
driver. Some documentation may refer to proprietary interfaces as IDE,
|
||
leading some to mistakenly believe they are ATAPI drives.
|
||
|
||
Another possibility is that your drive (or interface card) is one of the
|
||
"compatible" type that requires initialization by the DOS driver. Try booting
|
||
DOS and loading the vendor supplied DOS device driver. Then soft boot Linux
|
||
using Control-Alt-Delete.
|
||
|
||
If your drive is not listed in this document, it is possible that there are
|
||
no drivers for it available under Linux. You can check with some of the
|
||
references listed at the end of this document for assistance.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.6.4. Step 4: Can you read data from the drive?
|
||
|
||
Try reading from the CD-ROM drive. Typing the following command should cause
|
||
the drive activity light (if present) to come on and no errors should be
|
||
reported. Use whatever device file is appropriate for your drive and make
|
||
sure a CD-ROM is inserted; use Control-C to exit.
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|# dd if=/dev/cdrom of=/dev/null bs=2048 |
|
||
|^C |
|
||
|124+0 records in |
|
||
|124+0 records out |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
If this works, then the kernel is communicating with the drive and you can
|
||
move on to step 5.
|
||
|
||
If not, then a possible cause is the device file. Make sure than the device
|
||
file in the /dev directory has the correct major and minor numbers as listed
|
||
previously for your drive type. Check that the permissions on the device file
|
||
allow reading and writing.
|
||
|
||
A remote possibility is a hardware problem. Try testing the drive under
|
||
another operating system, if possible, to determine if this could be the
|
||
case.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.6.5. Step 5: Can you mount the drive?
|
||
|
||
If you can read from the drive but cannot mount it, first verify that you
|
||
compiled in ISO-9660 file system support by reading /proc/filesystems, as
|
||
described previously.
|
||
|
||
Make sure you are mounting the drive with the "-t iso9660" and "-r" options
|
||
and that a known good ISO-9660 CD-ROM (not Audio CD) is inserted in the
|
||
drive. You normally must mount drives as user root.
|
||
|
||
Make sure that the mount point exists and is an empty directory.
|
||
|
||
If you are automatically mounting the CD-ROM on bootup, make sure that you
|
||
have correct entries in the /etc/fstab file.
|
||
|
||
If you are running the syslog daemon, there may be error messages from the
|
||
kernel that you are not seeing. Try using the "dmesg" command:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|% dmesg |
|
||
|SBPCD: sbpcd_open: no disk in drive |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
There may also be errors logged to files in /var/log, depending on how your
|
||
system is configured.
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.6.6. Debugging Audio Problems
|
||
|
||
If the drive works with CD-ROMs, but not for playing audio CDs, here are some
|
||
possible solutions.
|
||
|
||
You need an application program to play audio CDs. Some applications may be
|
||
broken or may not be compatible with your drive. Try other applications and/
|
||
or try recompiling them yourself. A good place to look for software is [ftp:/
|
||
/www.ibiblio.org/pub/Linux/apps/sound/cdrom/] ftp://www.ibiblio.org/pub/Linux
|
||
/apps/sound/cdrom/.
|
||
|
||
A few of the CD-ROM drivers do not support playing Audio CDs. Check the
|
||
documentation file or source code to see if that is the case.
|
||
|
||
Check if the audio can be played through the headphone jack. If so, then the
|
||
problem is likely related to your sound card. Use a mixer program to set the
|
||
input device and volume levels. Make sure you have installed an audio cable
|
||
from the CD-ROM drive to the sound card. Make sure that the kernel sound card
|
||
driver is installed and working (see the [http://www.ibiblio.org/LDP/HOWTO/
|
||
Sound-HOWTO.html] Sound HOWTO).
|
||
-----------------------------------------------------------------------------
|
||
|
||
4.6.7. When All Else Fails
|
||
|
||
If you still have problems, here are some final suggestions for things to
|
||
try:
|
||
|
||
<EFBFBD><EFBFBD>*<2A>carefully re-read this HOWTO document
|
||
|
||
<EFBFBD><EFBFBD>*<2A>read the references listed at the end of this document, especially the
|
||
relevant kernel source files
|
||
|
||
<EFBFBD><EFBFBD>*<2A>post a question to one of the comp.os.linux or other Usenet newsgroups
|
||
|
||
<EFBFBD><EFBFBD>*<2A>send a question to the Linux mailing list
|
||
|
||
<EFBFBD><EFBFBD>*<2A>try using the latest Linux kernel
|
||
|
||
<EFBFBD><EFBFBD>*<2A>contact your computer dealer
|
||
|
||
<EFBFBD><EFBFBD>*<2A>contact the CD-ROM manufacturer
|
||
|
||
<EFBFBD><EFBFBD>*<2A>send mail to the maintainer of the relevant kernel driver (look in the
|
||
file /usr/src/linux/MAINTAINERS)
|
||
|
||
<EFBFBD><EFBFBD>*<2A>send mail to me
|
||
|
||
<EFBFBD><EFBFBD>*<2A>fire up emacs and type Esc-x doctor :-)
|
||
|
||
|
||
|
||
-----------------------------------------------------------------------------
|
||
|
||
5. Applications
|
||
|
||
This section briefly lists a few of the many applications related to CD-ROM
|
||
that are available under Linux. Check the Linux Software Map for the latest
|
||
versions and archive sites.
|
||
-----------------------------------------------------------------------------
|
||
|
||
5.1. Audio CD Players
|
||
|
||
Several programs are available for playing audio CDs, either through a
|
||
headphone jack or an attached sound card.
|
||
|
||
kscd
|
||
A graphical CD player included as part of the KDE desktop environment.
|
||
|
||
gtcd
|
||
A graphical CD player included as part of the GNOME desktop environment.
|
||
|
||
Workman
|
||
a graphical player running under X11 and supporting a CD database and
|
||
many other features
|
||
|
||
WorkBone
|
||
an interactive text-mode player
|
||
|
||
xcdplayer
|
||
a simple X11 based player
|
||
|
||
cdplayer
|
||
a very simple command line based player
|
||
|
||
Xmcd
|
||
an X11/Motif based player
|
||
|
||
xmitsumi
|
||
another X11 based player for Mitsumi drives
|
||
|
||
xplaycd
|
||
another X11 based player, bundled with sound mixer and VU meter programs
|
||
|
||
cdtool
|
||
command line tools for playing audio CDs
|
||
|
||
|
||
Some of these programs are coded to use a specific device file for the CD-ROM
|
||
(e.g. /dev/cdrom). You may be able to pass the correct device name as a
|
||
parameter, or you can create a symbolic link in the /dev directory. If
|
||
sending the CD output to a sound card, you may wish to use a mixer program to
|
||
set volume settings or select the CD-ROM input for recording.
|
||
-----------------------------------------------------------------------------
|
||
|
||
5.2. PhotoCD
|
||
|
||
PhotoCDs use an ISO-9660 file system containing image files in a proprietary
|
||
format. Not all CD-ROM drives support reading PhotoCDs.
|
||
|
||
The hpcdtoppm program by Hadmut Danisch converts PhotoCD files to the
|
||
portable pixmap format. It can be obtained from [ftp://ftp.gwdg.de/pub/linux/
|
||
hpcdtoppm] ftp://ftp.gwdg.de/pub/linux/hpcdtoppm or as part of the PBM
|
||
(portable bit map) utilities, available on many archive sites (look for "pbm"
|
||
or "netpbm").
|
||
|
||
The photocd program by Gerd Knorr ([mailto:kraxel@cs.tu-berlin.de]
|
||
kraxel@cs.tu-berlin.de) can convert PhotoCD images into Targa or Windows and
|
||
OS/2 bitmap files.
|
||
|
||
The same author has written the program xpcd, an X11-based program for
|
||
handling PhotoCD images. You can select the images with a mouse, preview the
|
||
image in a small window, and load the image with any of the five possible
|
||
resolutions. You can also mark a part of the Image and load only the selected
|
||
part. Look for these packages at [ftp://ftp.cs.tu-berlin.de/pub/linux/Local/
|
||
misc/] ftp://ftp.cs.tu-berlin.de/pub/linux/Local/misc/.
|
||
|
||
The ImageMagick image file manipulation program also supports PhotoCD files.
|
||
It is available from [ftp://ftp.x.org/contrib/applications/ImageMagick/] ftp:
|
||
//ftp.x.org/contrib/applications/ImageMagick/.
|
||
-----------------------------------------------------------------------------
|
||
|
||
5.3. Mkisofs
|
||
|
||
Eric Youngdale's mkisofs package allows creating an ISO-9660 file system on a
|
||
hard disk partition. This can then be used to assist in creating and testing
|
||
CD-ROM file systems before mastering discs.
|
||
-----------------------------------------------------------------------------
|
||
|
||
5.4. ISO-9660 Utilities
|
||
|
||
These are some utilities for verifying the format of ISO-9660 formatted
|
||
discs; you may find them useful for testing suspect CDs. The package can be
|
||
found at [ftp://ftp.cdrom.com/pub/unixfreeware/archive/] ftp://ftp.cdrom.com/
|
||
pub/unixfreeware/archive/. They were written by Bill Siegmund and Rich Morin.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6. Answers to Frequently Asked Questions
|
||
|
||
6.1. How can a non-root user mount and unmount discs?
|
||
|
||
Most mount commands support the user option. If you make an entry such as the
|
||
following in /etc/fstab:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|/dev/sbpcd /mnt/cdrom iso9660 user,noauto,ro |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
then an ordinary user will be allowed to mount and unmount the drive using
|
||
these commands:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|% mount /mnt/cdrom |
|
||
|% umount /mnt/cdrom |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
By default the disc will be mounted with some options that help enforce
|
||
security (e.g. programs cannot executed, device files are ignored). If this
|
||
is too restrictive you can use additional options (e.g. the "exec" option
|
||
will enable execution or programs). See the mount(8) man page for details.
|
||
|
||
Another method is to get the usermount package which allows non-root users to
|
||
mount and unmount removable devices such as floppies and CD-ROMs, but
|
||
restricts access to other devices (such as hard disk partitions). It is
|
||
available on major archive sites.
|
||
|
||
Yet another option is to use the sudo program which allows users to run
|
||
selective programs with root privileges.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.2. Why do I get device is busy when unmounting a CD-ROM?
|
||
|
||
The disc cannot be unmounted if any processes are accessing the drive,
|
||
including having their default directory set to the mounted filesystem. If
|
||
you cannot identify the processes using the disc, you can use the fuser
|
||
command, as shown in the following example.
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|% umount /cdrom |
|
||
|umount: /dev/hdd: device is busy |
|
||
|% fuser -v /cdrom |
|
||
| USER PID ACCESS COMMAND |
|
||
|/mnt/cdrom tranter 133 ..c.. bash |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
On some systems you may need to be root when running the fuser command in
|
||
order to see the processes of other users.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.3. How do I export a CD-ROM to other hosts over NFS?
|
||
|
||
You need to add an entry to the /etc/exports file. Users on other machines
|
||
will then be able to mount the device. See the exports(5) man page for
|
||
details.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.4. Can I boot Linux from a CD-ROM?
|
||
|
||
Most Linux distributions support directly booting a Linux kernel from CD as
|
||
an alternative to a boot floppy. This requires a bootable CD and ROM BIOS and
|
||
CD-ROM drive which supporting booting from CD.
|
||
|
||
The latest version of mkisofs supports creating such disks using the El
|
||
Torito standard for bootable CDs.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.5. How can I read digital data from audio CDs?
|
||
|
||
Heiko Eissfeldt ([mailto:heiko@colossus.escape.de] heiko@colossus.escape.de)
|
||
and Olaf Kindel have written a utility that reads audio data and saves it as
|
||
.wav format sound files. The package is called cdda2wav.tar.gz and can be
|
||
found on www.ibiblio.org.
|
||
|
||
Another utility to extract digital audio is cdparanoia available from [http:/
|
||
/www.xiph.org/paranoia/] http://www.xiph.org/paranoia.
|
||
|
||
Because CD-ROM drives are changing very quickly, it is difficult to list
|
||
which models support reading digital data. Your best bet is to get the latest
|
||
cdda2wav or cdparanoia package and read the documentation.
|
||
|
||
For more information on this subject, see the web site [http://
|
||
www.tardis.ed.ac.uk/~psyche/cdda/] http://www.tardis.ed.ac.uk/~psyche/cdda/
|
||
and the alt.cd-rom FAQ listed in the references section.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.6. Why doesn't the find command work properly?
|
||
|
||
On ISO-9660 formatted discs without the Rock Ridge Extensions, you need to
|
||
add the -noleaf option to the find command. See the find(1) man page for
|
||
details.
|
||
|
||
(In my experience virtually all recent Linux CDs use the Rock Ridge
|
||
extensions, so this problem should occur very rarely.)
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.7. Does Linux support any recordable CD-ROM drives?
|
||
|
||
Linux supports most CD-R and CD-RW drives. The cdrecord and mkisofs tools can
|
||
be used to burn CDs, there are also many graphical front-ends to these tools.
|
||
For more information see the [http://www.ibiblio.org/LDP/HOWTO/
|
||
CD-Writing-HOWTO.html] Linux CD-Writing HOWTO.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.8. Why do I get mount: Read-only file system when mounting a CD-ROM?
|
||
|
||
CD-ROM is a read-only media. With some early kernels you could mount a CD-ROM
|
||
for read/write; attempts to write data to the CD would simple be ignored. As
|
||
of kernel version 1.1.33 this was corrected so that CD-ROMs must be mounted
|
||
read only (e.g. using the -r option to mount).
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.9. Why does the disc tray open when I shut down the system?
|
||
|
||
The sbpcd driver supports automatically ejecting the CD when it is unmounted.
|
||
In some older kernel versions this was the default behaviour. If you shut
|
||
down the system, a mounted CD will be unmounted, causing it to eject.
|
||
|
||
This feature is for convenience when changing discs. If the tray is open when
|
||
you mount or read a CD, it will also automatically be closed.
|
||
|
||
I found that this caused problems with a few programs (e.g. cdplay and
|
||
workbone). As of the 1.1.60 kernel you can control this feature under
|
||
software control. A sample program is included in the sbpcd documentation
|
||
file (or use the [http://www.pobox.com/~tranter/eject.html] eject program).
|
||
You can also control the default behaviour by editing the kernel source file
|
||
sbpcd.h.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.10. I have a "special" CD that can't be mounted
|
||
|
||
If you have a particular disc that cannot be mounted, here are some possible
|
||
reasons:
|
||
|
||
1. It is an XA, CD-R, or CD-RW disc and your drive or the Linux driver does
|
||
not support reading these discs (this is only likely for very old
|
||
drives).
|
||
|
||
2. It is a DVD disc, which is only readable by a DVD-ROM drive.
|
||
|
||
3. The disc doesn't use an ISO-9660 file system (e.g. some use SunOS or
|
||
HFS).
|
||
|
||
4. It is an audio CD.
|
||
|
||
5. The CD is damaged or defective.
|
||
|
||
6. You put it in the drive upside down :-)
|
||
|
||
|
||
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.11. Do multi-platter CD-ROM drives work with Linux?
|
||
|
||
Several users have reported success with SCSI multi-disc CD-ROM changers. You
|
||
probably need to enable the "Probe all LUNs on each SCSI device" kernel
|
||
configuration option (this is not necessary if your CD changer is already
|
||
known to the SCSI-driver. Have a look at /usr/src/linux/drivers/scsi.c).
|
||
|
||
At least one user also had to increase a SCSI timeout value in the kernel
|
||
driver. A symptom of this is an error message like "wrong fs type, bad
|
||
option, bad superblock on /dev/sr5, or too many mounted file systems" when
|
||
trying to mount a CD for the first time, but a second mount immediately
|
||
afterwards succeeds. To increase the timeout increase the value of
|
||
IOCTL_TIMEOUT at the beginning of /usr/src/linux/drivers/scsi/sr_ioctl.c and
|
||
recompile the kernel. A value of 10000 instead of the default 3000 is
|
||
reported to work with a NEC Multispin 4Xc.
|
||
|
||
It might be necessary to create additional block special files, so that all
|
||
LUNs can be accessed. A device file is needed for every LUN. So for a 7 disc
|
||
changer /dev/sr0 to /dev/sr6 are needed (more if you have additional SCSI
|
||
CD-ROM drives). To create the block special file execute mknod /dev/sr? b 11
|
||
? as root with ? being the required number.
|
||
|
||
The Nakamichi MBR-7 7 disc changer, NEC Multispin 4Xc and Pioneer 12 disc
|
||
changer have been reported to work.
|
||
|
||
EIDE/ATAPI multi-disc changers are also available. The kernel has support for
|
||
some drives using the CDROM_SELECT_DISC ioctl function. The IDE-CD kernel
|
||
driver documentation file includes source code for a program to select
|
||
changer slots, or you can use various utilities such as the eject program
|
||
described earlier.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.12. I get "/cdrom: Permission denied" errors
|
||
|
||
Some CDs have root directory file permissions that only allow user root to
|
||
read them. This is an error on the part of the CD-ROM vendor and is a real
|
||
inconvenience. A more common occurrence is for certain files or directories
|
||
not to be world readable. Some people have patched their kernels to work
|
||
around the problem.
|
||
|
||
Also see the related question on hidden files later in this document.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.13. How do I interpret IDE CD kernel error messages?
|
||
|
||
What does it mean when I get a kernel message from the IDE CD-ROM driver like
|
||
"hdxx: code: xx key: x asc: xx ascq: x"?
|
||
|
||
This is an status/error message from the IDE CD-ROM drive. By default the
|
||
IDECD driver prints out the raw information instead of wasting kernel space
|
||
with error messages. You can change the default to display the actual error
|
||
messages by going into /usr/src/linux/drivers/block/ide-cd.c, changing the
|
||
value of VERBOSE_IDE_CD_ERRORS to 1, and recompiling the kernel.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.14. How can I tell what speed CD-ROM I have?
|
||
|
||
Here's one way. This command measures how long is takes to read 1500K of data
|
||
from CD:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|% time -p dd if=/dev/cdrom of=/dev/null bs=1k count=1500 |
|
||
|1500+0 records in |
|
||
|1500+0 records out |
|
||
|real 5.24 |
|
||
|user 0.03 |
|
||
|sys 5.07 |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
The transfer rate of single speed drives is 150 kilobytes per second, which
|
||
should take about 10 seconds. At double speed it would take five seconds,
|
||
quad speed would take 2.5, etc.
|
||
|
||
The "real" time above is probably the best number to look at -- in this case
|
||
it indicates a double speed drive. You can increase the amount of data
|
||
transferred to get a more accurate value (the data does not get cached). You
|
||
should probably run the command a few times and take the average.
|
||
|
||
I've also written a small C program that measures and reports CD-ROM data
|
||
transfer rate; I can send it to you on request.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.15. My CD-ROM stopped working after Linux was installed
|
||
|
||
The usual symptom is that the boot disk used to initially install Linux
|
||
recognized your CD-ROM drive, but after Linux was installed on the hard drive
|
||
or floppy and rebooted it no longer recognizes the CD-ROM.
|
||
|
||
The most common reason for this problem is that with some Linux distributions
|
||
the kernel that is installed on your hard drive (or floppy) is not
|
||
necessarily the same one that was on your boot disk. You selected a boot disk
|
||
that matched your CD-ROM hardware, while the kernel you installed is a
|
||
"generic" kernel that is lacking CD-ROM support. You can verify this by
|
||
following the troubleshooting guidelines discussed previously in this
|
||
document (e.g. start by checking /proc/devices).
|
||
|
||
The solution is to recompile the kernel, ensuring that the drivers for your
|
||
CD-ROM drive and any others that are needed (e.g. SCSI controller, ISO-9660
|
||
file system) are included. See the [http://www.ibiblio.org/LDP/HOWTO/
|
||
Kernel-HOWTO.html] Kernel HOWTO if you don't know how to do this.
|
||
|
||
If you passed any command line options to the boot disk (e.g. "hdc=cdrom")
|
||
you need to add these to your boot program configuration file (typically /etc
|
||
/lilo.conf).
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.16. There are "hidden" files on a CD which I can't read
|
||
|
||
Some CDs have files with the "hidden" bit set on them. Normally these files
|
||
are not visible. If you mount the CD with the "unhide" option then the files
|
||
should be accessible (this doesn't seem to be documented anywhere).
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.17. Where is the CD-ROM API documented?
|
||
|
||
If you want to write your own application, such as an audio CD player
|
||
program, you will need to understand the application programming interface
|
||
(API) provided by Linux.
|
||
|
||
Originally the CD-ROM kernel drivers used their own ioctl() functions to
|
||
support features specific to each drive. Header files such as /usr/include/
|
||
linux/sbpcd.h describe these. Because many of the drivers were based on other
|
||
drivers, the interfaces, while not identical, have a lot in common.
|
||
|
||
More recently there has been an initiative headed by David van Leeuwen
|
||
([mailto:david@tm.tno.nl] david@tm.tno.nl) to standardize the API for CD-ROM
|
||
drives, putting common code in one place and ensuring that all drivers
|
||
exhibit the same behaviour. This is documented in the file /usr/src/linux/
|
||
Documentation/cdrom/cdrom-standard.tex. Several kernel drivers support this.
|
||
As of the 2.0 kernel all CD-ROM drivers conform to this API.
|
||
|
||
My book, Linux Multimedia Guide, goes into quite a bit of detail on how to
|
||
program CD-ROM drives, especially for audio functions. See the end of the
|
||
References section.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.18. Why don't I see long filenames on this Windows CD-ROM?
|
||
|
||
If you have a CD-ROM which has long filenames under Windows but not under
|
||
Linux, it may be formatted using Microsoft's proprietary Joliet filesystem.
|
||
See the next question for a solution.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.19. Is Microsoft's Joliet filesystem supported?
|
||
|
||
Microsoft has created an extension to the ISO CD-ROM format called Joliet. It
|
||
allows for long filenames encoded using the 16-bit UNICODE format.
|
||
|
||
Starting with version 2.0.34 the Linux kernel has support for the Microsoft
|
||
Joliet file system extensions. You need to enable support for it in the
|
||
kernel.
|
||
|
||
If you want to display filenames with native language characters from Joliet
|
||
CD-ROMs correctly on the screen, you need to enable support in the kernel for
|
||
the appropriate NLS ISO8859 character sets.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.20. Does Linux support "enhanced" CDs?
|
||
|
||
Some audio CDs are "enhanced" with additional data. Typically you will find
|
||
that these CDs have the usual audio CD tracks as well as a data track which
|
||
can be mounted as an ISO-9660 file system.
|
||
|
||
An enhanced CD I examined had Microsoft Windows and Apple Macintosh
|
||
applications on it (which won't run directly under Linux of course, although
|
||
I had partial success running the Windows application under the WINE Windows
|
||
emulator). There were some GIF images which could be viewed using a standard
|
||
viewer such as xv and some animations in Apple QuickTime format which could
|
||
be viewed using the xanim program. It was a multi-session disk which some
|
||
very old CD-ROM drives do not support reading. On the disc was a readme.txt
|
||
file containing an Enhanced CD FAQ.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.21. Does Linux support DVD-ROM?
|
||
|
||
SCSI and ATAPI compliant DVD-ROM drives should work under Linux for reading
|
||
discs formatted with an ISO-9660 file system. In other words they will work
|
||
as a (possibly large) CD-ROM drive.
|
||
|
||
Many DVD-ROM discs use the UDF file system. Recent kernels have UDF
|
||
filesystem support.
|
||
|
||
A number of Linux MPEG-2 DVD players are available. For more information see
|
||
the [http://www.ibiblio.org/LDP/HOWTO/DVD-Playing-HOWTO.html] DVD Playing
|
||
HOWTO.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.22. Does Linux support CD-RW?
|
||
|
||
SCSI and ATAPI compliant CD-RW drives work under Linux for discs formatted
|
||
with an ISO-9660 or UDF file system. This includes the ability to write to
|
||
the disc. Utilities such as cdrecord can be used to erase a disc.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.23. How do I mount a multi-session disc?
|
||
|
||
You mount a multi-session disc like any other CD-ROM. The normal behaviour
|
||
for multi-session support is that the last session will be seen when you
|
||
mount the disc. You will not see multiple partitions. If it does not work it
|
||
could be for three reasons:
|
||
|
||
1. Your CD-ROM drive does not support reading multi-session CDs (it would
|
||
probably have to be quite old for this to be the case).
|
||
|
||
2. The Linux kernel driver for your CD-ROM type does not support
|
||
multi-session (mostly only some old proprietary, non-IDE/ATAPI and
|
||
non-SCSI drives fall into this category).
|
||
|
||
3. If you are mounting a CD with a file system other than ISO-9660, then
|
||
multi-session may not be supported.
|
||
|
||
|
||
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.24. How do I read a CD volume label?
|
||
|
||
There is a small utility called volname included with recent versions of the
|
||
eject program. Alternatively you can run this shell command:
|
||
|
||
+---------------------------------------------------------------------------+
|
||
|dd if=/dev/cdrom bs=1 skip=32808 count=32 |
|
||
+---------------------------------------------------------------------------+
|
||
|
||
assuming /dev/cdrom is the device file name for your drive.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.25. My IDE CD-R or CD-RW drive is not working with Linux
|
||
|
||
You need to use the IDE SCSI emulation driver for writable drives. See the
|
||
[http://www.ibiblio.org/LDP/HOWTO/CD-Writing-HOWTO.html] Linux CD-Writing
|
||
HOWTO for more information.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.26. Is the insert your brand/model here IDE CD-ROM drive supported?
|
||
|
||
Yes, of course it is. Linux supports the IDE interface used by all modern IDE
|
||
CD-ROM drives. It has been like this since kernel version 1.1.85.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.27. I can't seem to find a driver for my IDE drive in the kernel source?
|
||
|
||
Unlike for the older proprietary drives, there isn't a specific driver for
|
||
each model of ATAPI/IDE CD-ROM drives. All drives conforming to the standard
|
||
should work with the ATAPI CD-ROM driver included in the standard Linux
|
||
kernel.
|
||
-----------------------------------------------------------------------------
|
||
|
||
6.28. I'm having problems with my CD-ROM on Red Hat 7.1
|
||
|
||
You may be running into an issue with hardware that does not support DMA
|
||
(Direct Memory Access). RedHat ships a highly tuned version of the Linux
|
||
kernel which enables DMA on selected IDE controller chipsets. Information on
|
||
this issue can be found at [http://www.exocore.com/linux/rhl71dma/] http://
|
||
www.exocore.com/linux/rhl71dma/
|
||
-----------------------------------------------------------------------------
|
||
|
||
7. References
|
||
|
||
I have already mentioned the documentation files, typically installed in /usr
|
||
/src/linux/Documentation/cdrom. These can be a gold mine of useful
|
||
information.
|
||
|
||
The following Usenet FAQs are posted periodically to [news:news.answers]
|
||
news.answers and archived at Internet FTP sites such as [ftp://rtfm.mit.edu/]
|
||
ftp://rtfm.mit.edu/.
|
||
|
||
<EFBFBD><EFBFBD>*<2A>alt.cd-rom FAQ
|
||
|
||
<EFBFBD><EFBFBD>*<2A>comp.periphs.scsi FAQ
|
||
|
||
<EFBFBD><EFBFBD>*<2A>Enhanced IDE/Fast-ATA/ATA-2 FAQ
|
||
|
||
|
||
Several other Linux HOWTOs have useful information relevant to CD-ROM:
|
||
|
||
<EFBFBD><EFBFBD>*<2A>[http://www.ibiblio.org/pub/Linux/docs/HOWTO/unmaintained/SCSI-HOWTO]
|
||
Linux SCSI HOWTO
|
||
|
||
<EFBFBD><EFBFBD>*<2A>[http://www.ibiblio.org/LDP/HOWTO/Hardware-HOWTO.html] Hardware
|
||
Compatibility HOWTO
|
||
|
||
<EFBFBD><EFBFBD>*<2A>[http://www.ibiblio.org/LDP/HOWTO/Sound-HOWTO.html] Sound HOWTO
|
||
|
||
<EFBFBD><EFBFBD>*<2A>[http://www.ibiblio.org/LDP/HOWTO/Kernel-HOWTO.html] Kernel HOWTO
|
||
|
||
<EFBFBD><EFBFBD>*<2A>[http://www.ibiblio.org/LDP/HOWTO/Distribution-HOWTO.html] Distribution
|
||
HOWTO
|
||
|
||
<EFBFBD><EFBFBD>*<2A>[http://www.ibiblio.org/LDP/HOWTO/CD-Writing-HOWTO.html] CD Writing HOWTO
|
||
|
||
|
||
At least a dozen companies sell Linux distributions on CD-ROM; most of them
|
||
are listed in the Distribution HOWTO.
|
||
|
||
The following Usenet news groups cover CD-ROM related topics:
|
||
|
||
<EFBFBD><EFBFBD>*<2A>[news:comp.publish.cdrom.hardware] comp.publish.cdrom.hardware
|
||
|
||
<EFBFBD><EFBFBD>*<2A>[news:comp.publish.cdrom.multimedia] comp.publish.cdrom.multimedia
|
||
|
||
<EFBFBD><EFBFBD>*<2A>[news:comp.publish.cdrom.software] comp.publish.cdrom.software
|
||
|
||
<EFBFBD><EFBFBD>*<2A>[news:comp.sys.ibmpc.hardware.cd-rom] comp.sys.ibm.pc.hardware.cd-rom
|
||
|
||
<EFBFBD><EFBFBD>*<2A>[news:alt.cd-rom] alt.cd-rom
|
||
|
||
<EFBFBD><EFBFBD>*<2A>[news:alt.cd-rom.reviews] alt.cd-rom.reviews
|
||
|
||
|
||
The comp.os.linux newsgroups are also good sources of Linux specific
|
||
information.
|
||
|
||
A FAQ document on IDE and ATA devices can be found at [ftp://rtfm.mit.edu/pub
|
||
/usenet/news.answers/pc-hardware-faq/enhanced-IDE/] ftp://rtfm.mit.edu/pub/
|
||
usenet/news.answers/pc-hardware-faq/enhanced-IDE/ and at [http://
|
||
www.seagate.com/techsuppt/faq/faqlist.html] http://www.seagate.com/techsuppt/
|
||
faq/faqlist.html.
|
||
|
||
A web site dedicated to multimedia can be found at [http://www.scala.com/
|
||
multimedia/] http://www.scala.com/multimedia/. Creative Labs has a web site
|
||
at [http://www.creaf.com/] http://www.creaf.com/.
|
||
|
||
The Linux Software Map (LSM) is an invaluable reference for locating Linux
|
||
software. The LSM home page is at [http://www.ExecPC.com/lsm/] http://
|
||
www.ExecPC.com/lsm/. and there is an on-line browsable version at [http://
|
||
www.boutell.com/lsm/] http://www.boutell.com/lsm/.
|
||
|
||
Another great site for finding Linux applications is [http://
|
||
www.freshmeat.net/] http://www.freshmeat.net/.
|
||
|
||
The Linux mailing list has a number of "channels" dedicated to different
|
||
topics. To find out how to join, send a mail message with the word "help" as
|
||
the message body to [mailto:majordomo@vger.kernel.org]
|
||
majordomo@vger.kernel.org.
|
||
|
||
The Linux Documentation Project has produced several books on Linux,
|
||
including Linux Installation and Getting Started. These are freely available
|
||
by anonymous FTP from major Linux archive sites or can be purchased in
|
||
hardcopy format.
|
||
|
||
Finally, a shameless plug: If you want to learn a lot more about multimedia
|
||
under Linux (especially CD-ROM and sound card applications and programming),
|
||
check out my book Linux Multimedia Guide, ISBN 1-56592-219-0, published by
|
||
O'Reilly and Associates. As well as the original English version, French and
|
||
Japanese translations are now in print. For details, call 800-998-9938 in
|
||
North America or check the web page [http://www.ora.com/catalog/multilinux/
|
||
noframes.html] http://www.ora.com/catalog/multilinux/noframes.html.
|