checksum命令 linux_linux命令详解:md5sum命令

作为一个运维工作者,日常肯定会频繁的更新,怎样区分每次的更新 更清楚的区别两次更新的文件的不同呢 推荐一个比较实用的方法,即获取每次更新文件的md5值。

前言在网络传输、设备之间转存、复制大文件等时,可能会出现传输前后数据不一致的情况。这种情况在网络这种相对更不稳定的环境中,容易出现。那么校验文件的完整性,也是势在必行的。

使用说明md5sum命令用于生成和校验文件的md5值。它会逐位对文件的内容进行校验。是文件的内容,与文件名无关,也就是文件内容相同,其md5值相同。md5值是一个128位的二进制

md5校验,有很小的概率不同的文件生成的md5可能相同。比md5更安全的校验

在网络传输时,我们校验源文件获得其md5sum,传输完毕后,校验其目标文件,并对比如果源文件和目标文件md5 一致的话,则表示文件传输无异常。否则说明文件在传输过程中未正确传输。重要的选项:

-b 以二进制模式读入文件内容

-t 以文本模式读入文件内容

-c 根据已生成的md5值,对现存文件进行校验

--status 校验完成后,不生成错误或正确的提示信息,可以通过命令的返回值来判断。

使用举例生成文件md5值

md5sum file1: [root@master lianxi]# md5sum data2: 0a6de444981b68d6a049053296491e49  data使用通配对多个文件进行md51: [root@master lianxi]# md5sum *2: 0a6de444981b68d6a049053296491e49  data3: 13df384c47dd2638fd923f60c40224c6  data2

md5sum校验的是文件内容,与文件名无关

相同内容的文件的md5一样。如下我先对文件进行复制,然后对同内容不同名的文件进行md5,md5值一样1: [root@master lianxi]# cp data  data.bak2: [root@master lianxi]# ls3: data  data.bak4: [root@master lianxi]# md5sum *5: 0a6de444981b68d6a049053296491e49  data6: 0a6de444981b68d6a049053296491e49  data.bak以文本模式或二进制模式读入文件并对其进行校验

-b 以二进制模式读入内容

-t 以文本模式读入文件内容进行校验

虽然是不同的读入模式,但是在进行求md5的时候,是一样的,因为是逐位校验的。

如下文本文件,无论通过哪种模式读取md5都一致。1: [root@master lianxi]# file data2: data: ASCII text3: [root@master lianxi]# md5sum data4: 0a6de444981b68d6a049053296491e49  data5: [root@master lianxi]# md5sum -b data6: 0a6de444981b68d6a049053296491e49 *data7: [root@master lianxi]# md5sum -t data8: 0a6de444981b68d6a049053296491e49  datamd5值重定向

将生成md5值重定向到指定的文件,通常文件的扩展名我们会命为.md51: [root@master lianxi]# md5sum data > data.md52: [root@master lianxi]# md5sum data3: 0a6de444981b68d6a049053296491e49  data4: [root@master lianxi]# cat data.md55: 0a6de444981b68d6a049053296491e49  data将多个文件的md5重定向到指定的文件

每个文件的md5生成为一行1: [root@master lianxi]# ls2: data  data.bak  data.md5  d.md53: [root@master lianxi]# md5sum data* > d.md54: [root@master lianxi]# cat d.md55: 0a6de444981b68d6a049053296491e49  data6: 0a6de444981b68d6a049053296491e49  data.bak7: 0bd94658869c53cdcdf35a0f7de93e01  data.md5重定向追加

这里新增文件ls,单独求其md5,将其md5追加到文件中1: [root@master lianxi]# cp /bin/ls .2: [root@master lianxi]# ls3: data  data.bak  data.md5  d.md5  ls4: [root@master lianxi]# md5sum ls >> d.md55: [root@master lianxi]# cat d.md56: 0a6de444981b68d6a049053296491e49  data7: 0a6de444981b68d6a049053296491e49  data.bak8: 0bd94658869c53cdcdf35a0f7de93e01  data.md59: c6337b20f3c159544bff5cf622391f9e  lsmd5校验

-c选项来对文件md5进行校验。校验时,根据已生成的md5来进行校验。生成当前文件的md5,并和之前已经生成的md5进行对比,如果一致,则返回OK,否则返回错误信息

md5sum –c d.md51: [root@master lianxi]# md5sum -c d.md52: data: OK3: data.bak: OK4: data.md5: OK5: ls: OK修改文件后,文件md5变化1: [root@master lianxi]# ls2: data3: [root@master lianxi]# md5sum data4: 2360752c3368ca4f89169f5ecc06e383  data5: [root@master lianxi]# md5sum data  > data.md56: [root@master lianxi]# echo "lwg" >> data7: [root@master lianxi]# md5sum data8: 287d237083a42f09785daa46a5fa3afe  data9: [root@master lianxi]# md5sum -c data.md510: data: FAILED11: md5sum: WARNING: 1 of 1 computed checksum did NOT match--status,不显示校验信息,以命令返回值来判断

校验一致返回0,不一致返回11: [root@master lianxi]# md5sum -c data.md52: data: FAILED3: md5sum: WARNING: 1 of 1 computed checksum did NOT match4: [root@master lianxi]# md5sum -c --status data.md55: [root@master lianxi]# echo $?6: 1多个文件文件校验和grep连用

通过grep将正确的信息过滤掉1: [root@master lianxi]# md5sum -c ../value.md52: acpid: OK3: acpid.1: OK4: anaconda.log: OK5: anaconda.syslog: OK6: anaconda.xlog: OK7: boot.log: OK8: boot.log.1: OK9: ...10: ...11: 省略中间部分12: ...13: ...14: yum.log.2: OK15: md5sum: WARNING: 1 of 56 computed checksums did NOT match1: [root@master lianxi]# md5sum -c ../value.md5 | grep -v OK2: md5sum: WARNING: 1 of 56 computed checksums did NOT match3: cron.1: FAILED

特殊说明1)md5sum 是校验文件内容,与文件名是否相同无关

2)md5sum值逐位校验,所以文件越大,校验时间越长。

总结通过md5sum来校验生成文件校验码,来发现文件传输(网络传输、复制、本地不同设备间的传输)异常造成的文件内容不一致的情况。

shell范例:

md5sum file| awk -F "/" '{print $1,$6}'

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/500746.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

未来计算机是什么结合的产物,计算机未来发展趋势 (2)

计算机发展趋势计算机网络技术是通信技术与计算机技术相结合的产物。计算机网络是按照网络协议,将地球上分散的、独立的计算机相互连接的集合。连接介质可以是电缆、双绞线、光纤、微波、载波或通信卫星。计算机网络具有共享硬件、软件和数据资源的功能,…

搜索文献_如何有效地搜索及阅读文献

解读论文写作与发表策略助您成功发表关注文献的阅读与科研息息相关,不做好文献调研,就无法真正开展课题,也无法掌握当前最新的研究进展,创新也就无从谈起。但是,相信很多同学,特别是刚读研的同学&#xff0…

显卡直通_英伟达RTX 30系显卡发布:性价比打哭2080Ti

9 月 2 日消息,英伟达在今天凌晨正式发布了 GeForce RTX 30 系列显卡,首发型号包括 RTX 3070、RTX 3080 及 RTX 3090 共三款。新一代 RTX 30 系列显卡基于三星 8nm 制程工艺打造,采用了全新的安培(AMPERE)架构,搭载第二代 RT Core…

学计算机应用用画画吗,宝宝学画画

宝宝学画画电脑版是专为儿童设计的画图软件,是一款界面友好的触摸式平台,宝宝学画画功能非常强大,界面简洁明晰、操作方便快捷,设计得很人性化。宝宝学画画为儿童用户提供友好并富有创意的使用环境,让他们感受用计算机…

计算机网络电子邮件的基本格式,怎样的格式才是正确的电子邮件格式?

楼主:你好,很高兴为你解答。电子邮件(E-mail)是建立在计算机网络上的一种通信形式。计算机用户可以利用网络传递电子邮件,实现相互通信。电子邮件可在计算机局域网上进行,也可在计算机广域网上进行。进行电子邮件通信,…

华为tsm_台积电:如果不能向华为销售芯片,其他订单可快速取代华为空缺

6月9日消息,据国外媒体报道,台积电周二表示,如果美国禁令禁止公司向华为销售芯片,其他订单可以很快取代华为空缺。台积电在年度股东会上,台积电董事长刘德音表示,我们希望(禁止公司向华为销售芯片)不要发生…

戴尔便携式计算机无法开机,戴尔笔记本电脑开不了机如何解决【解决方法】

生活在互联时代下,我们对笔记本的需求是无处不在的,不管是上班族还是学生党,使用笔记本办公和学习给我们的生活带来很大的便捷。但使用的过程中,总有可能会遇到无法预料的问题。比方说 笔记本电脑 无法开机的问题,当遇…

ida导入jni头文件_IDA动态调试无法导入JNI文件的解决办法

前言:学习过程中遇到了,特此记录一下。样本app链接在这里:https://pan.baidu.com/s/1pVLBBuBKRzDzHlBClrBA2A 提取码: 9tz8它是 2015年阿里的一个反调试app,我是参考这篇文章来过反调试的:https://blog.csdn.net/Viewz…

计算机软件名称用什么符号,[计算机软件及应用]第九章符号表.ppt

[计算机软件及应用]第九章符号表第9章 符号表 符号表 用来存放在词法分析过程中生成的有关标识符的语义特征属性信息 符号表中所登记的信息在编译的不同阶段都要用到。 例如作为语义检查的依据,目标代码生成阶段地址分配的依据等。 不同种类的表格所涉及的操作往往是…

mf253s移动版变全网通_中国电信发布5G全网通终端需求白皮书v2.0

2019-11-07 10:56 2019年10月31日,中国5G正式商用,标志着5G发展已进入快车道,整个社会各行各业对5G热情高涨,业界纷纷增加5G投入,5G终端的发展进程必将加快,市场空间巨大,潜力无限。 为更好地引…

广西 启动计算机教案,广西版六年级下册信息技术教案.docx

文档介绍:广西版六年级下册信息技术教案三年级下册信息技术教案1广西版六年级下册信息技术教案主题一制作Flash动画任务一美丽蝴蝶画出来一、教学目标知识与技能:①、认识flash窗口及工具栏;②、能够利用工具栏绘制图画;③、学会简单修改图画。过程与方法:通过用工具…

sap权限激活_sap角色权限设置手册V1.0

SAP角色权限设置及测试手册作者:邓珍石版本:V1.0第1页共14页SAP角色权限设置及测试手册(一)从Source Role拷贝生成Common Role.............................................................................2(二)直接创建生成Common Role ...........…

2020江苏计算机二级考试官网,2020年秋季江苏省计算机等级考试报名通知

2020年秋季江苏省高等学校计算机等级考试报名工作即将开始。现将有关事宜通知如下:一、报名时间和办法网上报名开放时间为:2020年8月28日10:00至9月4日16:00方法:登录信息门户(http://my.seu.edu.cn),选择“教学服务”页面&#x…

质量码_在验证牛顿第二定律实验为什么要保证槽码质量m远远小于小车质量M?...

在验证牛顿第二定律实验中,要保证槽码总质量m远远小于小车的质量M,为什么要这样?在“验证牛顿第二定律”实验中要求测量物体所受合外力和物体的总质量,而且对这两个物理量越容易测量越好.通过“等效法”的阐述我们已经知道,绳子对小车的拉力即…

计算机论文的的格式,计算机论文格式模板.doc

计算机论文格式模板作为计算机专业的同学,我们应该学会如何书写一份本专业的论文。对于论文的格式和写法大家了解过吗?以下是精心准备的计算机论文格式模板,大家可以参考以下内容哦!摘要:随着互联网宽带的飞速告诉的发…

拆分列成多行_把订单按货品拆分成多行(上)

办公的小伙伴们,今天小编来和大家分享。如何将一个单元格中有多行数据拆分成多行。看下图:要把订单按货品拆分成多行明细。下面给出几种不同的方法。一一一一一一一一一一一一一一一一一一一一一一方法一:借word来拆分内容Step1:把…

中北大学计算机二级负责老师,导师信息#中北大学计算机与控制工程学院研究生导师介绍#秦品乐...

姓名:秦品乐教育经历:1978年生,博士,副教授,硕士生导师。2009年-2011年大连理工大学工业装备与结构分析国家重点实验室从事博士后工作;2010年-2011年受教育部高等学校青年骨干老师国内访问学者资助在大连海…

遍历对象属性_细说JS遍历对象属性的N种方法

本人详细介绍了JS遍历对象N种方法,欢迎关注收藏。遍历对象属性有五种方法,下图为一个场景对比图。可以注意到两点:只有for ... in 才可以遍历原型链属性,且只能遍历可枚举属性。Object.getOwnPropertyNames Object.getOwnPropert…

计算机考试减法公式,Excel减法函数公式

根据网友提出的“错位减法的Excel减法公式”等问题,Excel办公网整理了一些著名网站上关于“错位减法的Excel减法公式”的信息标题: 求等比数列前n项之和的方法(数学)公式法和位错减法最好有一个例子参考文献: 常用方法包括:一. 公式法: 采用等差数列和等比数列求和的…

easyui label显示不全_easyui 元素遍历问题

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼easyui 1.7.2一个编辑对话框要提交的时候想遍历一下form上的所有需要提交元素的name属性及值,结果发现在处理easyui-combobox的时候得到的值总是怪怪的,会多出一到两组数据,请教下是何原因,不知道各位吧友是如何实现的?代码如下:g…