fatal: unable to access 'https://github.com/Homebrew/homebrew-core/'

本文详细记录了解决在安装curl和使用Homebrew过程中遇到的LibreSSLSSL_read:SSL_ERROR_SYSCALL错误的方法。通过更换为中科院的镜像,解决了因SSL读取失败导致的安装和执行问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54

安装
curl "https://nodejs.org/dist/latest/node-${VERSION:-$(wget -qO- https://nodejs.org/dist/latest/ | sed -nE 's|.*>node-(.*)\.pkg</a>.*|\1|p')}.pkg" > "$HOME/Downloads/node-latest.pkg" && sudo installer -store -pkg "$HOME/Downloads/node-latest.pkg" -target "/"
1
报错
==> Tapping homebrew/core
Cloning into '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core'...
fatal: unable to access 'https://github.com/Homebrew/homebrew-core/': LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54
Error: Failure while executing; `git clone https://github.com/Homebrew/homebrew-core /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core --depth=1` exited with 128.
Error: Failure while executing; `/usr/local/bin/brew tap homebrew/core` exited with 1.

解决:
// 执行下面这句命令,更换为中科院的镜像:
git clone git://mirrors.ustc.edu.cn/homebrew-core.git/ /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core --depth=1

// 把homebrew-core的镜像地址也设为中科院的国内镜像

cd "$(brew --repo)"

git remote set-url origin https://mirrors.ustc.edu.cn/brew.git

cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"

git remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git

// 更新
brew update

// 使用
brew install node

 

 

转自:https://blog.youkuaiyun.com/qq_42840269/article/details/81413875  十分感谢

转载于:https://www.cnblogs.com/huangzs/p/11265094.html

<think>我们正在解决Git克隆时出现的SSL证书问题:错误信息为“SSL certificate problem: unable to get local issuer certificate” 这个错误通常发生在系统无法验证服务器的SSL证书时,可能是因为缺少根证书或中间证书。 解决方案通常包括: 1. 更新系统的根证书。 2. 配置Git以使用正确的证书包。 3. 临时禁用SSL验证(不推荐,仅用于测试)。 我们将提供几种解决方案,并推荐使用更新证书的方法。 步骤: 1. 确保系统时间正确。 2. 更新系统的根证书(根据操作系统不同而不同)。 3. 配置Git使用指定的证书文件。 对于Windows用户,可以使用Git自带的证书包,或者安装系统的根证书。 对于Linux用户,通常更新ca-certificates包。 对于macOS用户,可以使用钥匙串访问来更新。 此外,还可以设置Git的sslCAInfo配置指向证书文件。 注意:临时解决方案(不安全)是设置环境变量GIT_SSL_NO_VERIFY为1,或者运行: git config --global http.sslVerify false 但这会禁用SSL验证,不安全,不推荐。 我们推荐使用更新证书的方法。 具体步骤: 一、Windows: 1. 下载最新的根证书包。可以从https://curl.se/docs/caextract.html 下载cacert.pem 2. 将cacert.pem放在某个目录,例如:C:\Git\cacert.pem 3. 配置Git使用该证书: git config --global http.sslCAInfo "C:\\Git\\cacert.pem" 二、Linux (Debian/Ubuntu): 1. 更新证书包: sudo apt update && sudo apt install ca-certificates 2. 配置Git使用系统证书(通常已经设置好,如果没有): git config --global http.sslCAInfo /etc/ssl/certs/ca-certificates.crt 三、macOS: 1. 更新证书:使用钥匙串访问,确保系统证书是最新的。 2. 或者安装Homebrew,然后通过brew安装ca-certificates,并配置: brew install ca-certificates git config --global http.sslCAInfo /usr/local/etc/ca-certificates/cert.pem 四、如果上述方法无效,可以尝试重新安装Git,并确保安装时选择使用系统证书。 注意:如果是因为公司防火墙或代理导致的,可能需要将公司的根证书加入信任。 最后,验证是否解决: git clone https://目标仓库 如果问题仍然存在,请检查网络环境,特别是是否有中间人攻击(如公司代理)。 引用: [1] Git官方文档关于SSL配置:https://git-scm.com/docs/git-config#Documentation/git-config.txt-httpsslCAInfo [2] cURL的CA证书包:https://curl.se/docs/caextract.html 相关问题: 1. 如何检查Git的SSL配置? 2. 如何为特定仓库禁用SSL验证? 3. 如何更新Windows的根证书? 4. 如何解决Git克隆时的其他SSL错误?</think>### Git SSL证书问题解决方案 当遇到`SSL certificate problem: unable to get local issuer certificate`错误时,表示Git无法验证服务器的SSL证书,通常是因为缺少根证书或中间证书。以下是逐步解决方案: #### 1. **更新系统根证书(推荐)** - **Windows**: 1. 下载最新的根证书包:[cacert.pem](https://curl.se/ca/cacert.pem) 2. 将文件保存到`C:\Git\cacert.pem`(或任意路径) 3. 配置Git使用该证书: ```bash git config --global http.sslCAInfo "C:\\Git\\cacert.pem" ``` - **Linux/macOS**: ```bash # 更新证书包 (Debian/Ubuntu) sudo apt update && sudo apt install ca-certificates # 配置Git使用系统证书 git config --global http.sslCAInfo /etc/ssl/certs/ca-certificates.crt ``` #### 2. **临时禁用SSL验证(仅测试用)** ```bash # 临时禁用(不安全!) git config --global http.sslVerify false ``` > ⚠️ 警告:这会降低安全性,仅限临时测试,完成后务必恢复: > `git config --global http.sslVerify true` #### 3. **添加特定证书到信任链** 1. 获取网站证书: ```bash openssl s_client -connect github.com:443 2>/dev/null </dev/null | sed -n '/BEGIN CERT/,/END CERT/p' > github.pem ``` 2. 追加到Git证书文件: ```bash cat github.pem >> $(git config --global --get http.sslCAInfo) ``` #### 4. **更新Git客户端** 升级到最新版Git(可能修复证书问题): - Windows:从[Git官网](https://git-scm.com/)重新安装 - macOS:`brew upgrade git` - Linux:`sudo apt upgrade git` #### 5. **检查系统时间** SSL证书验证依赖准确时间,确保系统时钟正确: ```bash # Linux/macOS date # 若错误,用sudo ntpdate pool.ntp.org同步 ``` #### 故障排除流程图 ```mermaid graph TD A[遇到SSL错误] --> B{系统时间正确?} B -->|否| C[同步系统时间] B -->|是| D{更新根证书?} D -->|是| E[下载cacert.pem并配置] D -->|否| F{禁用SSL验证?} F -->|临时| G[git config --global http.sslVerify false] F -->|不推荐| H[检查防火墙/代理设置] ``` > 引用说明: > 根证书包来源cURL官方项目[^1],Git配置方法参考官方文档[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值