使用哈希的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. spring boot 是如何利用jackson进行序列化的?

    接上一篇:spring boot 是如何利用jackson进行反序列化的? @RestController public class HelloController { @RequestMapping ...

  2. 普通交叉验证(OCV)和广义交叉验证(GCV)

    普通交叉验证OCV OCV是由Allen(1974)在回归背景下提出的,之后Wahba和Wold(1975)在讨论 了确定多项式回归中多项式次数的背景,在光滑样条背景下提出OCV. Craven和Wa ...

  3. js 学习四 对象应用 吃货游戏

    游戏来源于 Mdn学习网站: 该例子用于对象的理解非常有效(建议看完上面网站的内容在开始练习) 弹球 body { margin: 0; overflow: hidden; font-family: ...

  4. joomla core注入漏洞

    注入语句如下: payload1 = '/index.php?option=com_fields&view=fields&layout=modal&list[fullorder ...

  5. Ubuntu换阿里云源

    sudo -s cd /etc/apt gedit source.list deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted u ...

  6. AIX中的页空间管理

    1.页空间简介(Paging  Space) 页空间是指硬盘上的存储内存信息的区域. 一个页空间也叫做一个交换空间. 是系统中一个类型为paging的逻辑卷.       2.创建页空间 使用mkps ...

  7. PAT Basic 1033 旧键盘打字 (20 分)

    旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及坏掉的那些键,打出的结果文字会是怎样? 输入格式: 输入在 2 行中分别给出坏掉的那些键.以及应该输入 ...

  8. Spring 整合过滤器

    过滤器Filter是Servlet的一个技术,可通过过滤器对请求进行拦截,比如读取session判断用户是否登录.判断访问的请求URL是否有权限. 1.使用@WebFilter注解 controlle ...

  9. ZROI 19.07.29 线性代数入门/wq

    1.高斯消元 在模意义下依然有效,对主元求逆即可. 甚至可以模合数,需要对两个方程辗转相除,复杂度\(O(n^3\log p)\). 辗转相除法只要能定义带余除法就有效. 逆矩阵:对于矩阵\(A\), ...

  10. java面向对象1-面向对象概念

    面向对象概念-类与对象的关系 封装:指隐藏对象的属性和实现细节,仅对外提供公共访问方式,private-构造方法/构造器-this关键字-static关键字(javadoc制作工具类) -代码块 继承 ...