我的目标是创建蓝光光盘的精确、逐位相同的副本,同时保留所有原始内容、DRM 等。如何使用dd
命令翻录为 .iso 并刻录回空白 BD 来实现此目的?
我成功地制作了准确的 DVD 副本遵循这种特殊的方法。
根据上述说明,我的基本步骤是:
- 使用块大小和卷大小的参数运行 dd,从而生成准确的、可刻录的 ISO 映像。
- 使用 dd 将 ISO 映像刻录到空白 DVD
- 通过将其重新翻录为 .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