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