在 Linux 下从蓝光源创建并刻录 ISO 映像

在 Linux 下从蓝光源创建并刻录 ISO 映像

我的目标是创建蓝光光盘的精确、逐位相同的副本,同时保留所有原始内容、DRM 等。如何使用dd命令翻录为 .iso 并刻录回空白 BD 来实现此目的?

我成功地制作了准确的 DVD 副本遵循这种特殊的方法

根据上述说明,我的基本步骤是:

  1. 使用块大小和卷大小的参数运行 dd,从而生成准确的、可刻录的 ISO 映像。
  2. 使用 dd 将 ISO 映像刻录到空白 DVD
  3. 通过将其重新翻录为 .iso 来验证 DVD 副本(参见步骤 1),并将生成的 ISO 映像与我用于刻录 DVD 的 ISO 映像进行比较(文件大小、MD5 校验和相同)

据我所知,我无法使用该命令读取零售 BD 的块大小和卷大小,isoinfo -d -i /dev/cdrom因为 BD 通常不是 ISO 9960 格式。因此,我按照平常的基本步骤操作,但我只是使用了dd if=/dev/cdrom of=test.iso没有任何 bs 和 count 参数的命令。正如人们所料,我的最终比较(步骤 3.)让我得到了两个不同的 ISO 文件(一个较大的文件,不同的 MD5 总和)。

有人能解决这个问题吗?我猜想我的翻录程序中缺少一些必需的 bs 和 count 参数 - 但我首先如何获取必要的信息(逻辑块大小、BD 的卷大小)?

非常感谢您的帮助。

答案1

您可以使用 来获取块大小blockdev --getbsz /dev/sr0,其中“/dev/sr0”可能会发生变化,具体取决于您拥有的驱动器数量和块数blockdev --getsz /dev/sr0,方法是使用 ,乘以 512,然后除以块大小。您可以在普通 DVD 上使用 进行测试isoinfo -d -i /dev/sr0

据我所知,dd即使没有设置大小或计数变量,也可以正常工作,创建蓝光的完美副本。这些变量仅在跳过光盘的未写入部分时使用,这些部分物理上存在但不存储信息,当数据不如磁盘大时很常见。

我测试了在没有大小和计数变量的情况下创建蓝光 ISO,并使用逐位比较cmp将其与光盘进行比较,结果没有出现任何错误。我猜想它不起作用的原因是你将其刻录到了另一张光盘上,而(正如@JonasCz 所说)由于复制保护,它无法正常工作。

不过,ISO 可以正常播放。
我使用 leawo 在 Windows 上成功打开并观看了蓝光 ISO。

例如:

  • blockdev --getsz /dev/sr0显示 16142856。
  • blockdev --getbsz /dev/sr0显示 2048。
  • 16142856 * 512 = 8265142272,
  • 8265142272 / 2048 = 4035714。

isoinfo -d -i /dev/sr0 这相当于在 DVD 上使用时的输出:

  • 逻辑块大小为:2048
  • 卷大小为:4035714

相关内容