Linux md5sum 的用法
MD5 算法常常被用来验证网络文件传输的完整性,防止文件被篡改。MD5 全称是报文摘要算法,此算法对任意长度
的信息逐位计算,产生一个二进制长度为 128 位(十六进制长度 32 位)的报文摘要,不同的文件产生相同的报文摘要的可
能性非常小。
在 Linux 上,md5sum 是用来计算和校验文件报文摘要的工具程序。一般来说,安装了 Linux 后,就会有 md5sum 这
个工具,直接在命令行终端直接运行。
1.使用 md5sum 来产生报文摘要命令如下:
md5sum file > file.md5
或
md5sum file >> file.md5
也可以把多个文件的报文摘要输出到一个文件中,这需要使用通配符 * ,比如某目录下有几个 iso 文件,要把这几个iso
文件的报文摘要输出到 iso.md5 文件中,命令如下:
md5sum *.iso > iso.md5
2.使用 md5 报文摘要验证文件
2.1 把下载的文件 file 和 该文件的 file.md5 报文摘要放在同一个目录下,然后用如下命令进行验证:
md5sum -c file.md5
2.2 使用 md5sum file 命令会输出一个 md5 的报文摘要,然后把这个报文摘要直接与 file.md5 中的内容比较。
示例如下:
[root@VM_81_181_centos ~]# mkdir test
[root@VM_81_181_centos ~]# cd test/
[root@VM_81_181_centos test]# touch f1.txt f2.txt
[root@VM_81_181_centos test]# ls
f1.txt f2.txt
[root@VM_81_181_centos test]# md5sum *.txt > md5sumtest.md5
[root@VM_81_181_centos test]# cat md5sumtest.md5
d41d8cd98f00b204e9800998ecf8427e f1.txt
d41d8cd98f00b204e9800998ecf8427e f2.txt
[root@VM_81_181_centos test]# echo "hahaha" > f1.txt
[root@VM_81_181_centos test]# md5sum -c md5sumtest.md5
f1.txt: FAILED
f2.txt: OK
md5sum: WARNING: 1 computed checksum did NOT match
[root@VM_81_181_centos test]# echo "hahaha" > f2.txt
[root@VM_81_181_centos test]# md5sum -c md5sumtest.md5
f1.txt: FAILED
f2.txt: FAILED
md5sum: WARNING: 2 computed checksums did NOT match
[root@VM_81_181_centos test]# cat /dev/null > f1.txt
[root@VM_81_181_centos test]# md5sum -c md5sumtest.md5
f1.txt: OK
f2.txt: FAILED
md5sum: WARNING: 1 computed checksum did NOT match
[root@VM_81_181_centos test]# cat /dev/null > f2.txt
[root@VM_81_181_centos test]# md5sum -c md5sumtest.md5
f1.txt: OK
f2.txt: OK
[root@VM_81_181_centos test]#
生成一个文件的 md5 值
[root@VM_81_181_centos test]# md5sum f1.txt
d41d8cd98f00b204e9800998ecf8427e f1.txt
Linux md5sum 的用法的更多相关文章
- (转) linux之sort用法
sort命令是帮我们依据不同的数据类型进行排序,其语法及常用参数格式: sort [-bcfMnrtk][源文件][-o 输出文件] 补充说明:sort可针对文本文件的内容,以行为单位来排序. 参 数 ...
- linux mail命令用法
在Linux系统下mail命令的测试 1. 最简单的一个例子: mail -s test admin@aispider.com 这条命令的结果是发一封标题为test的空信给后面的邮箱,如果你有mta并 ...
- linux expect, spawn用法小记
linux expect, spawn用法小记_IT民工_百度空间 linux expect, spawn用法小记 版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://sys ...
- linux下automake用法
linux下automake用法 2017年02月06日 09:21:14 阅读数:3684 标签: makemakefilegnulinux 作为Linux下的程序开发人员,大家一定都遇到过Ma ...
- Linux上case用法
Linux上case用法示例: #!/bin/bash # This is a script for test case ASK_COUNT=$ #从参数获取该变量的值 # if [ -z " ...
- Linux shell ${}简单用法
转自:Linux shell ${}简单用法 为了完整起见,我这里再用一些例子加以说明 ${ } 的一些特异功能:假设我们定义了一个变量为:file=/dir1/dir2/dir3/my.file.t ...
- Linux中find用法
Linux中find用法 linux常用命令 find -name april* 在当前目录下查找以april开始的文件 find -name april* fprint file 在当前目录下查找以 ...
- (转)linux paste命令用法详解
linux paste命令用法详解原文:http://www.xfcodes.com/linuxcmd/mulu/10211.htmlinux下paste命令,可用于合并文件的列. 功能说明:合并文件 ...
- 【转载】linux之sed用法
linux之sed用法 原文地址:http://www.cnblogs.com/dong008259/archive/2011/12/07/2279897.html sed是一个很好的文件处理工具 ...
随机推荐
- Oracle课程档案,第十四天
备份数据文件:SQL> select file_id, file_name from dba_data_files; backup:备用(备份) datafile:数据文件 backup tab ...
- Python学习之旅(十)
Python基础知识(9):函数(Ⅰ) Python中函数的定义:是逻辑结构和过程化的一种编程方法 定义方法: def test(x): #def:定义函数的关键字 test:函数名 x:形参,也可以 ...
- sql 2005性能调优
转自:http://www.cnblogs.com/MR_ke/archive/2010/08/25/1807856.html SQL Server在运行一段时间,随着数据的积累,SQL运行效率会逐步 ...
- Kerberos安全体系详解---Kerberos的简单实现
1. Kerberos简介 1.1. 功能 一个安全认证协议 用tickets验证 避免本地保存密码和在互联网上传输密码 包含一个可信任的第三方 使用对称加密 客户端与服务器(非KDC)之间能够相互 ...
- 搭建Harbor企业级docker仓库
搭建Harbor企业级docker仓库 一.Harbor简介 1.Harbor介绍 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如 ...
- 并行开发-Task
Task 对于多线程,经常使用的是Thread.在了解Task之前,如果要使用多核的功能可能就会自己来开线程,然而这种线程模型在.net 4.0之后被一种称为基于“任务的编程模型”所冲击,这就是Tas ...
- 删除64位ODBC数据源DNS
1.按照打开管理工具-打开数据源(ODBC),进入如下界面,选择用户DSN删除,发现报错一直删除不了. 2.成功删除:进入如下图路径,打开ODBC数据源管理工具,选择要删除的DSN就可以成功删除啦.
- 17.0-uC/OS-III消息管理
消息传递 有些情况下任务或ISR与另一个任务间进行通信,这种信息交换叫做作业间的通信. 可以有两种方法实现这种通信: 全局变量. 发送消息. 1.果使用全局变量,任务或ISR就须确保它独占该变量.如果 ...
- Vuex入门(5)—— 为什么要用Action管理异步操作
Action 类似于 mutation,不同在于: 1.Action 提交的是 mutation,而不是直接变更状态. 2.Action 可以包含任意异步操作. 官方给的定义我没什么意见,事实上我通过 ...
- UIWebView 缓存
//存储cookie的方法 - (void)saveCookies { // 创建一个可变字典存放cookie NSMutableDictionary *fromappDict = [NSMutabl ...