随着Linux用户的不断增多,许多用户都在Linux中保存了大量信息,于是如何把这些信息刻录到光盘中就成了大家关心的问题。因为在windows下有许多工具可用,也很方便!其实linux也不例外。不管是在哪个平台,刻录都有命令行方式和工具方式,呵呵!而在刻录软件中,当数Nero最好用。而在linux下,当然Linux版本的Nero也是最好的了,其操作和Windows中的并无差别。用户可以到Nero的官方网站下载它的RPM包来试用(因为Nero有一个缺点就是它不是免费的。)这里就不再多说了。

刚才也说了,在任何平台上都有命令行和工具刻录的方式,而从命令行刻录 CD 都是一件令人费解且烦躁的事情,Linux 当然也不例外。不过,由于在各平台上所用到的命令和术语都十分相似!而linux的命令行才是其精髓所在。现在就告诉大家如何在Linux中进行光盘刻录:
    方法一:免费图形工具
    这里向大家推荐K3b这款Linux下免费的刻录软件。Linux 下流行的光盘烧录软件 K3b 现已发布 2.0.0 的正式版本。该版本将 K3b 移植到了 KDE 4 平台,主要包含以下改进:

  • 支持蓝光写入
  • 支持大于 4GB 的文件
  • 允许手动选择写入速率
  • 对用户界面进行了改善,如将 CD 和 DVD 复制对话框合并到了一起
  • 能够更好的支持 RTL 语言

可从其位于 SourceForge 上的项目主页下载。

(图1为K3b在Linux中的运行窗口)。
   在K3b的下方是刻录选项窗口,如果要刻录DVD数据光盘直接点击“New Data DVD Project”,然后出现刻录文件窗口,此时可以将上方的文件拖到这个窗口中并点击“Burn”按钮,在出现的设置窗口(图2)中,直接点击 “Burn”按钮就可以开始刻录了。


   如果你的光盘是可擦写光盘,你同样可以在K3b中进行擦除光盘数据操作,方法是在K3b下方刻录选项窗口中右击鼠标,然后选择“擦除CD-RW”菜单, 这时可以看到在窗口中添加了一个“擦除CD-RW”图标,现在将要擦除的光盘放入光驱后点击“擦除CD-RW”按钮。最后在出现的窗口中点击 “Start”按钮就可以擦除了。

  在K3b中我们仍然可以进行光盘对拷等工作,使用方法都是先在刻录选项窗口中右击,再在出现的菜单中选择要刻录的选项,最后点击此项就可以刻录了。

由于软件刻录都相对简单,且又是中文就不赘述!再来看看方法二吧:

方法二:命令行模式(以下为网上转载)

Linux CD 刻录命令中有两个主力:mkisofs 和 cdrecord。mkisofs 创建预先录制的映像,来生成ISO9660/JOLIET/HFS 混合文件系统。它同时创建和填充文件系统。与其它数据存储介质(如硬盘驱动器和软盘驱动器)不同,CD 上的文件系统并不是先创建后填充资料的。CD-R 只有一次机会:首先格式化将会创建一个带有空档系统的盘。cdrecord 命令在橙皮书(Orange Book) CD-R/RW 上刻录资料,这差不多就是其全部工作了。

由于采用了诸如 CD 刻录之类的新兴技术,最好使用这些程序的较新版本。mkisofs 和 cdrecord 的版本都应该至少已经达到了 1.10。cdrecord 的最新版本 V2.0 已经被重命名为 cdrtools。要查明机器上所安装的版本,请输入:

$ cdrecord --version 和 $ mkisofs --version

对于那些刚接触可刻录 CD 的人而言,在我们继续之前,有几样东西是值得先了解一下的:

CD-R:可刻录 CD(CD-Recordable)。它们是 WORM(写一次,读多次,Write Once, Read Many)。

CD-RW:可重写 CD(CD-Rewritable)。它们是 WMRM(写多次,读多次,Write Many, Read Many)。

CD-R 的使用很广泛,在任何 CD-ROM 驱动器上都应该可读。

CD-RW 在所有现代驱动器上都应该可读。驱动器必须是“多格式读取的(multiread)”,以便能够读取 CD-R 和 CD-RW 盘。较老的驱动器会出问题。扔掉那个 4 倍速的旧驱动器,买个新的;用不着发火。

商用 CD 不是用激光刻录成的,而是压制而成的。

哪一种 CD-R/RW 驱动器最好呢?随便请教普通的硬件评论员,让他们给您一些建议。

下面是与文件格式有关的一些术语:

黄皮书(Yellow Book):资料 CD 的物理格式

橙皮书:可刻录 CD 的物理格式:

第一部分:CD-MO(磁-光,Magneto-Optical)

第二部分:CD-WO(写一次,Write-Once;包括 PhotoCD 的“混合”规范)

第三部分:CD-RW(可重写,Re-writable)

ISO-9660:旧的档布局标准,它只允许 8.3 格式的文件名

Rock Ridge:是对 ISO-9660 的扩展,它允许长文件名和 UNIX 样式的符号链接;保留了所有文件属性,如所有权和权限。在 Windows 系统上读盘时,不会显示 UNIX 文件的属性。

Joliet:Microsoft 对 ISO 9660 文件系统的扩展,它允许在文件名中使用 Unicode 字符,同样也允许长文件名。为了与 MS-DOS 兼容,它还创建截断的文件名(这些看起来怪怪的样子:FILENA~1.TXT)。它允许文件名长达 64 个字符(包括空格),Windows 95 或更高版本以及运行 Joliet 卷访问(Joliet Volume Access)扩展的 Macintosh 计算机都可以读取它。Macs 不会读取长度超过 31 个字符的 Joliet 文件名。

El Torito:可引导 CD-ROM(Bootable CD-ROM)格式规范

HFS(分层文件系统,Hierarchical File System):Macintosh 使用的本机文件系统

多段刻录(Multisession):允许多次添加档,而不是只允许在单个段中添加档。要使盘可读,就必须“关闭”段。但是,这却导致不能向盘中添加更多档。多段刻录将单个段链接起来,然后更新盘的目录,使得它好象一个目录一样。

CD-UDF(通用盘格式,Universal Disk Format):业界标准递增包写文件系统(incremental packet-writing filesystem)

对 UDF 的一点简单说明:UDF 意味着能够直接将档放入盘。目前,这是在软件级别上完成的。读取该盘需要用来创建该盘的软件。计划将 UDF 添加到 Linux 内核(可能是 2.6)。要实现这一点,CD 驱动器需要具有 CD-MRW 电路(“CD Mount Rainier ReWrite”;不要问我他们为什么取这么个名字),因此它将是新型驱动器的一项功能。当这一点得到实现时,向 CD-R/RW 中复制文件将和向软盘中复制文件一样容易,而且这些盘将普遍可读。而且,它还被吹捧为古老的 3.5" 软盘的另一种替代品。我们将拭目以待。(请参阅参考资料以获取到更多有关 Mount Rainier 的信息的链接。)

Linux SCSI 仿真冒险

如果可以的话,请使用 IDE/ATAPI 或 SCSI CD 刻录机。并口接口是一种会给您添麻烦的棘手玩意儿,而 USB 驱动器则很慢。在 Linux 中它们都得不到很好的支持(虽然对于较新的 USB 2.0 驱动器,您的运气可能会好一些)。

IDE/ATAPI 驱动器最为常见,但使用起来却需要做些调整。那么,如果 cdrecord 显示没有配置任何驱动器,会发生什么事情呢?要想检查是否配置有驱动器,请输入以下命令:

$ cdrecord -scanbus

如果命令显示了 CD-RW 驱动器(请参阅后面的刻录盘),那么您可以跳过这一节的大部分,尽管您可能还是都想流览一下这些内容,以便有所了解。

Linux 使用 SCSI 仿真子系统,因此 IDE/ATAPI CD 刻录机需要兼容性驱动程序。如果同一台 PC 上既有 CD-ROM 也有 CD-R/RW,那么二者都需要 ide-scsi 伪设备驱动程序来支持盘的复制。在 CD-ROM 上使用 SCSI 仿真没有什么不利之处;它同样能工作;只是名称会改变。驱动器的名称将会随 Linux 的具体分发版而有所不同,其名称可以是 /dev/cdrom0、/dev/hdc 或 /dev/scd0(要获得 IDE/ATAPI 设备名列表,请参阅表 1)。

表 1. IDE/ATAPI 设备名名称 设备

hda IDE 总线/连接器 0 主设备

hdb IDE 总线/连接器 0 从属设备

hdc IDE 总线/连接器 1 主设备

hdd IDE 总线/连接器 1 从属设备

要找到系统上的驱动器,请输入:

$ dmesg | grep '^hd.:'

hda: IBM-DTLA-305020, ATA DISK drive

hdb: TOSHIBA DVD-ROM SD-M1202, ATAPI CD/DVD-ROM drive

hdc: LITE-ON LTR-24102B, ATAPI CD/DVD-ROM drive

hda: 40188960 sectors (20577 MB) w/380KiB Cache, CHS=2501/255/63, UDMA(66)

大多数现代 Linux 都包含了已编译进内核的 SCSI 仿真:

$ locate ide-scsi.o

/lib/modules/2.4.19/kernel/drivers/scsi/ide-scsi.o

如果您的系统不是这样的,那么您就必须将它编译到您的内核中。对于这篇篇幅有限的文章来说,那是一个过大的主题,因此请参阅参考资料(当您知道如何做时,您会发现它并不难)。

您需要编辑两个文本文件来配置系统,让它使用 ide-scsi 驱动程序。第一个是 /etc/modules.conf(在 Debian 中是 /etc/modules)。我的系统有一个 CD-ROM 和一个 CD-R/RW 驱动器,设备分别是 hdb 和 hdc。使用适合于您系统的值,将这两行添加到 /etc/modules.conf(或 /etc/modules):

ide-cd ignore=\"hdb hdc\"

ide-scsi

缺省情况下,IDE 子系统将所有的 ATA 设备声明为它自己的设备,因此 ignore 这一行使得 SCSI 子系统既能抓取 CD-R/RW 也能抓取 CD-ROM。

接下来,为您的引导装载程序(GRUB 或 LILO)编辑配置文件。对于 LILO 用户,请将下面两行添加到 lilo.conf 的末尾:

append="hdb=ide-scsi"

append="hdc=ide-scsi"

对于 GRUB 用户,请将下面这行添加到 /etc/grub.conf(或者 Debian 中的 /boot/grub/menu.lst)中 kernel 这行的末尾:

hdb=scsi hdc=scsi

现在重新引导,并验证它是否已装入:

$ lsmod

这条命令将返回一个长列表;请查找 ide-scsi。

创建 .iso 文件

一旦选择了您想复制的档,对 CD 进行刻录就只有两步:用 mkisofs 创建 .iso,然后用 cdrecord 将这些档刻录进盘中。使用以下命令来创建 .iso 文件:

$ mkisofs -o test.iso -Jrv -V test_disk /home/carla/

在上面的示例中:

-o 为新的 .iso 映像档命名(test.iso)

-J 为了与 Windows 兼容而使用 Joliet 命名记录

-r 为了与 UNIX/Linux 兼容而使用 Rock Ridge 命名约定,它使所有档都公共可读

-v 设置详细模式,以便在创建映像时获得运行注释

-V 提供了卷标识(test_disk);该标识就是出现在 Windows 资源管理器中的盘名

列表中的最后一项是选择要打包到 .iso 中的文件(都在 /home/carla/ 中)

现在,挂装 .iso 来进行验证;我喜欢创建一个测试目录:

$ mkdir /test_iso

$ mount -t iso9660 -o ro,loop=/dev/loop0 test.iso /test_iso

查看目录的内容;所有的档都应该在那里,并且都可读。否则,就是映像坏掉了,如果您将它刻录到盘上,那么您最终将得到一个刻录失败的光盘。

刻录盘

将映像写到盘中再简单不过了。首先,找到 CD-R/RW 的 SCSI 地址:

$ cdrecord -scanbus

Cdrecord 1.10 (i686-pc-linux-gnu) Copyright (C) 1995-2001 Jrg Schilling

Linux sg driver version: 3.1.24

Using libscg version 'schily-0.5'

scsibus0:

0,0,0 0) 'TOSHIBA ' 'DVD-ROM SD-M1202' '1020' Removable CD-ROM

0,1,0 1) 'LITE-ON ' 'LTR-24102B ' '5S54' Removable CD-ROM

0,2,0 2) *

0,3,0 3) *

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 和 -dummy。fs=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 刻录机可以跨越网络共享,还可用于自动备份;mkisofs 和 cdrecord 也能用于 DVD。虽然有许多优秀的图形前端程序,但是完整的功能在命令行程序上。

Linux下的光盘刻录相关推荐

  1. linux刻录光盘空间不足,Linux下的光盘刻录技巧

    随着Linux用户的不断增多,许多用户都在Linux中保存了大量信息,那么如何把这些信息刻录到光盘中就成了大家关心的问题.现在就告诉大 家如何在Linux中进行光盘刻录.在刻录软件中,当数Linux版 ...

  2. Linux下CD/DVD刻录软件

    Linux下CD/DVD刻录软件 1.Brasero是一款CD/DVD刻录软件,Gnome桌面环境默认自带,支持单次写入数据DVD和任何类型的CD,并且能够将光盘镜像写入到硬盘,其图形化的操作界面使用 ...

  3. linux 看不到光盘刻录的文件夹,ARM_Linux下光盘刻录方案

    前些时间有个项目要在S3C2410平台下加入光盘刻录得功能,大家知道Linux下光盘刻录得命令行都是由软件cdrtools来实现的,第一想法是移植cdrtools. cdrtools是开源软件,从网上 ...

  4. 红帽Linux自带的光盘刻录,cdrecord -- linux下光盘刻录

    cdrecord -- linux下光盘刻录 发布时间:2008-01-03 00:31:24来源:红联作者:Whretofi cdrecord 可以使用来烧录 audio 或 data,至于烧录 i ...

  5. redhat linux光盘4,技巧:把3张Redhat Linux 9的安装光盘刻录到一张DVD光盘中

    有DVD刻录机了,想把3张RedHat Linux 9的安装光盘刻录到一张DVD中.我尝试过用UltraISO打开第一张盘的ISO后再把其余两张德文件也加进去,然后保存为一个1.7GB左右的ISO文件 ...

  6. linux 光盘刻录命令,在Linux操作系统中使用命令进行光盘刻录

    系统:红旗Linux DC Server 5.0 1.准备 cdrecord可以支持IDE.SCSI接口的光盘刻录设备,新版本可以支持CD.DVD光盘刻录. #cdrecord -scanbus 查看 ...

  7. linux 光盘刻录命令,在Linux操作系统中使用命令进行光盘刻录该怎么做?

    1.准备 cdrecord可以支持IDE.SCSI接口的光盘刻录设备,新版本可以支持CD.DVD光盘刻录. #cdrecord -scanbus 查看刻录设备的连接端口,如IE的第一个通道的Maste ...

  8. rufus 一款好用的linux u盘,光盘刻录工具

    rufus 一款好用的linux u盘,光盘刻录工具: 下载(点击普通下载中的"立即下载"): http://share.cnop.net/file/1806028-4018863 ...

  9. Linux 光盘刻录和windows光盘刻录不能兼容问题

    国产电脑使用的是麒麟Linux,在当需要与windows系统进行文件交换的时候就会用到光盘刻录,但光盘刻录的时候往往会出现不能识别的问题,尤其是往光盘中添加文件的时候,遇到不能识别的的情况更多.所以有 ...

最新文章

  1. Exchange-批量创建通讯组邮箱
  2. wince中对ini文件的操作
  3. 可视化应用实战案例:metacoder-相关进化树图的绘制
  4. 2016奥运男篮分组
  5. 专注力 化繁为简的惊人力量
  6. 四、WebApp 基础可视组件(IVX 快速开发教程)
  7. 西门子安装未找到ssf文件_V5.3安装时显示NO SSF FILE FOUND对话框,我该怎么解决啊? 谢谢!-工业支持中心-西门子中国...
  8. 编写区块链_编写由区块链驱动的在线社区的综合指南
  9. ASP.NET MVC 4应用程序文件夹
  10. 小米MIX 4屏幕细节曝光:首发柔性曲面屏下前摄
  11. 使用小波变换进行灰度图像的融合
  12. 毕设题目:Matlab图像拼接
  13. 大学生计算机vfp,计算机vfp教学课件
  14. SPDY协议 - v3
  15. 科学计算机怎么用分号,350ms82ms科学计算器使用方法.docx
  16. 微信小程序checkbox调整大小
  17. Leetcode 312. 戳气球(经典区间dp)
  18. UV杀菌灯芯片-DLT8P65SA-杰力科创
  19. 考研英语长难句(刘晓燕)笔记 第五课 接近尾声的凯旋——状语和状语从句
  20. 百兆宽带是怎么个一百兆?

热门文章

  1. USART发送与接收
  2. 我是一只IT小小鸟读后感 Part 1
  3. MATLAB 时间变量 和 常用时间处理函数 datetime datestr datevec datenum
  4. java使用swing窗体,基于rtsp视频监控
  5. Android Linux指令集
  6. 原创|批处理|批处理一键生成指定范围的MAC地址
  7. 集成电路/微电子/电子科学与技术 在IEEE上可以参考的期刊会议总结
  8. Xilinx ip核之FIFO和RAM
  9. 2019年最新中科院人工智能领域JCR期刊分区(附2019-2020人工智能领域顶级会议分类表)
  10. java生成二维码(带logo)