用于比较两个不同服务器中大量文件的工具

ron*_*nin 0 backup hash checksum

我有问题。您是否曾经使用过任何工具可以快速比较两个不同的 Windows 2003 服务器中的大量相同文件(假设有数千个文件,总大小高达 15 GB)?我想测试一下我们的备份工具是否运行良好。

我发现 Corz Checksum 和 Gizmo 可以为父文件夹生成一个哈希值,但它们都需要很长时间来处理。我希望我能找到可以在我的生产服务器上使用的更有效的工具。

谢谢,

浪人

Lad*_*ada 5

rsync -nacv <source> <destination>将输出不同的文件列表。像往常一样,rsync源和目标可以是本地的或远程的。

  • -n选项进行试运行,实际上并不传输任何文件。
  • -a选项递归地检查您指定的路径下的每个文件和目录。
  • -c选项对每个文件进行校验和。(默认使用时间戳和大小来代替。)对于较新版本的 rsync 使用的校验和是 MD5,对于旧版本使用的校验和是 MD4。
  • -v选项打印出结果。

就效率而言,每个文件都需要从磁盘完全读取,计算hash并传输到目的地,然后从磁盘读入目标文件并计算hash,最后将两个hash进行比较......对于每个文件。任何软件的任何方法都是如此。

如果您希望通过将更多文件组合成单个哈希来使大多数文件相同,则可以改进网络传输。无论如何,网络不太可能成为瓶颈,因为它只有散列穿过它。

rsync 在两端运行多个线程,因此您的磁盘应该一直被充分利用,除非您最终受 CPU 限制,在这种情况下,您的 CPU 将被充分利用。