
1 sha256sum
sha256sum
sha256sum
是一個檢測檔案完整性的指令,一般下載下傳的檔案都會附帶一個哈希值,使用
sha256sum
計算下載下傳檔案的哈希值再與目标哈希值比較即可确定檔案是否完整,類似的指令還有:
-
md5sum
-
sha1sum
-
sha224sum
-
sha384sum
-
sha512sum
2 安裝
該系列指令在一個叫
coreutils
的包内,一般
Linux
都會安裝,沒有的話可以從軟體包倉庫安裝,以筆者系統
Manjaro
為例:
paru -S coreutils
另外目前最新的
SHA
算法為
SHA3
,需要使用
SHA3
的話可以安裝
sha3sum
:
paru -S sha3sum
3 使用
使用很簡單,指令後面直接加上對應的檔案,即可計算哈希值,以OpenJDK為例:
檔案旁邊有一個
sha256
的值,先把檔案下載下傳,使用
sha256sum
計算:
sha256sum openjdk-15+36_linux-x64_bin.tar.gz
然後下一步就是比較給出的
sha256
,沒理由手動一個一個比較吧?
可以直接使用下面的指令去比較:
echo "bb67cadee687d7b486583d03c9850342afea4593be4f436044d785fba9508fb7 openjdk-15+36_linux-x64_bin.tar.gz" | sha256sum --check
格式為:
echo "sha256哈希值 檔案名" | sha256sum --check
如果不比對,會顯示
checksum did NOT match
如果哈希值存在于檔案中,可以使用下面的指令:
echo "$(cat 哈希值檔案名) 待比較的檔案" | sha256sum --check
比如:
echo "$(cat sha256) openjdk-15+36_linux-x64_bin.tar.gz" | sha256sum --check