MAC HOMEBREW 验证问题

复制代码
The solution (thanks again, StackOverflow) was to manually upgrade the gh package first to get the new command:

brew upgrade gh
Then I ran brew upgrade to upgrade everything... which didn't quite work, because I kept running into warnings like this one:

==> Verifying attestation for ca-certificates
Warning: Failed to verify attestation. Retrying in 1...
Warning: Failed to verify attestation. Retrying in 3...
Warning: Failed to verify attestation. Retrying in 9...
Warning: Failed to verify attestation. Retrying in 27...
I frequently have rate limiting problems with my GitHub account, so my hunch is that these were causing the command to fail.

The fix was to run this instead, using the HOMEBREW_NO_VERIFY_ATTESTATIONS environment variable to disable attestation checking entirely:

HOMEBREW_NO_VERIFY_ATTESTATIONS=1 brew upgrade

升级 gh 包:首先你通过升级 gh(GitHub CLI)包,确保获得了最新版本,其中包含了你需要的新命令:

复制代码
brew upgrade gh

遇到验证问题:当你运行 brew upgrade 升级所有软件包时,Homebrew 在验证 ca-certificates 的认证时遇到了问题,并且一直重试,间隔逐渐增加。这可能是由于网络问题或GitHub的速率限制导致的。

绕过验证:为了解决这个问题,你通过设置 HOMEBREW_NO_VERIFY_ATTESTATIONS=1 环境变量,完全禁用了认证验证:

复制代码
HOMEBREW_NO_VERIFY_ATTESTATIONS=1 brew upgrade

这个方法是一个临时解决方案,尤其是在遇到GitHub速率限制或网络问题时,能够有效绕过认证验证,让升级过程继续进行。

进一步的建议:

如果GitHub账户的速率限制问题持续,可以考虑使用GitHub的身份验证机制(例如 gh auth login)来减少遇到限制的机会。

定期更新Homebrew包可以帮助避免一些潜在问题。

如果你有更多问题,或希望探讨其他类似问题的解决方案,随时告诉我!

复制代码
Warning: Failed to verify attestation. Retrying in 1s...
Warning: Failed to verify attestation. Retrying in 3s...
Warning: Failed to verify attestation. Retrying in 9s...
  1. 解决权限问题
    错误信息中提到 mkdir /Users/rocky/.cache/gh: permission denied,这表明 Homebrew 在尝试创建或写入缓存目录时遇到了权限问题。你可以通过更改缓存目录的权限来解决这个问题:

    sudo chown -R $(whoami) /Users/rocky/.cache/gh

这会将缓存目录的所有权更改为当前用户,从而避免权限问题。

  1. 禁用 attestation 验证
    如果你确认这个问题是由于 attestation(验证)失败而导致的,可以通过设置环境变量禁用验证,以继续安装:

    HOMEBREW_NO_VERIFY_ATTESTATIONS=1 brew install postgresql@17

这会跳过 attestation 验证,但请注意,这种做法会让你失去对软件包来源的验证,可能存在一定的安全风险。

  1. 清除 Homebrew 缓存
    由于该错误可能与缓存文件损坏或不完整有关,你可以尝试清除 Homebrew 的缓存并重新安装:

    brew cleanup
    brew install postgresql@17

这将删除 Homebrew 的旧缓存并强制重新下载和安装软件包。

  1. 更新 Homebrew
    如果你的 Homebrew 版本较旧,可能存在一些已知的 bug 或不兼容的问题,尝试更新 Homebrew 到最新版本:

    brew update
    brew upgrade

更新后,再次尝试安装 postgresql@17:

复制代码
brew install postgresql@17
相关推荐
TESmart碲视9 小时前
Mac 真正多显示器支持:TESmart USB-C KVM(搭载 DisplayLink 技术)如何实现
macos·计算机外设·电脑
2501_9151063221 小时前
Xcode 上传 ipa 全流程详解 App Store 上架流程、uni-app 生成 ipa 文件上传与审核指南
android·macos·ios·小程序·uni-app·iphone·xcode
他们都不看好你,偏偏你最不争气1 天前
【iOS】AFNetworking
开发语言·macos·ios·objective-c
钟念1 天前
【打包app】uniapp打包ios端和安卓端app
macos·objective-c·cocoa
森之鸟2 天前
Mac电脑上如何打印出字体图标
前端·javascript·macos
m_136872 天前
Mac M 系列芯片 YOLOv8 部署教程(CPU/Metal 后端一键安装)
yolo·macos
搜狐技术产品小编20232 天前
CAEmitterLayer:iOS 中创建炫酷粒子效果的魔法工具
macos·ios·objective-c·cocoa
未来之窗软件服务3 天前
操作系统应用开发(七)mac苹果模拟器——东方仙盟练气期
macos·仙盟创梦ide·东方仙盟·系统模拟器
liliangcsdn3 天前
Mac本地docker安装Kibana+ElasticSearch
elasticsearch·macos·docker
千寻简3 天前
远程连接Mac操作ClaudeCode一直提示登录Invalid API key · Please run /login
macos