手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网站运营>建站经验>列表

在Linux上刻录CD

来源:互联网 作者:west263.com 时间:2008-04-16
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

0,4,0 4) *
0,5,0 5) *
0,6,0 6) *
0,7,0 7) *

每一项的前三个数字分别指 SCSI 总线、设备标识和 LUN(逻辑单元号,Logical Unit Number)。(第四个数字也是设备标识。) cdrecord 需要这三个数字。在上面的示例中,CD 刻录机是 0,1,0。SCSI 总线 0 上的设备都能够缩写为 1,0,即省去头一个 0。这是个公共约定。假如有其他总线的话,则必须指定 — 没有快捷方式。

现在向盘中写内容:

$ cdrecord -v -eject speed=8 dev=0,1,0 test.iso

在上面的示例中:

  • -v 指周详方式
  • -eject 在完成写任务后弹出盘
  • -speed 指定写速度(8)
  • -dev 是从 cdrecord -scanbus 获得的设备号(0,1,0)
  • 最后一个是所刻录的映像的名称(test.iso)

对于创建用于公用分发的盘,这是一种简单且可用的方法,因为他创建了能够在任何 Windows 或 Linux 系统上读取的盘。 mkisofs 本身就很适合于创建供下载的 .iso,而且 mkisofs 能够为许多平台创建文档系统。请参阅 mkisofs 联机帮助页以获取更多信息。

在一台运行速度极快且内存很大的机器上,您能够在刻录期间从容地处理非 CPU 密集型任务,但是在刻录盘期间最好别做别的事情。激光器不能先停下来,然后从停下来的地方重新开始,所以任何中断都是致命的。

cdrecord 将试图以最快速度运行刻录机,因此不必指定速度,但是,应该根据经验来判断如何做。指定较慢的速度对于纠正错误和缓冲区欠载运行很有用。采用“burn- proof”技术的新型驱动器(研发这项技术的初衷和他现在的名字正好相反;同样,谁取的这些名称呢?)不会有老式驱动器那样的缓冲区欠载运行烦恼。

复制盘

要直接将内容从源盘复制到可刻录盘,请使用下面的命令:

$ cdrecord -v dev=0,1,0 speed=4 -isosize /dev/scd0

这条命令直接将 CD-ROM 即 /dev/scd0 的内容“流”入 CD 刻录机 dev=0,1,0。不要在速度慢的旧机器上这么做。直接复制速度很快,但却更容易出错。更好的做法是:先将源盘的内容复制到硬盘驱动器,再从硬盘驱动器复制到 CD 刻录机:

$ mount /cdrom
$ dd if=/dev/scd0 of=/tmp/diskfile.iso
$ cdrecord dev=0,1,0 speed=8 fs=8m -v -eject -dummy /tmp/diskfile.iso

请注意两个新选项 fs=8m-dummyfs=8m 定义了环形缓冲区的大小:在一定程度上,越大越好。记住,中断是致命的;假如什么东西让数据传送慢下来了,那么 fs=8m 将创建一个足够大的缓冲区来让刻录机保持运行。假如 8 MB 还不够,那么您可能需要一台更好的 PC。另一方面,超过 8 MB 也不一定更好,因为操作系统重新装入 MMU(内存管理单元,Memory Management Unit)表时会浪费时间。缺省值是 4 MB。

-dummy 是个了不起的选项,能够用他来先进行一次“排练”,然后在实际的盘上冒险。刻录机执行一切操作,但是不打开激光头,这使用户有机会在将内容提交到盘上之前捕获错误。

多段刻录

CD 由段构建而成,而段由磁道构成。只有一个段的盘上有一个导入点、一个 TOC(目录,table of content)、数据和一个导出点,导出点标记着这张盘的终点,并阻止在这张盘上进行进一步的刻录。 mkisofs 将单独段链接在一起。用 GUI 程式(如 X-CD-Roast 或 KonCD)创建多段刻录盘可能要更容易一些,但这里演示的是如何用命令行工具完成这一任务。

第一次在盘上刻录一个段时,请在 cdrecord 中使用 -multi 开关:

$ cdrecord -v -eject speed=8 dev=0,1,0 -multi test.iso

盘将会以某种方式被固定下来,使得盘可读,也能够添加更多数据。要向这张盘中添加更多段, mkisofs 需要知道起始扇区号和结束扇区号,能够象下面这样来找到这些号码:

$ cdrecord dev=0,1,0 -msinfo
0,27139

确保把要添加数据的盘放入了 CD 刻录机。然后,添加两个新开关 -C-M

$ mkisofs -o test2.iso -Jr -V Session2 -C 0,27139 -M 0,1,0 /files/path/

或更好的办法是,让命令 shell 完成这项工作:

$ mkisofs -o test2.iso -Jr -V Session2 -C `cdrecord dev=0,1,0 -msinfo` -M 0,1,0 /files/path/

多段刻录 CD 驱动器读取已写入的最后一个段。上面的命令从最后一个段获取 TOC,然后将他组合进新 TOC 中。在刻录盘上的最后一个段时,请省略 -multi 选项。

结束语

Linux 中的 CD 刻录功能强大且全面。CD 刻录机能够跨越网络共享,还可用于自动备份;

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!