linux 文件md5,Linux中文件MD5校验

md5sum命令用于生成文件的md5数字摘要,并可以验证文件内容是否发生了改变,间接地还可以检验两个文件内容是否完全相同。因为md5sum是读取文件内容来计算校验码的,因此只能验证文件内容,而无法验证文件属性。

[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

发现这两个文件md5值完全一样,也就说明这两个文件完全相同。

由于生成的md5信息中,每个md5值后都紧跟着对应的文件的路径(可能是相对路径),于是将生成的md5保存到某个文件中,以后可以使用该文件来检查md5值对应文件内容是否发生了修改。

例如,将上述两个文件的md5信息保存到fs.md5sum中,然后使用"md5sum -c"可以检查源文件是否完整或是否被修改过。这个检查是内容上的,权限和属性等的改变不会影响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的内容,然后再检测。

[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

当使用了"-c"选项时,还支持以下选项:

--quiet:不显示验证结果为OK的记录

--status:完全不显示任何信息,只能通过命令的退出状态码判断验证结果是否有failed。只要有一条failed记录,则状态码为1,否则为0。

[root@linuxidc tmp]# md5sum --status -c /tmp/fs.md5sum

[root@linuxidc tmp]#echo $?

1

通过比较md5sum的值,可以判断出多个文件的内容是否完全一致,但肉眼判断并不方便,所以写出脚本批量判断。脚本见:

0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值