FDM 下载后文件完整性校验(MD5 / SHA256)
为什么需要校验
下载一个 10 GB 的视频文件,FDM 显示 100% 完成、文件大小也对。但打开时发现:
- 视频到某个位置画面变成马赛克 / 花屏 / 绿屏
- ZIP 解压报错"文件损坏或密码错误"
- ISO 镜像装到一半报完整性错误
这些情况的原因通常是下载过程中某个分片数据损坏——可能是网络波动、服务器返回了错误数据、或磁盘扇区故障。分段下载 + 断点续传虽然提升了速度和可靠性,但不能 100% 避免数据损坏。
文件校验就是把下载好的文件的哈希值(MD5 / SHA1 / SHA256 / CRC32)和官方提供的校验值对比。一致 = 文件没坏;不一致 = 需要重下。
FDM 支持的校验算法
| 算法 | 安全性 | 速度 | 场景 |
|---|---|---|---|
| CRC32 | 极低(易碰撞) | 最快 | 日常大文件快速检查 |
| MD5 | 低(已知碰撞攻击) | 快 | 软件包校验(大部分软件厂商提供 MD5) |
| SHA-1 | 中等 | 中等 | 部分厂商仍在使用 |
| SHA-256 | 高(目前安全) | 较慢 | Ubuntu / Fedora 等 Linux 镜像的官方校验 |
| SHA-512 | 很高 | 慢 | 极少数厂商使用 |
日常用 MD5 或 SHA-256 足够了——它们的碰撞概率极低,对"下载文件是否损坏"这个场景来说完全够用。SHA-256 比 MD5 更安全,推荐优先用。
FDM 内建校验功能
操作:
- FDM 主界面 → 已下载 → 选中一个文件
- 右键 → 「校验」→ 选择算法(CRC32 / MD5 / SHA-1 / SHA-256 / SHA-512)
- FDM 在后台计算哈希值 → 弹出结果对话框
结果对话框里会显示 FDM 计算出来的哈希值。你需要手动把这个值和官方提供的校验值(通常在下载源页面上,比如 Ubuntu 官网有一个 SHA256SUMS 文件)对比。
批量校验:选中多个已下载文件 → 右键 → 校验 → FDM 会逐个计算,全部完成后可以导出一个 CSV 清单(包含每个文件的哈希值)。
怎么找到官方校验值
绝大多数正规发布方都会在下载页面上贴出校验值:
Linux 发行版
官方会提供 SHA256SUMS 或 SHA256SUMS.gpg 文件。比如 Ubuntu 官网的下载页上有一个链接指向 SHA256SUMS 文件,里面是所有 ISO 的 SHA-256 哈希值列表。
把这个文件下载下来(和 ISO 同目录),在 Linux 上可以直接 sha256sum -c SHA256SUMS 自动校验,Windows / macOS 上用 FDM 右键校验后手动对比。
软件安装包
正规厂商的下载页面上通常有「文件校验」或「MD5」链接,点击后弹出一串哈希值。比如 LibreOffice 的下载页、Notepad++ 的 GitHub Release 页面、火绒的官网下载页都提供校验值。
GitHub Release
GitHub Release 页面的「Assets」下面通常有一个 SHA256SUMS 文件。如果没有,FDM 的文件校验也能用——只是需要你找发行方提供的哈希值来对比。
没有官方校验值怎么办
- 大文件(>1 GB):即使没有官方校验,也建议 FDM 里算一下 SHA-256,记下来。如果后续打开文件出错,可以重新下载一个对比哈希值
- 小文件(<100 MB):损坏概率很低,打开能正常用就不用特意校验
- BT 下载:BT 协议本身有内置的分片级完整性校验(每个分片下载完会校验),理论上 BT 下载的文件不会损坏。如果 BT 下载后文件打不开,大概率是种子本身有问题、不是下载过程的问题
FDM 校验的速度
FDM 用的是磁盘顺序读取 + CPU 多核并行计算,速度比命令行的 certutil / shasum 快一些:
- SHA-256:一个 10 GB 文件在 SATA SSD 上大概 15-20 秒,在机械硬盘上 1-2 分钟
- MD5:同文件快 20-30%
- CRC32:同文件快 50%+
校验过程是 CPU + 磁盘 I/O 密集的——建议校验大文件时关闭其他大文件下载任务,让磁盘 I/O 让出来。
如果校验不一致怎么办
FDM 校验完的哈希值和官方对不上,说明文件损坏。
处理步骤:
- 先把这个已损坏的文件重命名(比如加个
.corrupt后缀),避免和新下载的混淆 - 在 FDM 里删除原来的下载任务(记录 + 文件一起删)
- 检查下载目录的磁盘空间是否充裕(如果磁盘快满了,写入时可能损坏)
- 检查磁盘是否有坏扇区(Windows 用
chkdsk /f,Linux 用fsck,macOS 用磁盘工具急救) - 重新添加下载任务,用镜像源或不同时间下载(避免同一服务器的持续问题)
- 下载完成后再校验一次
校验后保存哈希值
FDM 校验完的哈希值会临时显示在弹窗里,关掉就没了。如果想长期留存(比如以后文件出问题时方便溯源):
- 批量校验时选"导出为 CSV",哈希值和文件名一起保存
- 或者手动把校验值复制粘贴到一个
.txt里,和文件放一起
实战:Ubuntu ISO 完整校验流程
步骤:
1. FDM 下载 ubuntu-24.04-desktop-amd64.iso(3.8 GB)→ 100% 完成
2. 去 Ubuntu 官网下载 SHA256SUMS 文件 → 里面有 ubuntu-24.04-desktop-amd64.iso 对应的 SHA-256 值
3. FDM → 已下载 → 右键 ISO 文件 → 校验 → SHA-256 → 等 30 秒
4. FDM 显示:a1b2c3d4e5f6...(64 位十六进制)
5. 和 SHA256SUMS 文件里的值对比 → 一致
6. ✓ 文件没坏,放心用
文件管理模块四页全部讲完。下一个分组:调度与限速——让下载在后台安静地跑、不抢占带宽。流量模式。