Linux Linux 的 sha256sum 命令是一个用于计算和校验文件 SHA-256 哈希值的实用工具。SHA-256 是一种密码学哈希函数,属于 SHA-2 家族,能够生成 256 位(32 字节)的哈希值,通常表示为 64 个十六进制字符。
基本用法
-
计算单个文件的哈希值 :
sha256sum filename这会输出类似
9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08 filename的结果 -
计算多个文件的哈希值 :
sha256sum file1 file2 file3 -
校验文件完整性 :
sha256sum -c checksum_file.sha256其中 checksum_file.sha256 是包含哈希值和文件名的校验文件
实用选项
-b:以二进制模式读取文件-c:从文件中读取 SHA256 校验和并进行检查--quiet:在校验模式下不显示成功消息--status:不输出任何内容,仅通过退出状态码表示结果
应用场景
- 软件包验证:下载 Linux 发行版或软件时,开发者通常会提供 SHA256 校验值,用于验证文件完整性
- 数据完整性检查:在备份或传输重要文件前后计算哈希值,确保文件未被篡改
- 安全审计:检查系统关键文件是否被修改
示例流程
-
下载文件并校验:
bashwget https://example.com/package.tar.gz wget https://example.com/package.tar.gz.sha256 sha256sum -c package.tar.gz.sha256 -
创建校验文件:
bashsha256sum important_file.txt > important_file.sha256
注意事项
- SHA-256 是单向哈希,不能逆向恢复原始数据
- 虽然碰撞概率极低,但从安全角度考虑,对极高安全要求的场景可能需要结合其他验证方式
- 大文件计算哈希可能需要较长时间
该命令是 Linux 核心工具包的一部分,通常预装在大多数发行版中。如果不可用,可以通过安装 coreutils 包获取。的 sha256sum 命令