md5sum 对文件夹返回不同的结果,但是为什么呢?

md5sum 对文件夹返回不同的结果,但是为什么呢?
/tmp/file.txt

tar cvf 1.tar tmp
md5sum 1.tar
c32dc6f04ff02b371129dd4aa923cc12

rm 1.tar
cd tmp
touch test.txt
rm test.txt
cd ..

tar cvf 1.tar tmp
md5sum 1.tar
f9204f04ff02b300130ee4aa234aa78

我不明白为什么这两个校验和不同。添加文件然后从 tmp 目录中删除它怎么会创建一个“不同的” tar 文件呢?

答案1

当您创建和删除 test.txt 文件时,目录的修改时间会更新。这就是 tar 文件中的差异导致校验和不同的原因。

ls -ld tmp您可以在触摸和删除文件之前和之后执行操作来查看影响。如果您tar tvf在之前和之后执行操作,也可以查看它。

编辑:

正如 LatinSuD 在评论中提到的,tar文件包含有关其中包含的文件和目录的日期、所有者和权限信息。

相关内容