我使用命令
find . -type f -exec sha256sum {} \; > sha256SumOutput
Run Code Online (Sandbox Code Playgroud)
散列文件夹层次结构中的每个文件。不幸的是,sha256sum没有find按字母顺序获取文件名。如何解决这个问题?
我想在对它们进行散列之前对它们进行排序,以便按字母顺序对它们进行散列(这是有原因的)。
我想将一个非常大的目录(许多 TB 的多 GB 文件)克隆到另一个驱动器上的另一个目录中。我一直在使用这个命令:
ionice -c 3 rsync -avz /path/to/sourcedir/ /path/to/destdir/
Run Code Online (Sandbox Code Playgroud)
该过程需要一天多的时间并且经常被中断,因此使用rsync能够在不从零重新启动的情况下恢复。理论上应该是上述命令是幂等的,所以当任何事情失败时,我应该能够重新发出相同的命令,让它在中断的地方工作并从那里继续。
现在,因为操作的重点是报废和回收源驱动器,所以在此之前我想确保所有文件都已正确复制。所以我使用这个问题中的方法逐字节比较每个文件。果然,有许多文件具有不同的哈希值。
所以理论问题:rsync与我认为我理解的不同,它是否仅适用于文件名,而不是内容,或者至少是长度?
以及(更重要的)练习问题:我是否可以使用其他选项来强制rsync生成源目录的精确克隆?特别是,在rsyncdest 目录已经有一个与源目录中的文件同名但内容不同的文件时启动的情况下,我希望命令确保它被替换(或“完成”)为源目录中的实际原始文件。