现在的中高档光盘刻录机CD-R和CD-RW是越来越便宜,各种品牌型号的光盘刻录机已经成为很多朋友家里电脑的标准外设。在WINDOWS中安装和使用CD-R和CD-RW确实是非常容易的事情,不过在Linux平台中想把CD-RW光盘刻录机玩转,那可不是一件轻松的事情,不信,那您就先来看看小编的Linux下IDE CD-RW光盘刻录机安装手记吧。
在详细解说在Linux操作系统中如何安装和使用IDE接口的CD-RW之前,让我给您讲讲本人的在Linux玩普通CD-ROM光盘驱动器的历史吧。说起来也好笑,小编最初接触和自学Linux是99年的事情了,那时候最先玩的是TurboLinux 4.0。当时买来了3张一套的TURBO Linux4.0光盘和一本Linux入门的书籍就匆匆在自己的K6233、32MB、4.3GB、24X CD-ROM的电脑上练习Linux。好不容易把Linux在硬盘上成功安装,并能和WINDOWS98和平共处(这当然在分区损失数据N次的惨痛教训之后)。装完了Linux才发现在Linux却不知道如何使用光驱。好不容易从朋友处得知原来Linux操作系统中的光驱是要加载的,于是按照书本杂志上介绍的方法加载光驱,但总是不能成功。好在本人死活不甘心在没有光驱的情况下使用Linux,最后经过长达1个寒假的努力,终于发现了不能正确使用光驱的原因,原来自己初学Linux,使用Linux命令的时候没有注意大小写。
这就是我初学Linux的时候印象最深刻的教训。好了,现在我来谈谈如何在Linux下安装IDE接口的CD-RW刻录机。IDE接口的CD-RW刻录机作为一种廉价的数据存储设备广受家庭用户和中小型公司的欢迎。目前中低档的IDE接口的CD-RW刻录机比起SCSI接口的光盘刻录机要便宜许多,性能也不错。对硬件和Linux比较熟悉的朋友都知道在Linux下安装SCSI接口的CD-RW比较容易,因为这牵涉到Linux内核kernel的一些问题。一般来说,kernel对SCSI接口的光盘刻录机的支持相对IDE接口要好一些。尽管如此,我们在Linux下安装IDE接口的CD-RW刻录机的时候也可以通过以下方法来解决kernel里面的一些问题的。
安装:
以安装HP公司的9030 IDE CD-RW光盘刻录机为例,首先我们要弄清楚HP 9030的各项参数,从它标明的10X4X32 CD-RW我们就可以知道这是10速写CD-R碟片,3速写CD-RW碟片,32速读取CD-ROM数据的光盘刻录机。这款刻录机的性能还是很不错的。我们可以把9030 IDE CD-RW光盘刻录机接在计算机主板上的从盘的接口商,10GB的硬盘使用的是主盘接口。我使用的计算机配置为Athlon 700, 128 MB, AMD Viper芯片组。
为了更好的说明问题,这台计算机上已经存在以下的软件,硬件环境,并且运行情况良好:
1.Linux在计算机上已经完全安装。使用的Linux版本是Mandrake 7.2 ,2.2.17 kernel
2.kernel在 /usr/src/Linux 目录中。
3.9030 IDE CD-RW光盘刻录机硬件安装完毕,并且计算机启动时能正确识别9030 IDE CD-RW光盘刻录机的型号。关于CD-RW的硬件安装过程和方法一般的读者大都能正确安装,在这里不再讲述。
4.计算机上除了有9030 IDE CD-RW光盘刻录机,没有其他的CD-ROM光盘驱动器
5.计算机上没有任何SCSI设备
第一步:重新编译内核Kernel
注意:这里讲述的重新编译内核的方法是针对安装IDE CD-RW光盘刻录机而进行的编译,不太适用于其他的场合,如果想了解更为详细的编译内核Kernel的方法,请参考其他专业文章或者书籍。
在Linux中我们遇到的最大的问题就是Linux总是喜欢把我们的ATAPI/IDE CD-RW 设备当成SCSI设备看待,这当然不是我们所期望的。为了让Linux能正确识别我们的ATAPI/IDE CD-RW 设备,我们只好在内核上手动进行修改。
打开内核配置菜单(可使用“make xconfig, make menuconfig”等),然后按照下面的数据修改内核,注意,在修改内核之前要做好原内核的备份工作,防止发生意外的时候无法恢复原来稳定的系统:
1. "Block Devices" 菜单
关闭 "IDE CD-ROM Support"
打开 "SCSI emulation support"
2."SCSI Support"菜单
打开 "SCSI support"
打开 "include SCSI CD-ROM drivers"
打开 "SCSI generic support"
修改完后保存新配置好的内核。
第二步:察看信息
在完成内核修改后,使用新内核重新启动计算机,如果计算机能顺利启动,Linux使用新内核引导也正常,那是最好的事情。在启动的时候别忘记观察我们的IDE接口的刻录机是否被正确认出。不过在启动的过程中相应的参数显示的时间非常短,一般情况下无法及时看到相应的系统信息。
使用超级用户身份登陆Linux,在终端中使用dmesg | more 命令可以看到非常详细的系统启动信息。其中有这么一段信息是关于SCSI设备的。我们修改内核的目的就是让Linux系统把IDE接口的设备当作SCSI设备来确认。如果出现了以下信息,那么说明SCSI的emulation模式已经起作用了。
scsi0 : SCSI host adapter emulation for IDE ATAPI devices
scsi : 1 host.
Vendor: HP Model: CD-Writer+ 9300 Rev: 1.0b
Type: CD-ROM ANSI SCSI revision: 02
Detected scsi CD-ROM sr0 at scsi0, channel 0, id 0, lun 0
从上面的信息当中我们不难看出Linux系统已经把IDE接口的光盘驱动器设备当作SCSI接口来使用,在计算机安装的HP 9030 IDE CD-RW 光盘刻录机的型号,生产厂商等信息已经能正确的被Linux系统认出。可以说这台HP 9030 IDE CD-RW 光盘刻录机在Linux操作系统中基本上是安装调试成功了。
进入KDE图形用户界面我们还可以进一步了解到HP 9030 IDE CD-RW 光盘刻录机在系统中更详细的信息。Linux把新的CD-RW映射成SCSI设备来使用了,在Linux系统中,这台HP 9030 IDE CD-RW 光盘刻录机被默认为 /dev/scd0。原来的CD-ROM驱动器的连接/dev/cdrom应当改为指向SCSI设备,记住,在使用编译过的新内核的Linux中已经不再支持IDE CD-ROM 了,除非你在把内核改回来。
进入/dev 目录,使用ln -sf /dev/scd0 /dev/cdrom 命令把SCSI模拟成CD-RW。
第三步:加载驱动器
完成前面两个步骤之后,Linux已经把/dev/cdrom当作SCSI模拟的CD-RW设备了。不过此时的HP 9030 IDE CD-RW 光盘刻录机并没有加载,我们也不能从HP 9030 IDE CD-RW 光盘刻录机中读取光盘数据。
我们可以做一个测试:
1.创建一个名为: /cdtest 的目录
2.在CD-RW中放入数据光盘
3.键入mount -t auto /dev/scd0 /cdtest 命令
4.查看/cdtest 的目录,看看CD-ROM是否是可读状态
如果CD-ROM已经被正确加载,那么光盘的容量在/cdtest 中使能显示的。卸载CD-RW可以使用umount /cdtest命令。
现在要做的是编辑/etc/fstab里面的文件,文件里有系统中可加载媒体的详细列表。检查是否有下面的一行:
/dev/hdc /mnt/cdrom iso9660 ro,noauto,user,exec 0 0
如果有,则把它修改成/dev/scd0 /mnt/cdrom iso9660 ro,noauto,user,exec 0 0 ,目的是改变设备的指向。从(/dev/hdc) 指向(/dev/scd0)。
保存修改后的文件到 /etc/fstab。好了,以后在系统中可以使用mount /dev/scd0 或者mount /dev/cdrom来加载CD-RW驱动器了。
第四步:安装和调试CD刻录软件
完成了CD-RW驱动器的硬件安装和系统调试工作,接下来就是安装相应的刻录软件了。遗憾的是在Linux下可供光盘刻录机使用的刻录软件并不多,没有像在WINDOWS中使用的那样方便了。在这里推荐使用cdrecord这个Linux下刻录专用软件。
安装好这个软件后,可以通过cdrecord -scanbus命令来搜索CD-R 和CD-RW设备。具体的使用软件刻录的过程也不必要进行详细说明了,有些Linux下的刻录软件使用的是图形用户界面GUI,使用起来就和WINDOWS中的刻录软件差不多的。一般能在Windows下熟练进行刻录工作的朋友都能正确掌握在Linux下使用软件刻录光盘的方法。