如何使用命令行将可启动的DVD制作成可启动的ISO文件?

我需要创建一个镜像,以便在虚拟机中安装Windows时能够挂载安装DVD并启动。

重要提示:我需要使用命令行完成此操作。

我尝试使用genisoimage如此处所建议,并使用以下命令创建了一个镜像,但结果无法启动...

genisoimage -r -J -o cd_image.iso /cdrom

我需要的是将我的原始可启动DVD转换成一个可在虚拟机中挂载的可启动镜像。
所以我想问一下如何将ISO文件转换为可启动的文件,或者使用genisoimage或其他命令重新创建可启动的ISO文件。

我想创建一个ISO镜像文件,这样我就可以从其中启动VirtualBox虚拟机。我不想使用USB闪存。我会查看提到的问题。 - lpanebr
我需要从命令行来完成。会尝试使用dd命令来查找相关信息。 - lpanebr
请使用原始的ISO文件。如何创建自定义的Windows安装镜像不属于本主题范围。 - psusi
1@psusi 这种情况下没有原始的ISO文件;OP有一张Windows安装光盘/光碟。此外,这很不可能是离题的,因为这实际上是一个关于如何将CD转换为ISO并保留DOS/Windows样式引导信息的问题。考虑到我们实际上已经有一个关于如何在Ubuntu上创建用于安装Windows的USB媒体的开放且高赞的问题,即使这个问题特定于安装Windows(事实上它并不是),这个问题可能仍然是适合讨论的。 - Eliah Kagan
@EliahKagan,原始光盘就是原始的ISO文件。你只需复制它,而不是使用从光盘复制出来的文件生成新的ISO文件。 - psusi
@psusi我有原始媒体,但我的电脑没有DVD光驱。所以我需要一种从该媒体制作镜像的方法。我将尝试改进我的问题,使其更符合主题。 - lpanebr
什么?显然你需要一个驱动器来读取光盘。 - psusi
1@psusi 显然这里有两台电脑,其中一台有光驱。此外,大多数人使用"iso"来表示"iso镜像文件"。将符合ISO-9660标准的数据写入物理光盘并称之为"iso"是罕见且可能不正确的。除了已经存在的答案之外,你的评论对解答这个问题有很大帮助。也许这是一个重复的问题;我认为它并不离题。 - Eliah Kagan
@EliahKagan,如果是这样的话,是重复了...可惜它不允许你改变投票。 - psusi
我仍然可以举报或删除。重复的是哪个问题? - lpanebr
这个问题绝对没有任何离题之处。重新开放。 - Seth
@Braiam我重新编辑了问题,因为我必须在命令行中执行,而标记的重复答案没有解决这个问题。 - lpanebr
2个回答

我在这里找到了使用dd命令的方法,据我所知,它适用于任何可引导的媒体。

下面的命令在Ubuntu命令行中创建了一个可引导的DVD映像,用于我的Windows 7安装光盘:

dd if=/dev/cdrom of=/output/path/forYourImage.iso bs=2k

注意1:生成的映像只有在源媒体可引导的情况下才能引导。

注意2:在我的情况下,由于我使用的是无头服务器,我首先使用sudo lshw -c disk命令找出我的光驱在/dev/上的位置。

注意3:同样在我的情况下,光驱没有挂载,所以我需要使用sudo mount /dev/sr0 /cdrom命令将其挂载。


1烟雾和镜子:你只需要执行 cp /dev/cdrom /output/path/forYourImage.iso 命令即可将光盘内容复制到指定路径并生成 ISO 镜像文件,这并不需要使用 dd 命令进行黑科技操作。 - starfry

要创建一个可引导的ISO镜像,您必须在命令中指定这一点。默认情况下,您将创建的ISO镜像不会是可引导的。
使用genisoimage,您可以使用以下命令行:genisoimage -b isolinux/isolinux.bin -c isolinux/isolinux.cat -r -J -o cd_image.iso /cdrom 假设在创建ISO文件的源目录的根目录下已经创建了一个名为isolinux的目录。
命令将创建文件isolinux.cat,这是引导加载程序所需的目录。 文件isolinux.bin是引导加载程序的映像,适用于CD或DVD。这些映像可以在syslinux软件包中找到。请检查是否已安装此软件包,如果没有,请执行以下操作:

sudo apt-get install syslinux-common

/usr/share/syslinux下,您将找到预定义的引导加载程序,即文件isolinux.bin
更多关于Syslinux官方网站的信息(通用Linux信息)

2@EgyptBeast 以后不需要在文本中留下评论。这就是评论栏的用途!;-) - Fabby