Linux-cksum 命令詳解

Michael_DD發表於2014-12-05
Linux-cksum 命令詳解


語法:cksum [--help|--version] [file..]
說明:
     cksum命令是確保檔案從一個系統傳輸到另一個系統地過程中沒有被損壞。這個測試要求校驗和在源系統中被計算出來,
     在目的系統中又被計算一次,兩個數字比較,如果校驗和相等,則該檔案被認為是被正確傳輸了。
     
     當需要檢查檔案或目錄是否被改動過時就要用到cksum命令。透過將一個目錄或檔案的校驗和與它以前的校驗和相比較,
     就能判斷該檔案是否被改動過。

     如果命令列上沒有指定檔名,cksum就從STDIN中讀取,當一個或多個檔名被指定時,cksum顯示校驗和,每個檔案的
     位元組數和檔名。
     

     用cksum檢查檔案是否有改動的第一步是建立一個原始檔案,儲存校驗和:
     例如要檢查/export/home/bin下的所有檔案:

     # mkdir /export/home/cksum
     # cksum /export/home/bin/* >;/export/home/cksum/bin.cksum

一旦原始檔案被建立了,你今後在任何時候都能用下面的命令快速地確定是否有任何被校驗過的檔案被更改了:


md5sum的使用:
MD5演算法常常被用來驗證網路檔案傳輸的完整性,防止檔案被人篡改。
MD5全稱是報文摘要演算法(Message-Digest Algorithm 5),此演算法對任意長度的資訊逐位進行計算,產生一個二進位制長度為128位
(十六進位制長度就是32位)的“指紋”(或稱“報文摘要”),不同的檔案產生相 同的報文摘要的可能性是非常非常之小的。



在linux或Unix上,md5sum是用來計算和校驗檔案報文摘要的工具程式。一般來說,安裝了Linux後,就會有md5sum這個工具,
直接在命令列終端直接執行。可以用下面的命令來獲取md5sum命令幫助

man md5sum

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1  使用md5sum來產生指紋(報文摘要)命令如下:

md5sum file > file.md5
或者
md5sum file >>file.md5

注:>和>>的區別在於: >表示把由file檔案產生的摘要重定向到檔案file.md5,但是會覆蓋file.md5裡面的內容;而>>則將輸出的摘要附加到file.md5檔案的後面。



也可以把多個檔案的報文摘要輸出到一個md5檔案中,這要使用萬用字元*,比如某目錄下有幾個iso檔案,要把這幾個iso檔案的摘要輸出到iso.md5檔案中,
命令如下:

md5sum *.iso > iso.md5

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2   使用md5報文摘要驗證檔案,

方法有兩種:
(1) 比如,把下載的檔案file和該檔案的file.md5報文摘要檔案放在同一個目錄下,然後用如下命令進行驗證:

md5sum -c file.md5

然後如果驗證成功,則會輸出:正確

(2)比如下載了檔案file,然後執行下面的命令:

md5sum file

命令會輸出一個md5的報文摘要,然後把這個報文摘要直接與file.md5中的內容比較,如果一樣,就說明驗證正確。
#cksum /export/home/bin/* |diff -/export/home/cksum/bin.cksum

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29500582/viewspace-1357508/,如需轉載,請註明出處,否則將追究法律責任。