在本地使用 md5sum/sha256sum 生成某待测文件的 hash 值,以跟标准文件的 hash 值做对比验证,确定经网络传输过程得到的文件是否真实无损。一般而言,hash 值如果一致,大概率上能保证文件的一致性。
我们以 Download Anaconda Now! | Continuum(Anaconda3-4.4.0-Linux-x86_64.sh)的下载校验为例,来说明,两种形式的校验方法(推荐第二种)。用以对比的正确的各种版本 anaconda 文件的 md5 查看形式为:Anaconda installer archive。
1. 生成文件的 md5/sha256 值
$ md5sum Anaconda3-4.4.0-Linux-x86_64.sh
50f19b935dae7361978a04d9c7c355cd Anaconda3-4.4.0-Linux-x86_64.sh
$ sha256sum Anaconda3-4.4.0-Linux-x86_64.sh
3301b37e402f3ff3df216fe0458f1e6a4ccbb7e67b4d626eae9651de5ea3ab63 Anaconda3-4.4.0-Linux-x86_64.sh
2. 将真实的 md5/sha256 和文件名拷贝至一个文本文件中
分别编写如下的文本文件:
-
check-md5
50f19b935dae7361978a04d9c7c355cd Anaconda3-4.4.0-Linux-x86_64.sh
-
check-sha256:
3301b37e402f3ff3df216fe0458f1e6a4ccbb7e67b4d626eae9651de5ea3ab63 Anaconda3-4.4.0-Linux-x86_64.sh
$ md5sum -c check-md5
Anaconda3-4.4.0-Linux-x86_64.sh: OK
$ sha256sum -c check-sha256
Anaconda3-4.4.0-Linux-x86_64.sh: OK