[root@xuexi ~]# cp -a /etc/fstab /tmp/fstab [root@xuexi ~]# cp -a /etc/fstab /tmp/fstab1
生成文件的md5值。
[root@xuexi ~]# md5sum /tmp/fstab /tmp/fstab1 a612cd5d162e4620b442b0ff3474bf98 /tmp/fstab a612cd5d162e4620b442b0ff3474bf98 /tmp/fstab1
发现两个文件的md5值是一模一样的,也就是说这两个文件是一模一样的。
由于生成的md5信息中,每个md5值后面都跟有对应文件的路径(可能是相对路径),所以生成的md5会保存到某个文件中。 以后可以通过这个文件来检查对应的md5值。 文件内容是否被修改。
比如将上面两个文件的md5信息保存到fs.中,然后用“-c”来检查源文件是否完整或者是否被修改过。这个检查是根据内容进行的。 权限和属性的改变不会影响md5值,所以不会检测到问题。
[root@xuexi ~]# md5sum /tmp/fstab /tmp/fstab1 >/tmp/fs.md5sum [root@xuexi ~]# md5sum -c /tmp/fs.md5sum /tmp/fstab: OK /tmp/fstab1: OK
修改/tmp/的内容,然后再次检查。
[root@xuexi tmp]# echo aaa >>/tmp/fstab1 [root@xuexi 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的记录
--:根本不显示任何信息。 只能通过命令的退出状态码来判断验证结果是否可用。 只要有一条记录,状态码就是1,否则就是0。
[root@xuexi tmp]# md5sum --status -c /tmp/fs.md5sum [root@xuexi tmp]# echo $? 1
通过比较数值可以判断多个文件的内容是否完全一致,但是不方便用肉眼判断,所以写了一个脚本来批量判断。