在 Red Hat 7.3 中安装 Sony CRX195A1 CDRW 驱动器
我决定冒险购买一台 CD 刻录机用于我的电脑,但我意识到我对 CDRW 驱动器和 Linux 一窍不通。所以我四处询问,阅读了 CD 刻录 HOWTO,查阅了关于 cdrecord 1.9 版本支持哪些驱动器的 FAQ,并阅读了 Andy McFadden 的 CD-Recordable FAQ。此外,我在 Google 上搜索了关于 CD 刻录和 Linux 的信息。所有这些都非常有启发性,我很快列出了我愿意购买的制造商的产品:Phillips、Sony、Yamaha、Plextor 和 HP。我还从我的研究中收集了几个关键点,这些关键点将决定这项工作的成败
Linux 系统必须具有 SCSI 支持,这可能意味着您必须重新编译内核。
系统必须具有 IDE-SCSI 仿真支持;同样,您可能必须重新编译内核。
必须对 grub/lilo 和 modules.conf 进行一些修改(请参阅文章末尾的列表 1 和 2)。
我对这些要点做了仔细的笔记,并对我的系统(Red Hat 7.3,stock 2.4.18-3 内核)进行了一些研究。我了解到默认的 RH 7.3 内核包含了我需要的所有东西,无需重新编译。有了这些,我开始缩小我的驱动器选择范围。
在去了当地的百思买和 Circuit City,并在一些在线零售商(如 newegg.com)上查看了一些产品后,我将我的列表缩小到 Sony,并选择了 CRX195A1 型号。我选择这款型号是因为它相对较新、便宜(在 20 美元邮件退款后为 69.99 美元)且速度快(40x12x48)。然而,该型号未在 Linux 的任何支持列表中。这让我犹豫了一下,但较早的型号(CRX145)已在 Andy 的 FAQ 中列出,因此我相当确信我会没问题。不过,我是一个杞人忧天的人,我想要一些保证。所以我浏览到索尼的支持网站,并尝试了他们的在线帮助功能(它允许您与支持技术人员在线聊天)。我告诉技术人员我知道该驱动器在 Linux 中不是 受支持的,但它会 工作 吗?我立刻被告知不会。我感谢了他,又尝试了一次,换了不同的技术人员,总共三次,每次都被不同的人告知该驱动器无法工作。我认为我被告知它无法工作是因为他们不知道真正的答案,并且懒得去检查。凭借有根据的猜测和冒险精神,我购买了该驱动器。
在物理安装驱动器之前,我为迎接它的到来做好了系统准备。根据 HOWTO 和 FAQ,我必须弄清楚 CD 刻录机在 /dev/hdX 链中的位置。我有一个板载 IDE 控制器,我的光驱连接到它,还有一个 Promise UltraATA 100 控制器卡,我的硬盘驱动器连接到它。我绘制了驱动器布局,如下所示
onboard controller: /dev/hda primary master /dev/hdb CDROM primary slave /dev/hdc SONY CRX195A1 secondary master (the drive was defaulted to master) /dev/hdd secondary slave promise controller: /dev/hde primary hard drive primary master /dev/hdf primary slave /dev/hdg secondary hard drive secondary master /dev/hdh secondary slave
有了这些知识,我知道我的新 CD 刻录机将是 /dev/hdc,所以我将行 append="hdc=ide-scsi" 添加到我的 grub.conf 中。此行启用 /dev/hdc 的 IDE-SCSI 仿真。我关闭了系统并打开了机箱。在物理安装驱动器并连接所有电缆后,我再次开机,确保系统识别新的 IDE 设备。一切进展顺利,所以我登录并开始测试阶段。
第一个测试是发出命令 cdrecord -scanbus。没有列出任何驱动器,我的心开始跳得更快。然后我意识到我忘记将行 options ide-cd ignore="hdc" 添加到 /etc/modules.conf 中。此行阻止系统为 /dev/hdc 上的驱动器加载 IDE-CD 驱动程序,并允许 IDE-SCSI 仿真驱动程序用于该驱动器。快速重启后,cdrecord 报告了我的新驱动器,正如预期的那样!使用 cdrecord 的手册页,我成功地刻录了一张音频 CD。其他测试,例如将文件备份到 CD 和刻录 ISO 映像,也使用 cdrecord 和 xcdroast 都可以正常工作。不幸的是,我无法进行 CD 到 CD 的复制。我推测为 /dev/hdb 启用 IDE-SCSI 仿真并修改 modules.conf 以忽略 hdb 可能会产生所需的效果,所以我进行了更改并重新启动。果然,xcdroast 和 cdrecord 都报告了我的 CD-ROM 和 CDRW 驱动器。在稍微重新配置 xcdroast 后,我成功地完成了 CD 到 CD 的复制。在完成上述所有测试后,我不得不说该驱动器可以工作。请注意,我没有测试该驱动器的重写功能,因为我从不使用可重写介质。
假设您有不同的驱动器组合。在一个具有两个硬盘驱动器(/dev/hda 和 /dev/hdb)和一个 CD-ROM 在 /dev/hdc 上的系统中,您会将 CD 刻录机添加到 /dev/hdd。此外,假设您不需要或不想进行磁盘到磁盘的复制。在物理连接驱动器并开机后,您首先将行 append="hdd=ide-scsi" 添加到 lilo.conf,然后将行 ignore="hdd" 添加到 /etc/modules.conf。再次重启,瞧——一个工作的 CD 刻录机。
应该注意的是,您可以对您希望的任何驱动器组合启用 IDE-SCSI 仿真。它们不必在驱动器链中是连续的,您也不需要为 IDE 通道上的所有驱动器启用 IDE-SCSI——您可以有选择地这样做。也就是说,您可以为 /dev/hdd 启用 IDE-SCSI 仿真,但不为 /dev/hdc 启用,如上面的示例所示。此外,如果您希望 xcdroadst/cdrecord 看到它们并能够进行磁盘到磁盘的复制,您只需要在 CD 刻录机以外的光驱上启用 IDE-SCSI。
驱动器规格
写入速度:40x 重写速度:12x 读取速度:48x 随机访问时间:150ms 缓存内存:2MB 缓存欠载技术:是!写入模式:Disc At Once、Track At Once、Session At Once、Packet Writing 支持的光盘格式:CD-DA、CD-ROM (XA) 视频 CD、照片 CD(多会话)CD 文本、CD Extra
系统要求(来自包装盒)
奔腾 II 400MHz 或更快
Windows 98/2K/ME/XP
64MB 内存和 1 GB 硬盘空间
测试系统
奔腾 III 1000MHz
256MB 内存
Red Hat Linux 7.3,默认 2.4.18-3 内核
cdrecord 版本 1.10-11(由 Red Hat 提供)
xcdroast 版本 .98-a9-8(由 Red Hat 提供)
该驱动器很便宜(89.99 美元),而 20 美元的邮件退款真正让我决定选择这款型号。我测试了高达 32x 的写入速度(我拥有的 xcdroast 版本仅支持高达 32x),我对驱动器的整体写入速度印象深刻。在 ISO 刻录测试中,我在 66 秒内刻录了 Gentoo live CD ISO 映像(约 230MB)!索尼的品牌名称让我感到放心,因为我过去曾使用过各种其他索尼光驱,效果都很好。cdrecord 确实使用了驱动器的防烧死功能,这是另一个优点。
缺点是没有 Linux 支持。在线支持完全没有帮助令人失望,并且驱动器没有附带任何额外的东西或花哨的东西。例如,包装盒中未包含任何类型的空白光盘。即使对于 Windows 安装,手册和快速入门指南也令人失望,几乎毫无用处。我不建议没有经验的 Windows 用户使用这款驱动器,但对于阅读过所有 HOWTO 和 FAQ 的 Linux 用户来说,这应该完全没有问题。
我阅读的 FAQ 和 HOWTO 是发行版中立的,其中包含的步骤应同样适用于任何现代发行版。
cdrecord 1.9 版本中 cdrecord 支持的驱动器列表
Andy McFadden 的 CD-Recordable FAQ
gamesnet.net 上 #cofr 中的各种 IRC 用户
将 append="hdX=ide-scsi" 添加到 lilo.conf 或 grub.conf,其中 X 是 CD 刻录机的字母。如果您希望进行 CD 到 CD 的复制,请记住添加任何其他光驱,例如,append="hdb=ide-scsi hdc=ide-scsi"。
修改 /etc/modules.conf 以包含行 options ide-cd ignore="hdX",其中 X 是您正在使用的驱动器的字母。
default=0 timeout=10 splashimage=(hd0,0)/grub/splash.xpm.gz title Red Hat Linux (2.4.18-3) root (hd0,0) kernel /vmlinuz-2.4.18-3 ro root=/dev/hde3 vga=792 append="hdb=ide-scsi hdc=ide-scsi" initrd /initrd-2.4.18-3.img
alias parport_lowlevel parport_pc alias sound-slot-0 emu10k1 post-install sound-slot-0 /bin/aumix-minimal -f /etc/.aumixrc -L >/dev/null 2>&1 || : pre-remove sound-slot-0 /bin/aumix-minimal -f /etc/.aumixrc -S >/dev/null 2>&1 || : alias usb-controller usb-uhci alias eth0 3c59x alias char-major-195 NVdriver options ide-cd ignore="hdb hdc"
请注意,作者对因使用本文中的信息而造成的任何损失、损害或事件不承担任何责任。本文档按“原样”提供,不对其在作者自身系统以外的任何系统中的可行性或准确性做出任何保证。使用此信息风险自负。
电子邮件: rpowell@gomembers.com