使用哈希的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. 什么是RESTful API、WSGI、pecan

    RESTful API REST的全称是Representational State Transfer(表征状态转移), 是Roy Fielding在他的博士论文Architectural Style ...

  2. laravel 的lnmp 的配置

    装了lnmp后,一般用 lnmp vhost add 添加网站 一般 只用重写和ssl功能 再发laravel官方的配置 server { listen 80; server_name example ...

  3. kafka消费之kafka查看topic是否有数据

    通过原生kafka,查看对应的topic是否有数据 下载kafka:登录Apache kafka官方下载 http://kafka.apache.org/downloads.html 配置config ...

  4. linux上安装Eclipse

    之所以要在linux上安装Eclipse,是因为一开始我是通过Eclipse+MingW+Samba+GDBserver方式在Windows上远程操作,准备编译调试nginx源代码的,可是在编译调试过 ...

  5. 一、Core授权(基于cookie)

    一.Core的授权 配置 打开项目中的Startup.cs文件,找到ConfigureServices方法,我们通常在这个方法里面做依赖注入的相关配置.添加如下代码: public void Conf ...

  6. js实现倒计时(分:秒)

    上代码: //倒计时start 需要传入的参数为秒数,此方法倒计时结束后会自动刷新页面 function resetTime(timetamp){ var timer=null; var t=time ...

  7. Fiddler抓包的简单使用

    Fiddler抓包的简单使用 参考的博客文章:玲虫师的<Fiddler抓包[5]_Fiddler过滤>. (1)使用fiddler进行过滤,只抓取需要的网络请求. 点击右侧菜单中的[Fil ...

  8. HDU - 4358 Boring counting (树上启发式合并/线段树合并)

    题目链接 题意:统计树上每个结点中恰好出现了k次的颜色数. dsu on tree/线段树合并裸题. 启发式合并1:(748ms) #include<bits/stdc++.h> usin ...

  9. 部署zabbix 4.0 + grafana

    不完整,仅供参考 Zabbix+grafana监控部署 基本环境 系统: CentOS Linux release 7.3.1611 Zabbix—server:  Zabbix_agent:   N ...

  10. 使用vscode打断点

    1.vscode打开的文件必须只包含你要调适的项目,不能同时在一个vscode打开多个项目窗口 2.点击vscode的这个小蜘蛛 3.选择添加配置 4.此时自动生成了一个文件,launch.json: ...