Linux 的 b2sum 命令是一个用于计算和校验文件 BLAKE2 哈希值的实用工具。以下是关于该命令的详细扩展说明:
-
基本功能
- 计算文件的 BLAKE2 (BLAKE2b 或 BLAKE2s) 哈希值
- 支持 256 位、384 位和 512 位哈希长度(默认为 512 位)
- 可生成校验文件并用于后续验证
-
命令语法
b2sum [选项]... [文件]... -
常用选项
-b:二进制模式读取文件-c:从校验文件中读取并验证-l:指定哈希长度(256/384/512)--tag:输出 BSD 风格的校验和--ignore-missing:验证时忽略缺失的文件--quiet:只显示验证失败的文件--status:不输出任何信息,仅返回状态码
-
典型使用场景
-
文件完整性检查 :
b2sum important_file.iso > checksum.b2 b2sum -c checksum.b2 -
安全验证 :
下载文件后验证其哈希值是否与发布者提供的匹配 -
批量校验 :
创建包含多个文件哈希值的校验文件:b2sum *.iso > all_checksums.b2
-
-
与其他哈希工具的比较
- 比 SHA-1 和 MD5 更安全,抗碰撞性更强
- 比 SHA-2 系列算法更高效,特别是在短消息哈希时
- 支持并行计算,在多核系统上性能更好
-
输出格式
默认输出格式为:
<哈希值> <文件名>使用
-c选项时,校验文件应保持相同格式 -
返回值
- 0:成功
- 1:校验失败
- 2:发生错误
-
注意事项
- 哈希值会随文件内容的微小变化而显著改变
- 建议将校验文件与原始文件分开存放
- 在脚本中使用时,建议结合
--status选项
-
系统要求
- 需要 coreutils 8.26 或更高版本
- 大多数现代 Linux 发行版都已包含该工具
-
示例组合命令
-
递归计算目录下所有文件的哈希值:
find . -type f -exec b2sum {} + > all_checksums.b2 -
快速验证下载的文件:
curl -O https://example.com/file.iso curl -O https://example.com/file.iso.b2 b2sum -c file.iso.b2
-