《LINUX實操:Linux中文件MD5校驗》要點:
本文介紹了LINUX實操:Linux中文件MD5校驗,希望對您有用。如果有疑問,可以聯(lián)系我們。
md5sum命令用于生成文件的md5數(shù)字摘要,并可以驗證文件內(nèi)容是否發(fā)生了改變,間接地還可以查驗兩個文件內(nèi)容是否完全相同.因為md5sum是讀取文件內(nèi)容來計算校驗碼的,因此只能驗證文件內(nèi)容,而無法驗證文件屬性.
[root@linuxidc ~]# cp -a /etc/fstab /tmp/fstab [root@linuxidc ~]# cp -a /etc/fstab /tmp/fstab1
天生文件的md5值.
[root@linuxidc ~]# md5sum /tmp/fstab /tmp/fstab1 a612cd5d162e4620b442b0ff3474bf98 /tmp/fstab a612cd5d162e4620b442b0ff3474bf98 /tmp/fstab1
發(fā)現(xiàn)這兩個文件md5值完全一樣,也就闡明這兩個文件完全相同.
由于生成的md5信息中,每個md5值后都緊跟著對應(yīng)的文件的路徑(可能是相對路徑),于是將生成的md5保留到某個文件中,以后可以使用該文件來檢查md5值對應(yīng)文件內(nèi)容是否發(fā)生了修改.
例如,將上述兩個文件的md5信息保留到fs.md5sum中,然后使用"md5sum -c"可以檢查源文件是否完整或是否被修改過.這個檢查是內(nèi)容上的,權(quán)限和屬性等的改變不會影響md5值,所以不會檢測出問題.
[root@linuxidc ~]# md5sum /tmp/fstab /tmp/fstab1 >/tmp/fs.md5sum [root@linuxidc ~]# md5sum -c /tmp/fs.md5sum /tmp/fstab: OK /tmp/fstab1: OK
改動/tmp/fstab1的內(nèi)容,然后再檢測.
[root@linuxidc tmp]# echo aaa >>/tmp/fstab1 [root@linuxidc tmp]# md5sum -c /tmp/fs.md5sum /tmp/fstab: OK /tmp/fstab1: FAILED md5sum: WARNING: 1 of 2 computed checksums did NOT match
當(dāng)使用了"-c"選項時,還支持以下選項:
--quiet:不顯示驗證成果為OK的記錄
--status:完全不顯示任何信息,只能通過命令的退出狀態(tài)碼判斷驗證結(jié)果是否有failed.只要有一條failed記錄,則狀態(tài)碼為1,不然為0.
[root@linuxidc tmp]# md5sum --status -c /tmp/fs.md5sum
[root@linuxidc tmp]# echo $? 1
通過比擬md5sum的值,可以判斷出多個文件的內(nèi)容是否完全一致,但肉眼判斷并不方便,所以寫出腳本批量判斷.腳本見:shell腳本示例:批量比擬多個文件的內(nèi)容是否相同.
本文永遠(yuǎn)更新鏈接地址:
更多LINUX教程,盡在維易PHP學(xué)院專欄。歡迎交流《LINUX實操:Linux中文件MD5校驗》!
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/8871.html