校验和是用作在数据正确数字的总和,其可以稍后用于存储或传输期间检测数据中的错误的一个数字。MD5( 消息摘要5)的款项可以用作校验和,以验证文件或字符串在Linux的文件系统 。

MD5校验和是128位的字符串(数字和字母)运行对特定文件的MD5算法得出。 MD5算法是一个流行的散列函数,它生成128位消息摘要,称为散列值,当为特定文件生成一个时,无论其生成的次数如何,它在任何机器上都保持不变。

通常很难找到导致相同字符串的两个不同的文件。 因此,你可以使用的md5sum通过确定你下载的文件或ISO是位对位远程文件或ISO的副本,检查数字数据的完整性。

在Linux中,md5sum程序计算并检查文件的MD5哈希值。 它是GNU Core Utilities包的组成部分,因此预装在大多数(如果不是所有)Linux发行版上。

看看的内容/etc/group保存为以下groups.cvs。root:x:0:

daemon:x:1:

bin:x:2:

sys:x:3:

adm:x:4:syslog,aaronkilik

tty:x:5:

disk:x:6:

lp:x:7:

mail:x:8:

news:x:9:

uucp:x:10:

man:x:12:

proxy:x:13:

kmem:x:15:

dialout:x:20:

fax:x:21:

voice:x:22:

cdrom:x:24:aaronkilik

floppy:x:25:

tape:x:26:

sudo:x:27:aaronkilik

audio:x:29:pulse

dip:x:30:aaronkilik

该命令MD5SUMS下面如下会生成该文件的哈希值:$ md5sum groups.csv

bc527343c7ffc103111f3a694b004e2f groups.csv

当您尝试通过删除第一线,改变文件的内容root:x:0:然后第二次运行命令,尝试观察哈希值:$ md5sum groups.csv

46798b5cfca45c46a84b7419f8b74735 groups.csv

你会注意到哈希值现在已经改变,表明文件的内容被改变。

现在,放回文件的第一行root:x:0:重命名为group_file.txt,并运行如下命令再次生成散列值:$ md5sum groups_list.txt

bc527343c7ffc103111f3a694b004e2f groups_list.txt

从上面的输出,即使文件已被重命名,其哈希值仍然是相同的,具有其原始内容。

重要提示 :MD5校验和只验证与该文件内容,而不是文件名/工作。

该文件groups_list.txt是groups.csv的重复,因此,试图在同一时间,以产生所述文件的散列值如下。

你会看到他们都有相等的哈希值,这是因为他们有完全相同的内容。$ md5sum groups_list.txt groups.csv

bc527343c7ffc103111f3a694b004e2f groups_list.txt

bc527343c7ffc103111f3a694b004e2f groups.csv

您可以将文件的哈希值重定向到文本文件并存储,与其他人共享。 对于上面的两个文件,您可以发出以下命令将生成的哈希值重定向到文本文件中供以后使用:$ md5sum groups_list.txt groups.csv > myfiles.md5

要检查自创建校验和后文件未被修改,请运行下一个命令。 您应该能够查看每个文件的名字伴随着“OK”。

该-c或--check选项告诉MD5SUMS命令来读取文件MD5和检查。$ md5sum -c myfiles.md5

groups_list.txt: OK

groups.csv: OK

请记住,创建校验后,不能重命名这些文件,否则你会得到一个“ 没有这样的文件或目录 ”的错误,当您尝试验证与新名称的文件。

例如:$ mv groups_list.txt new.txt

$ mv groups.csv file.txt

$ md5sum -c myfiles.md5

错误信息md5sum: groups_list.txt: No such file or directory

groups_list.txt: FAILED open or read

md5sum: groups.csv: No such file or directory

groups.csv: FAILED open or read

md5sum: WARNING: 2 listed files could not be read

这个概念也适用于琴弦一样,在下面的命令, -n手段不输出其后的换行符:$ echo -n "Howtoing How-Tos" | md5sum -

afc7cb02baab440a6e64de1a5b0d0f1b -$ echo -n "Howtoing How-To" | md5sum -

65136cb527bff5ed8615bd1959b0a248 -

在本指南中,我向您展示了如何为文件生成哈希值,创建一个校验和,以便以后在Linux中验证文件完整性。 尽管已经检测到MD5算法中的安全漏洞,但是MD5哈希值仍然有用,尤其是如果您信任创建它们的那一方。

因此,验证文件是系统上文件处理的一个重要方面,以避免下载,存储或共享损坏的文件。 最后但并非最不重要的,像往常通过下面的评论表达到我们寻求任何帮助,你可以提出一些重要的建议,以改善这篇文章。

linux 校验文件生成,在Linux中了解如何使用MD5校验和生成和验证文件相关推荐

  1. 如何在手机端从多个Excel文件多个Sheet中搜索某一内容,多个excel文件批量查找

    如何在手机端从多个Excel文件多个Sheet中搜索某一内容,多个excel文件批量查找 今天介绍一个在线工具:e.anyoupin.cn 比如: 多个年度的项目信息,每年一张工作簿.现在需要查找某些 ...

  2. 服务器拒绝了您发送离线文件的请求,电脑中QQ提示服务器拒绝了您发送离线文件如何解决...

    QQ是很多用户都会使用到的一款沟通软件,其具有非常强大的功能,QQ离线文件发送功能就是其中一种.不过,最近一些QQ用户在发送离线文件时,却遇到了QQ离线文件发送不了,提示"服务器拒绝了您发送 ...

  3. linux上存的私钥文件不能访问_linux中配置vsftpd服务器匿名用户访问,实现文件上传下载服务...

    1.安装vsftpd服务器 安装VSFTPD 安装更新完毕 2.添加防火墙使用规则 添加防火墙iptables使用规则 iptables -F 查看iptables使用情况 添加前查看防火墙列表 添加 ...

  4. c语言vi运行编译文件,VC++6.0中如何编译运行及调试C语言程序文件.docx

    VC++6. 0中如何编译运行调试C语言程序 1?启动VC++6. 0 (如下图) [5>R?*16 00 P"! tptl tub go□賦星糸理技件□中出融Fz " 口仍 ...

  5. ios打不开html文件,在DocumentsWeb目录中打开UIWebview时,ios-css和js在html文件中无法链接...

    显然,以编程方式加载HTML文件时,文档库与应用程序的Documents目录不同. 查看HTML中的BASE元素,它位于< head>内.元件: gt; Meta charset=&quo ...

  6. 如何从多个Excel文件多个Sheet中搜索某一内容,多个excel文件批量查找的绿色工具

    如何在多个EXCEL文件中批量搜索或批量查找,并展示出查找内容所在的行,所在的文件.所在表信息. 在日常办公中,经常从面临多个Excel文件查找出需要的信息.对于复杂的信息有时候也需要支持正则表达式的 ...

  7. linux和windows双系统互拷文件乱码问题,linux和windows双系统互拷文件乱码问题

    如果你需要在linux下面用到windows下的文件,拷贝上去后经常发现中文显示乱码..原因是Windows中默认的文件格式是 GBK(gb2312),而Linux一般都是UTF-8.比较繁琐的方法是 ...

  8. linux给数据库重命名,Linux学习笔记:mv移动或文件重命名

    mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令,经常用来备份文件或者目录. 语法:mv 源文件 目标文件 视mv命令中 ...

  9. 【Linux编程】二、Linux常见工具和项目开发(思维导图总结)

    文章目录 Linux 软件包管理工具 yum 什么是软件包? 关于rzsz 注意事项 查看软件包 如何安装软件 如何卸载软件 总结:三板斧操作 用yum来安装几个好玩的东西 前期准备 安装小火车 安装 ...

最新文章

  1. C#面向对象设计模式第二讲:Singleton Pattern单件模式(创建型模式)
  2. win10安装misql8_Windows10安装MySQL 8.0.11
  3. 双十一快递被暴力分拣,快递员踩踏包裹随意扔,网友们却表示很理解...
  4. posix thread条件变量
  5. k8s核心技术-Pod(健康检查)_健康检查的方式_以及pod崩溃后如何处理---K8S_Google工作笔记0023
  6. linux的vi2编辑相关命令,Linux vi/vim编辑器常用命令与用法总结
  7. w10计算机运行特别卡,win10电脑卡顿的五种原因及解决方法
  8. Mac键盘部分数字键和字母键失灵,无法使用怎么办?
  9. mac php pear pecl,mac 安装 pecl pear
  10. 高薪、高收入程序员背后全是辛酸泪!熬夜,作息饮食不规律,体重增加,掉头发,黑眼圈,生病,鼠标手,颈椎病,免疫力下降?
  11. url相关工具 - url转码工具
  12. buuctf-AWD-测试1
  13. excel怎么设置打印区域_Excel数据太多,无法完整打印在一张纸上?你这样设置即可搞定...
  14. 理解矩阵和特征向量的本质
  15. 我为什么要考非全日制研究生
  16. LeetCode之路:122. Best Time to Buy and Sell Stock II
  17. 计算机系统基础实验报告
  18. 企业内训——如何成为一家高利润的公司
  19. XSS漏洞基础学习(笔记)
  20. UNICODE_STRING、全局句柄表、文件、注册表、LIST_ENTRY、HASH、TREE、LookAside

热门文章

  1. python的unicode_python的unicode及其编码解码
  2. 【小项目关键技术】硬件通信三种方式、串口、IIC、SPI
  3. 【小项目关键技术七】MPU6050
  4. 【Matlab 控制】绘制盖尔圆
  5. STM32 电机教程 12 - BLDC 闭环电流控制
  6. ESP32的FLASH、NVS、SPIFFS、OTA等存储分布以及启动过程
  7. 大牛深入浅出讲解C语言#define宏定义应用及使用方法
  8. 点滴篇(一) 第一篇 博客
  9. jQuery框架风云榜案例
  10. Error opening zip file or JAR manifest missing的解决方法