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
相关推荐
芳草萋萋鹦鹉洲哦42 分钟前
【git】重新生成并添加 SSH Key(Mac)
git·macos·ssh
2501_9159184118 小时前
详解iOS App上架至App Store的全流程步骤与注意事项
android·macos·ios·小程序·uni-app·cocoa·iphone
库奇噜啦呼1 天前
【iOS】weak底层实现
macos·ios·cocoa
2601_961593421 天前
视频分辨率太低?Topaz Video AI v1.6.0 让画质跃升
人工智能·macos·音视频
17715574311 天前
Mac 上 Ruby、gem、rvm、CocoaPods 四者关系通俗讲清楚
macos·ruby·cocoapods
Shell运维手记1 天前
交换机(二层交换机)完整工作原理
运维·网络·网络协议·macos·交换机
寒水馨1 天前
macOS下载、安装 Tailwind CSS-v4.3.3(附安装包tailwindcss-macos-arm64)
前端·css·macos·tailwind css·utility-first·css 框架·实用优先
寒水馨1 天前
macOS下载、安装neovim-v0.12.4(附安装包nvim-macos-arm64.tar.gz)
macos·vim·lua·文本编辑器·终端·lsp·neovim
库奇噜啦呼2 天前
【iOS】NSOperation与NSOperationQueue
macos·ios·cocoa
奶糖 肥晨2 天前
mac系统中Java项目环境配置与问题解决全记录|项目启动篇:从编译打包到生产级部署
java·开发语言·macos