本节列出了当前 Linux 支持的 CD-ROM 驱动程序和接口。此处的信息基于最新的稳定 Linux 内核,在撰写本文时,该内核版本为 2.4.4。
此信息适用于 Intel x86 平台上的 Linux。其中大部分也适用于其他处理器架构上的 Linux。
ATAPI(ATA 数据包接口)是一种用于控制大容量存储设备的协议。它建立在 ATA(AT 连接)接口之上,ATA 接口是为硬盘驱动器开发的 IDE 接口的官方 ANSI 标准名称。ATAPI 通常用于硬盘、CD-ROM 驱动器、磁带驱动器和其他设备。目前,它是最流行的接口类型,它提供了 SCSI 的大部分功能,而无需昂贵的控制器或电缆。
Linux 内核有一个设备驱动程序,它应该适用于任何兼容 ATAPI 的 CD-ROM 驱动器。提供兼容驱动器的供应商包括 Aztech、Mitsumi、NEC、Sony、Creative Labs 和 Vertos。如果您最近购买了 CD-ROM 驱动器,特别是当它是四倍速或更快的速度时,它几乎可以肯定是 IDE/ATAPI。
Linux 还有一个 IDE SCSI 模拟内核驱动程序,该驱动程序使 IDE/ATAPI 设备在软件中显示为 SCSI 设备,从而允许使用 SCSI 设备驱动程序而不是原生 ATAPI 驱动程序。如果您有一个没有为其编写原生驱动程序的 ATAPI 设备(例如,ATAPI PD-CD 或 CDR 驱动器),这将非常有用;您可以将此模拟与适当的 SCSI 设备驱动程序一起使用。
SCSI(小型计算机系统接口)是 CD-ROM 驱动器的常用格式。它的主要优点是传输速率相当快、具有多设备能力以及在各种计算机平台上的支持。SCSI 的一些缺点是需要相对昂贵的控制器卡和电缆。
任何块大小为 512 或 2048 字节的 SCSI CD-ROM 驱动器都应该在 Linux 下工作;这包括市场上绝大多数的 CD-ROM 驱动器。
您还需要一个受支持的 SCSI 控制器卡;有关接口硬件的更多信息,请参阅 Linux SCSI HOWTO。
请注意,一些较旧的 CD-ROM 驱动器使用带有修改接口的专有控制器,该接口与 SCSI 不完全兼容(例如,它可能不支持在总线上添加其他 SCSI 设备)。这些驱动器很可能不能在 Linux 下工作。
有几种使用专有接口的 CD-ROM 驱动器可供选择;接口通常在声卡上提供。也提供与声卡上提供的接口相当的简单接口卡。这些驱动器通常比 SCSI 驱动器成本更低且体积更小。它们的缺点是缺乏标准化和可扩展性。
请注意,专有接口有时会被错误地称为 IDE 接口,因为与 IDE 硬盘一样,它们使用基于 PC/AT 总线的简单接口。更令人困惑的是,一些供应商,最著名的是 Creative Labs,已经发布了许多不同类型的 CD-ROM 驱动器,并在其声卡上提供了专有、SCSI 和 ATAPI 接口。
下表列出了已知在 Linux 下受支持的专有 CD-ROM 驱动器。其他设备的驱动程序可能在最新的开发内核中或作为内核补丁提供。后者通常可以在 ftp://www.ibiblio.org/pub/Linux/kernel/patches/cdrom/ 找到。另请查看内核发行版附带的文档文件,通常安装在/usr/src/linux/Documentation/cdrom中,以获取最新信息。
供应商 | 型号 | 内核驱动程序 | 注释 |
---|---|---|---|
Panasonic | CR-521 | sbpcd | 注释 1 |
Panasonic | CR-522 | sbpcd | 注释 1 |
Panasonic | CR-523 | sbpcd | 注释 1 |
Panasonic | CR-562 | sbpcd | 注释 1 |
Panasonic | CR-563 | sbpcd | 注释 1 |
Creative Labs | CD-200 | sbpcd | |
IBM | 外部 ISA | sbpcd | 注释 2 |
Longshine | LCS-7260 | sbpcd | |
Teac | CD-55A | sbpcd | |
Sony | CDU-31A | cdu31a | |
Sony | CDU-33A | cdu31a | |
Sony | CDU-535 | sonycd535 | 注释 3 |
Sony | CDU-531 | sonycd535 | |
Aztech | CDA268-01A | aztcd | 注释 4 |
Orchid | CDS-3110 | aztcd | |
Okano/Wearnes | CDD110 | aztcd | |
Conrad | TXC | aztcd | |
CyCDROM | CR520ie | aztcd | |
CyCDROM | CR940ie | aztcd | |
GoldStar | R420 | gscd | 注释 5 |
Philips/LMS | CM206 | cm206 | 注释 6 |
Mitsumi | CRMC LU005S | mcd/mcdx | 注释 7, 8 |
Mitsumi | FX001 | mcd/mcdx | 注释 7, 8 |
Optics Storage | Dolphin 8000AT | optcd | |
Lasermate | CR328A | optcd | |
Sanyo | H94A | sjcd | |
various | various | isp16 | 注释 9 |
这些驱动器可能以 Creative Labs、Panasonic、Matsushita 或 Kotobuki 的名称销售。
此驱动器与 Panasonic CR-562 相同。
也可能以 Procomm 名称销售。
此驱动程序仅适用于 CDA268-01A。其他型号,包括 CDA268-03I 和 CDA269-031SE,不是专有的,应使用 IDECD (ATAPI) 内核驱动程序。
也可能作为 Reveal Multimedia Kit 的一部分销售。
Philips CM205 不受此驱动程序支持,但可以从 ftp://www.ibiblio.org 的 /pub/Linux/kernel/patches/cdrom/lmscd0.4.tar.gz 获取单独的 alpha 版本驱动程序
也可能以 Radio Shack 名称销售。
有两个驱动程序可用。“mcd”是原始驱动程序,“mcdx”是具有更多功能(XA 和多会话支持)的较新驱动程序。
此驱动程序适用于连接到 ISP16、MAD16 或 Mozart 声卡上的接口的 CD-ROM 驱动器。
如果您的内核不支持此处列出的驱动器,您可能需要升级到较新的版本。
如果您的驱动器不是此处列出的型号之一,特别是如果它是最近购买的并且是四倍速或更快的速度,那么它可能使用上一节中列出的 IDE/ATAPI 接口。Linux CD-ROM 用户最常犯的错误是假设连接到 SoundBlaster 卡的任何驱动器都应使用 SBPCD 驱动程序。 Creative Labs 和大多数其他供应商不再销售专有接口驱动器,他们正在遵循标准的 ATAPI/IDE 接口。
有些外部存储设备,包括 CD-ROM 驱动器,连接到个人计算机的并口。在许多情况下,这些设备内部使用 IDE 接口,并结合一个适配器,将内部 IDE 总线连接到 PC 并口。
Linux 有一个并口 IDE 驱动程序,它支持大多数并口设备。在撰写本文时,它支持来自以下供应商的设备(以及大多数与这些设备兼容的无名和克隆驱动器):ATEN、Avatar、DataStor、Fidelity International Technology、Freecom、Hewlett-Packard、Imation、KT Technology、KingByte Information Corp.、Maxell、MicroSolutions、OnSpec、Shuttle Technology、SyQuest 和 ValuStore。
更多信息可以在 http://www.torque.net/parport/ 找到。
使用 PCMCIA SCSI 或 IDE 适配器,您可以将外部 CD-ROM 驱动器连接到笔记本电脑。安装适当的 PCMCIA 内核驱动程序后,驱动器将像任何其他 IDE 或 SCSI 驱动器一样出现。
有关更多信息,请参阅 Linux PCMCIA HOWTO。
通用串行总线支持大容量存储设备。USB CD-R 和 CD-RW 驱动器很受欢迎,因为它们可以在系统之间快速轻松地移动。
您需要为“USB 大容量存储支持”配置内核。这使得 USB 存储设备看起来像 SCSI,尽管它们不使用相同的设备文件。有关更多详细信息,请参阅 Linux USB HOWTO。