经常在Linux下下载软件的人,一定会有一个良好的习惯:校验文件的hash,以确定文件的完整性甚至是安全性。我配置环境的时候也恰好用到了,笔者的是一个lubuntu的机子。这里我大致做个记录。(不了解hash的请自行查阅相关资料)

MD5校验:

magic@luna:~/lnmp$ md5sum lnmp1.3-full.tar.gz
a5aa55cd177cd9b9176ad697c12e45c0 lnmp1.3-full.tar.gz

或者我们可以保存到一个文件中:

magic@luna:~/lnmp$ md5sum lnmp1.3-full.tar.gz > md5-hash.txt

然后:

magic@luna:~/lnmp$ cat md5-hash.txt
a5aa55cd177cd9b9176ad697c12e45c0 lnmp1.3-full.tar.gz

还可以根据已经得到的hash来确认文件:

magic@luna:~/lnmp$ md5sum -c md5-hash.txt
lnmp1.3-full.tar.gz: 确定
magic@luna:~/lnmp$

SHA1:

这个类似于MD5校验方法:

magic@luna:~/lnmp$ sha1sum lnmp1.3-full.tar.gz
ee7ec6e8be0b3b5a481df903427261236f9bb057 lnmp1.3-full.tar.gz

或者保存到文件中再去查看:

magic@luna:~/lnmp$ sha1sum lnmp1.3-full.tar.gz > sha1-hash.txt
magic@luna:~/lnmp$ cat sha1-hash.txt
ee7ec6e8be0b3b5a481df903427261236f9bb057 lnmp1.3-full.tar.gz

已知hash情况下的校验(通常这个情况还挺多):

magic@luna:~/lnmp$ sha1sum -c sha1-hash.txt
lnmp1.3-full.tar.gz: 确定
magic@luna:~/lnmp$

注意事项:在已知hash数值情况下对文件进行校验的时候要注意,一定要让系统能够找到要校验的文件。否则就没法进行校验了。具体的使用说明,可以通过md5(sha1)sum --help来查看:

magic@luna:~/lnmp$ sha1sum --help
Usage: sha1sum [OPTION]... [FILE]...
Print or check SHA1 (160-bit) checksums. 如果没有指定文件,或者文件为"-",则从标准输入读取。 -b, --binary read in binary mode
-c, --check 从文件中读取SHA1 的校验值并予以检查
--tag create a BSD-style checksum
-t, --text 以纯文本模式读取(默认) The following five options are useful only when verifying checksums:
--ignore-missing don't fail or report status for missing files
--quiet don't print OK for each successfully verified file
--status don't output anything, status code shows success
--strict exit non-zero for improperly formatted checksum lines
-w, --warn warn about improperly formatted checksum lines --help 显示此帮助信息并退出
--version 显示版本信息并退出 The sums are computed as described in FIPS-180-1. When checking, the input
should be a former output of this program. The default mode is to print a
line with checksum, a space, a character indicating input mode ('*' for binary,
' ' for text or where binary is insignificant), and name for each FILE. GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
请向<http://translationproject.org/team/zh_CN.html> 报告sha1sum 的翻译错误
Full documentation at: <http://www.gnu.org/software/coreutils/sha1sum>
or available locally via: info '(coreutils) sha1sum invocation'

ps:转载请注明文章出处。

linux中校验文件完整性(md5,sha1)的更多相关文章

  1. Linux md5sum校验文件完整性

    使用场景:  远程备份大文件,防止网络异常断开,文件备份不完整,使用md5校验其完整性. 1. 获取文件md5值 [root@kvm-123 gitlab]# md5sum 1564248991_20 ...

  2. mac上校验文件的 md5 sha-1

    文件校验 mac md5 sha-1html, body {overflow-x: initial !important;}.CodeMirror { height: auto; } .CodeMir ...

  3. Linux下查询文件的md5,sha1值

    验证下载下来的文件包是不是一致 ··· 验证md5值 #md5sum filename 验证shal值 #sha1sum filename ···

  4. Linux下校验下载文件的完整性(MD5,SHA1,PGP)

    查看: Linux下校验下载文件的完整性(MD5,SHA1,PGP) http://blog.useasp.net/archive/2014/03/29/use-md5-sha1-or-pgp-to- ...

  5. Shell 对整个文件夹中的文件进行MD5校验 [转]

    查看本地文件的 MD5 命令:md5sum FileName查看home目录下所有文件的 MD5 码:cd ~find /home -type f -print0 | xargs -0 md5sum ...

  6. Hash校验工具、MD5 SHA1 SHA256命令行工具

    MyHash 检验工具http://www.zdfans.com/html/4346.html HashMyFiles Hash校验工具http://www.nirsoft.net/utils/has ...

  7. 【转】linux中inittab文件详解

    原文网址:http://www.2cto.com/os/201108/98426.html linux中inittab文件详解 init的进程号是1(ps -aux | less),从这一点就能看出, ...

  8. Linux中检索文件

    1 , Use locate command It is a fast way to find the files location, but if a file just created ,it w ...

  9. Linux中查看文件编码

    在Linux中查看文件编码可以通过以下几种方式:1.在Vim中可以直接查看文件编码:set fileencoding即可显示文件编码格式.如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱 ...

随机推荐

  1. mysql 添加字段,修改字段的用法

    1.添加字段 ALTER TABLE 表明 add 字段名称 类型(int,char,VARCHAR...) DEFAULT 默认值  位置(FIRST, AFTER+字段名称); 2.删除 ALTE ...

  2. REDIS与MEMCACHED的区别(转)

    出处:http://www.blogjava.net/paulwong/archive/2013/09/06/403746.html 如果简单地比较Redis与Memcached的区别,大多数都会得到 ...

  3. OBD Problem Vehicles

    This page contains a list of vehicles that are known to be non-compliant with OBD-II in one way or a ...

  4. 金士顿DT100 G3 PS2251-07海力士U盘量产修复成功教程

    金士顿DT100 G3这款U盘.用了大概一年半没什么问题,前段时间拷贝大文件,无奈电脑突然断电,然后这个U盘在电脑上就读不出来了,只能显示盘符,所以有了修复过程.   最开始我也是菜鸟,不知道怎么搞, ...

  5. Ubuntu : 解决更新时出现 Unable to locate package update

    当用apt-get更新软件包时常出现错误提示Unable to locate package update, 尤其是在ubuntu server上,解决方法是:     先更新apt-get      ...

  6. LRU缓存介绍与实现 (Java)

    引子: 我们平时总会有一个电话本记录所有朋友的电话,但是,如果有朋友经常联系,那些朋友的电话号码不用翻电话本我们也能记住,但是,如果长时间没有联系 了,要再次联系那位朋友的时候,我们又不得不求助电话本 ...

  7. 洛谷 4051 [JSOI2007]字符加密(后缀数组)

    题目描述 喜欢钻研问题的JS 同学,最近又迷上了对加密方法的思考.一天,他突然想出了一种他认为是终极的加密办法:把需要加密的信息排成一圈,显然,它们有很多种不同的读法. 例如‘JSOI07’,可以读作 ...

  8. redis整理の安装

    安装 步骤一: 下载 Redis 下载安装包:#wget http://redis.googlecode.com/files/redis-2.8.19.tar.gz: 步骤二:解压:#tar zxvf ...

  9. SQL Server 2012 表分区

    转载于:https://www.cnblogs.com/knowledgesea/p/3696912.html 什么是表分区 一般建立数据库表时,表数据都存放在一个文件里. 但是如果是分区表的话,表数 ...

  10. NuGet文件下载与应用

    nuget是一款.net下强大的包管理开发工具,Visual Studio 2013和Visual Studio 2015都缺省支持Nuget.在线开发能享受到Nuget的便利,但是如果是离线开发,还 ...