请注意:以下文档使用于大多数Linux版本
如何在Linux下刻录数据光盘
在Linux下实现光盘刻录的软件最著名的工具是cdrecord。我们重点说明cdrecord,mkisofs的用法,以用如何配置SCSI与IDE设备。许多图形界面的光盘刻录软件其实在底层调用的就是cdrecord,这个软件我们可以在本站的APT服务器上找到。在Linux系统中,cdrecord是与SCSI通用设备一起工作的,我想大部份读者用的都是IDE光盘刻录机,所以配置的关键就是将IDE设备摸拟成SCSI设备。要想将IDE设备摸拟成SCSI设备,系统内核就必须支持ATAPI-SCSI emulation或SCSI host adapter emulation,Quick Linux已经默认支持了。
第一步,我们应该知道我们的光驱与刻录机对应是IDE哪一个通道,在Linux下是使用哪一个设备名。如果你是新装的AS3,系统会自动添加一些参数传递给系统内核,编辑/boot/grub/grub.conf会看到kernel /vmlinuz-2.4.21-4.EL ro root=LABEL=/ 后面多了hdd=ide-scsi这几个字;如果你是后安装的刻录机,你需要把hdd=ide-scsi手工添加上去。hdx是指光驱或刻录机在Linux下对应的IDE设备名。
第二步,当重新引导系统完毕后,我们现在需要做得是将sg与ide-scsi这两个内核驱动模块加载到系统内核里去,并为它们设定SCSI设备名。sg是指SCSI设备驱动模块,ide-scsi是指IDE设备摸拟SCSI设备驱动模块。操作如下:
modprobe sg
modprobe ide-scsi
注意:如果你是新装的AS3,系统会自动添加这两个模块;如果不是,你要自己手工运行。
第三步,安装cdrecord。在AS3上,可以输入apt-get install cdrecord,会到本站的APT服务器上下载安装。
第四步,检查cdrecord是否正确找到了刻录机,请键入如下命令:
cdrecord -scanbus
我的机器显示出这样:
scsibus0:
0,0,0 0) 'ATAPI ' 'CD-RW 52X24 ' 'K.GD' Removable CD-ROM
这说明发现一台刻录机在0,0,0总线上,一切正常;
第五步,就也是最后一步了,我们只需要用cdrecord命令进行光盘刻录就行了。请键入如下命令:
cdrecord -v dev=0.0.0 aaa.iso
这是将当前目录下的aaa.iso刻到光盘上;
如果你用的是CDRW盘片,可以用cdrecord -v dev=0,0,0 blank=fast来快速格式化CD-RW盘片。
我看过不少文章说cdrecord命令里要加speed=2之类指定刻录速度的参数,其实不用,cdrecord很聪明,它会自动地选择最高刻录速度,加了参数反而不能正常运行。
mkisofs用法:
生成ISO文件的任务就接给mkisofs这个命令来完成了,请输入如下命令:
mkisofs -r -o temp/aaa.iso data/
具体参数解释如下:
-r 支持长文件名
-o 指定输出目标文件
目标目录最后在新生成光盘中做为根目录存在,里面存放的是你需要刻录的数据。这个目标目录最好是新建的,千万不用选择/tmp或用户主目录,因为这些目录内会有一些临时文件或隐含文件存在。我刚开始不知道,最后才发现新刻录的光盘里根目录下有一些莫名其妙的文件。如果你是从光盘直接生成ISO文件,就需要用到dd这个命令了。请键入如下命令:
dd if=/dev/cdrom of=temp/aaa.iso
具体参数解释如下:
if 接定数据源设备
of 接定目录文件
AS3用户使用mkisofs需要用apt-get install mkisofs来安装。