如何从光盘制作ISO文件?

我这里有一张光盘,我需要制作一个光盘的ISO镜像。有没有可以用来从光盘获取镜像的软件,或者Ubuntu自带了吗?
5个回答

使用 Brasero 光盘刻录工具:

Install via the software center

或者通过终端执行以下命令。
sudo apt-get install brasero

要将光盘复制为ISO镜像,请点击“光盘复制”,然后选择“图像文件”作为目标。

虽然Brasero可能更容易,但如果你有兴趣的话,下面是使用mkisofs命令行创建iso的方法。
genisoimage -r -J -o cd_image.iso /directory

-r和-J标签允许使用长文件名。-o代表输出,后面跟着输出文件和目录。之后,您可以使用mount命令挂载镜像,或者使用wodim进行刻录。
Ubuntu的Community Help Wiki是一个非常好的资源。点击链接查看更多详细信息。

图形应用程序如BraseroK3b可以很好地从光盘创建ISO文件,但实际上有几种方法可以做到这一点。我一直使用稍微复杂一些的方式,但对于我的旧硬件来说更可靠,它使用了dd/if。如果你有信心以这种方式(或老派方式)来操作,它对我来说一直都有效:
首先将光盘放入驱动器中,并使用以下命令获取块和卷大小: isoinfo -d -i /dev/sr1
或者是您要操作的目标驱动器的/dev节点。
接下来运行以下命令,将/dev节点替换为您自己的节点,并将从isoinfo获取的块和卷号放在<isoinfo result>出现的位置:
dd if=/dev/sr1 bs=<isoinfo result> count=<isoinfo result> of=/home/mike/Folder/thegreat.iso 

isoinfo对于物理光盘报告的一些示例值是:"Logical block size is: 2048, Volume size is: 309669"。因此,在上述dd/if命令中,bs应为2048,count应为309669。但请不要使用这些值,而是使用isoinfo为您自己的磁盘提供的值。)
还请确保使用正确的cd/dvd驱动器的/dev节点,例如通常为/dev/sr0/dev/sr1
尽管大多数人使用图形应用程序,但我发现对我来说,“dd/if”方法比“brasero”更可靠。
我已经准备好了一个从光盘制作ISO的脚本。
由于我在脚本中使用了位置参数,你必须指定设备($1)和要创建的ISO文件($2)。
举个例子,如果它不在你的~/bin目录下,你可以这样调用它:
./script_name.sh /dev/sr0 /home/$USER/new.iso

脚本的内容;在创建后使用chmod u+x命令使其可执行。
#!/bin/bash

# $1 and $2 are specified on the command line when the script is called; $1 must be /dev/sr0 or whatever is the drive; $2 is the location and name of iso to be created

val1="$(isoinfo -d -i "$1" | grep -i "block size" | awk -F ': ' '{print $2}')"
val2="$(isoinfo -d -i "$1" | grep -i "volume size" | awk -F ': ' '{print $2}')"

dd if="$1" bs="$val1" count="$val2" of="$2"

exit 0

isoinfo只会报告iso9660镜像的信息。它会忽略其他数据(比如混合ISO/HFS光盘的HFS部分)。这些类型现在相当罕见,但偶尔还是会出现。 - charlesbridge
@charlesbridge 在这里记录下来是很有用的,也能让人们意识到这一点,但正如你所说,混合CD在现如今相当罕见。 - user76204
您可能希望添加isoinfo包含在genisoimage软件包中。 - Raphael

在Ubuntu中,预设的刻录应用程序Brasero可以完成这个任务。它已经随Ubuntu一同安装。
选择复制CD/DVD选项。在属性中选择所需的类型(.iso)。

我一直喜欢使用dvdisaster,因为它能优雅地处理坏(划伤的)光盘。
实际上,它是为了从坏光盘中恢复数据而编写的,但它也可以很好地处理可读的光盘。

1这不是一个恢复问题,而是“如何从光盘制作ISO”,而不是“如何使用ISO恢复光盘”。 - Star OS
@StarOS:dvdisaster 还有一个漂亮的用户界面,可以用来读取现有的光盘。 - liori