比较两张 DVD

比较两张 DVD

如何比较两张 DVD?我的意思是真正的二进制比较?

问题:我有两张 DVD,里面有一个程序,应该是相同的。但我怀疑其中一张 DVD 被修改了。文件和文件夹的大小相同,但这并不意味着内容应该相同。

答案1

尝试 VBinDiff (可视化二进制差异)

VBinDiff(Visual Binary Diff)以十六进制和 ASCII(或 EBCDIC)显示文件。它还可以同时显示两个文件,并突出显示它们之间的差异。与 diff 不同,它适用于大文件(最大 4 GB)。

单文件模式的灵感来自 4DOS 及其同类程序的 LIST 实用程序。虽然 less 提供了良好的面向行的显示,但它没有相当于 LIST 的十六进制显示的选项。(没错,您可以通过 hexdump 管道传输文件,但这对于几 GB 的文件来说效率极低。)VBindiff

要下载并了解更多信息,请访问VBindiff, 和Github

答案2

您可以使用常规的cmp

如果 DVD 想要是完美的 1:1 复制(完全相同),您可以比较 ISO。

cmp dvd1.iso dvd2.iso

否则,根据文件逐个进行

cd /mnt/cdrom1
find -type f -exec cmp {} /mnt/cdrom2/{} \;

如果存在任何差异,这两个命令只会打印一些内容(文件名和字节偏移量)。这是逐字节比较,不涉及校验和。请注意,find此处的方法不会检测 cdrom2 上的剩余文件,我假设您已经排除了这种可能性。

答案3

尝试这个:

  1. 插入并安装第一张 DVD
  2. 打开终端
  3. 类型cd ${PATH_OF_YOUR_DVD_MOUNT_POINT}(将 ${PATH_OF_YOUR_DVD_MOUNT_POINT} 替换为 DVD 挂载点的路径)
  4. 输入find . -type f -exec md5sum \{\} \; >/tmp/md5sums.txt并等待其完成(可能需要一段时间)
  5. 键入cd以返回主目录
  6. 卸载并弹出 DVD
  7. 插入并安装第二张 DVD
  8. 再次输入cd ${PATH_OF_YOUR_DVD_MOUNT_POINT}(这次替换第二张 DVD 的挂载点)
  9. 输入md5sum --check --quiet /tmp/md5sums.txt并观察输出

您将获得不二进制等效的文件列表。

笔记:添加了用户修正德国人由于某种原因,该论文未被同行评审接受。

答案4

将 DVD 插入驱动器并等待 Ubuntu 自动安装,然后进入安装 DVD 的目录:

$ cd /media/barbara/mydvd

创建一个包含 DVD 上所有文件的校验和的校验和文件:

$ find . -type f -print0 | xargs -0 sha1sum > /tmp/mydvd.sha1

请注意,上述命令可以正确处理带空格的文件名。接下来,用第二张 DVD 替换 DVD,并根据刚刚创建的校验和进行检查:

$ sha1sum -c /tmp/myiso.sha1

如果存在差异,sha1sum 将打印有关它的错误消息。

相关内容