使用哈希的md5给文件加指纹,如果文件被更改,指纹信息就会不匹配,从而确定文件的原值是否被改动。

[root@b test]# md5sum a.txt > zhiwen.txt
[root@b test]# md5sum -c zhiwen.txt    #-c参数检查文件指纹有没有发生变化
a.txt: OK
[root@b test]# echo aa >> a.txt
[root@b test]# md5sum -c zhiwen.txt
a.txt: FAILED
md5sum: WARNING: 1 computed checksum did NOT match

[root@b test]# vim backup_tar.sh

cd /  &&\

#其中&&\表示前面的命令执行成功,继续执行后面的命令,中间不间断
tar zcfh /backup/sys_config_$(date+%F).tar.gz var/spool/cron /etc/rc.local /serv
er/scripts &&\
tar zcfh /backup/webdata_$(date+%F).tar.gz /var/html/www/ &&\        

#tar的-h选项表示打包的目标文件如果为软连接,则将其源文件也进行打包,防止打包后文件不能使用。

tar zcf /backup/access_log_$(date+%F).tar.gz /app/logs &&\
find /backup -type f -name "*.tar.gz"| xargs md5sum >/backup/flag_$(date +%F)

#其中xargs作用是将所有的打包文件进行md5校验,验证生成的文件是否被他人篡改

[root@b ~]# for i in `seq 1000`;do echo $RANDOM |md5sum |tr 'a-z' '0-9'|cut -c 1-32 >>aa.txt;done

[root@b ~]# cat aa.txt |sort -nr |uniq -c |awk '{if($1>1){print $0}}'

#echo $RANGDOM输出一个系统随机数,通过md5加密,用tr将所有字母换成数字,截取其前32个字符追加到aa.txt文件,通过for语句循环1000次;过滤aa.txt文件。查看其重复次数超过1次的所有md5值

tr是个简单的替换命令,从标准输入中替换、缩减和/或删除字符,并将结果写到标准输出。

tr常见命令参数

用法:tr [选项]... SET1 [SET2]

从标准输入中替换、缩减和/或删除字符,并将结果写到标准输出。
 
 -c, -C, --complement            首先补足SET1
 -d, --delete                 删除匹配SET1 的内容,并不作替换
 -s, --squeeze-repeats 如果匹配于SET1的字符在输入序列中存在连续的重复,在替换时会被统一缩为一个字符的长度
 -t, --truncate-set1            先将SET1 的长度截为和SET2 相等
   --help                显示此帮助信息并退出
   --version              显示版本信息并退出

md5值校验的更多相关文章

  1. 下载文件的一致性验证之MD5值校验

    前几天写脚本遇到下载功能校验,一时间不到怎么校验好? 于是请教大神,大神给出方案如下:  先去了解一下你们的产品针对这个下载功能有没有做什么功能设计...然后再针对这些功能设计去设计测试用例...比如 ...

  2. 【python】-- Socket粘包问题 ,解决粘包的几种方法、socket文件下载,md5值检验

    上一篇随笔:“socket 接收大数据”,在win系统上能够运行,并且解决了大数据量的数据传输出现的问题,但是运行在linux系统上就会出现如下图所示的情况: 就是服务端两次发送给客户端的数据(第一次 ...

  3. MD5工具类,提供字符串MD5加密、文件MD5值获取(校验)功能

    MD5工具类,提供字符串MD5加密(校验).文件MD5值获取(校验)功能 : package com.yzu.utils; import java.io.File; import java.io.Fi ...

  4. Python校验文件MD5值

    import hashlib import os def GetFileMd5(filename): if not os.path.isfile(filename): return myHash = ...

  5. 获取txt md5值上传文件完整性校验

    网络上传文件到服务器 做md5 校对.判断文件是否破坏 首先求txt文件的md5值 ,1万条数据 求出的值 文件MD5:e5467b6a8e3c26af8c5af0bda3739280 服务器处理程序 ...

  6. asp.net和js读取文件的MD5值的方法

    前言 文件的md5值,即文件签名,为了验证文件的正确性,是否被恶意篡改等.每个文件有一个唯一的md5值. 最近公司开发的app文件包的校验就有用到文件md5值. 一.asp.net获取 ①和上传文件一 ...

  7. C#计算文件的MD5值实例

    C#计算文件的MD5值实例 MD5 是 Message Digest Algorithm 5(信息摘要算法)的缩写,MD5 一种散列(Hash)技术,广泛用于加密.解密.数据签名和数据完整性校验等方面 ...

  8. iOS开发之获取文件的md5值

    我们经常有下载文件上的需求 为了安全我们经常需要对文件进行md5校验 那我就来给大家分享一个很方便的获取文件md5值得方法. 首先需要引用系统库文件 #include <CommonCrypto ...

  9. ios获取文件的MD5值

    一般我们在使用http或者socket上传或者下载文件的时候,经常会在完成之后经行一次MD5值得校验(尤其是在断点续传的时候用的更 多),校验MD5值是为了防止在传输的过程当中丢包或者数据包被篡改,在 ...

随机推荐

  1. Vue中的组件直接的通信是如何实现的

    组件关系可分为父子组件通信.兄弟组件通信 1.父组件传子组件 通过props属性来实现 2.子组件传父组件 子组件用$emit()来触发事件,父组件用$on()来监听子组件的事件 3.兄弟之间的通信 ...

  2. 第98:svd原理

    SVD分解:任何矩阵都可以分解成第一行的形式,3个相乘.UV都是正交矩阵,中间的是奇异值. 3个相乘的形式可以拆分.即奇异值*第一行*第一列.在相加. 奇异值有时很小,在这种情况下,丢掉,可以减少计算 ...

  3. MHA ssh检查,repl复制检查和在线切换日志分析

    一.SSh 检查日志分析 执行过程及对应的日志: 1.读取MHA manger 节点上的配置文件 2.根据配置文件,得到各个主机的信息,逐一进行SSH检查 3.每个主机都通过SSH连接除了自己以外的其 ...

  4. Delphi 7的特点

  5. Linux系统Tomcat进程使用shutdown无法关闭进程

    问题场景: 若在应用中启动了用户线程,在Linux系统Tomcat进程使用shutdown无法关闭进程. 解决方案: #1.在catalina.sh文件中添加CATALINA_PID [root@lo ...

  6. MongoDB入门_shell基本操作

    使用shell客户端连接mongoDB数据库 [root@localhost mongodb_simple]# ./bin/mongo /admin mongoDB的简单基本操作 1. mongoDB ...

  7. 对mysql进行快照复制

    Myself> flush tables with read lock; 之后开始创建快照 [root@server0 mysql]# lvcreate -L 100M -s -n dbback ...

  8. Java学习01-使用maven插件tomcat搭建web maven项目

    我使用社区版的IDEA,社区版的没有tomcat插件,只能使用maven插件进行tomcat的使用了,下面进入正题 一.pom.xml配置tomcat插件 <build> <fina ...

  9. 十一、S3C2440 裸机 — GPIO

    11.1 GPIO 介绍 11.1.1 GPIO 管脚 GPIO 即是输入输出端口,S3C2440A 包含了 130 个多功能输入/输出口引脚并且它们为如下显示的八个端口: 端口 A(GPA):25 ...

  10. Java并发编程实战 第13章 显式锁

    接口Lock的实现类: ReentrantLock, ReentrantReadWriteLock.ReadLock, ReentrantReadWriteLock.WriteLock Reentra ...