首页/系统/信创系统运维速查/ISO 完整性校验(sha256sum)
系统与安装65 条

ISO 完整性校验(sha256sum)

安装前校验 ISO 的 SHA256 与官方公示值一致,可排除下载损坏导致的安装中途报错与介质校验失败。

信创系统运维速查系统更新于 2026-10-13

镜像校验是干什么的

ISO 完整性校验就是把下载到的镜像算一次 SHA256 摘要,与发行版官方发布页公示的值逐字符比对,确认文件在下载、拷贝、归档过程中没有损坏或被替换。制作启动盘、写入内网源之前做这一步,能挡掉『安装到一半报介质错误』『解压到某个包失败』这类最常见的中断原因。

基本信息

适用平台Linux(sha256sum)、Windows(Get-FileHash / certutil)
常用命令sha256sum、sha256sum -c、Get-FileHash -Algorithm SHA256
比对对象官方发布页公示值或官方 SHA256SUM 清单文件
结果形态64 位十六进制字符串,大小写不敏感
耗时与镜像体积成正比,数 GB 镜像通常几十秒
权限要求普通用户即可,读文件权限足够

典型使用场景

  • 下载完麒麟 / UOS / openEuler 镜像后,先校验再制作启动盘
  • 把 ISO 拷进内网前,中转环节多、丢包风险大,落地后重新核对一次
  • 归档多年的镜像重新启用前,确认存储介质没有静默损坏
  • 内网离线源用挂载 ISO 方式发布时,确认挂载源文件本身就是完好的
  • 交付验收留痕:校验结果与官方值一并放入交付文档

Linux 校验两种做法

Linux 校验两种做法
# 做法一:算出摘要,人工与官方值比对
sha256sum Kylin-Server-V10-SP3.iso

# 做法二:官方给了 SHA256SUM 清单文件时,自动比对(推荐)
sha256sum -c SHA256SUM --ignore-missing   # --ignore-missing 跳过清单里没下载的文件

# 校验通过输出 OK;不通过输出 FAILED,此时重新下载
sha256sum Kylin-Server-V10-SP3.iso | awk '{print $1}'   # 只取摘要列,便于复制比对

Windows 与 macOS 校验

Windows 与 macOS 校验
# Windows:输出大写十六进制,与官方值比对时忽略大小写
Get-FileHash .\Kylin-Server-V10-SP3.iso -Algorithm SHA256
certutil -hashfile Kylin-Server-V10-SP3.iso SHA256     # 无 PowerShell 的简化环境可用

# macOS
shasum -a 256 Kylin-Server-V10-SP3.iso

输出逐列读法

输出含义如何处置
摘要值 + 文件名sha256sum 的单文件输出与官方公示值逐字符比对,长度必须是 64 位
文件名: OK清单校验通过可继续制作启动盘
文件名: FAILED内容与官方清单不一致删除并重新下载,不要继续使用
bad format / no properly formatted清单文件格式不对(Windows 换行符等)用 sha256sum 单文件输出后人工比对
文件行数 / 无输出路径写错或没有读权限用 ls -l 确认文件存在与路径拼写
部分发行版同时提供 MD5 与 SHA256:MD5 只用于发现传输损坏,抗碰撞能力已不足,防篡改场景一律用 SHA256 或更高。
校验不通过时不要抱侥幸心理继续安装:安装中途失败的代价远高于重新下载一次的带宽与时间。

易错点

  • 从网页复制摘要时容易带入首尾空格、全角字符或被换行截断,导致比对永远不相等;改用官方 SHA256SUM 清单加 sha256sum -c 可绕开人工比对
  • 只校验了 ISO 文件,没校验启动盘写入后的结果:U 盘老化或写入中断同样会造成安装失败,制作完成后应再核验一次
  • 拿到的是 MD5 值就以为完成了防篡改校验,弱算法挡不住精心构造的碰撞
  • 校验通过后安装仍失败时,问题通常在固件设置、RAID 卡驱动缺包或磁盘坏道,需要换排查方向而不是反复重下镜像
  • 在 Windows 上把镜像拷到 U 盘后再校验,却发现摘要变了:部分工具在复制时做了格式转换,应优先使用镜像写入工具而非直接拖拽

数据来源与参考

  • 各发行版官方发布页校验说明
  • GNU coreutils sha256sum 手册
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌