“SHA256 mismatch”错误表示下载包校验失败,应先用brew install -v定位问题;若为缓存损坏,优先用--force重装清除缓存;仅对可信第三方二进制包可注释公式中sha256行;也可手动下载文件至brew缓存目录后重试安装。

Mac上用Homebrew安装软件时遇到“SHA256 mismatch”错误,说明下载的安装包校验值与公式记录的不一致,Homebrew默认拒绝继续安装以保障安全——但有时是镜像源同步延迟、网络传输损坏或上游临时更新导致的误报,需人工干预跳过校验。
确认是否真要跳过校验
先运行 brew install -v 软件名 查看完整报错,定位具体是哪个资源(resource)校验失败;如果提示的是 homebrew-core 或 cask 的元数据本身出错,【绝不可跳过】,应先执行 brew update 同步最新公式,再重试安装。
只有当错误明确指向某个第三方二进制包(如 Download failed for https://xxx.zip 且反复重试仍 SHA 不匹配),才考虑临时绕过。
方法一:用 --force 卸载后重装(推荐优先尝试)
这一步能清掉本地缓存中损坏的文件,触发全新下载:
第一步:卸载已失败的残留包(即使没装成功,也可能留了半截):brew uninstall --ignore-dependencies 软件名
第二步:强制清理对应缓存:rm -f "$(brew --cache)/软件名-*"
第三步:重新安装并加 --force 参数触发重拉:brew install --force 软件名
注意:--force 不跳过 SHA 校验,但它会清除旧缓存,让 Homebrew 重新下载完整包,多数因缓存损坏导致的 mismatch 会在此解决。
方法二:临时禁用 SHA256 检查(仅限可信来源)
方法一无效时,可手动修改公式文件,注释掉 checksum 行。操作前必须确认该软件你完全信任,且下载地址是官方可控路径。
方法1:进入公式所在目录:brew tap-info homebrew/core → 记下路径,然后执行 cd $(brew --repo homebrew/core)/Formula → 再用 ls | grep 软件名 找到对应 rb 文件
方法2:直接编辑公式:brew create https://正确下载地址 --set-name 软件名 会生成新公式,但更稳妥的是用 brew edit 软件名 直接打开已存在公式
找到形如 sha256 "a1b2c3..." 的行,在前面加 # 注释掉,保存退出
这一步改完后必须立即执行 brew install 软件名,否则下次 brew update 会覆盖你的修改
方法三:手动下载+放缓存(适合大文件或断点续传)
当报错里明确给出下载链接(如 Download failed: https://xxx.pkg),就用浏览器或 curl 下载它:
复制报错中的完整 URL,在 Safari 中粘贴下载;或在终端执行:curl -L -o "$(brew --cache)/软件名-1.0.pkg" "https://xxx.pkg"
然后运行:brew install 软件名
Homebrew 会自动检测缓存中已有文件,跳过下载直接校验——如果仍报 mismatch,说明你下的是旧版或镜像源未同步,此时应换用官网直链下载。











