无法使用brew安装任何东西,错误:无法下载资源“git--html”

问题描述 投票:0回答:5

每当我尝试运行

brew install <app>
,例如
brew install git
,我都会收到以下错误:

$ brew install git
Updating Homebrew...
Warning: You are using macOS 10.10.
We (and Apple) do not provide support for this old version.
You will encounter build failures with some formulae.
Please create pull requests instead of asking for help on Homebrew's GitHub,
Discourse, Twitter or IRC. You are responsible for resolving any issues you
experience while you are running this old version.

==> Downloading https://ftp.gnu.org/gnu/gettext/gettext-0.21.tar.xz
Already downloaded: /Users/admin/Library/Caches/Homebrew/downloads/fbd8967fd8256b2e1856b74e8ff0f3d8371cb652c5768e47649613a69d4dc841--gettext-0.21.tar.xz
==> Downloading https://ftp.pcre.org/pub/pcre/pcre2-10.35.tar.bz2
Already downloaded: /Users/admin/Library/Caches/Homebrew/downloads/48997c77a7dae2fb85d52234e92e9032019609e091e23d72529d1e552978a260--pcre2-10.35.tar.bz2
==> Downloading https://mirrors.edge.kernel.org/pub/software/scm/git/git-htmldoc

curl: (60) SSL certificate problem: Invalid certificate chain
More details here: http://curl.haxx.se/docs/sslcerts.html

curl performs SSL certificate verification by default, using a "bundle"
 of Certificate Authority (CA) public keys (CA certs). If the default
 bundle file isn't adequate, you can specify an alternate file
 using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
 the bundle, the certificate verification probably failed due to a
 problem with the certificate (it might be expired, or the name might
 not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
 the -k (or --insecure) option.
Error: Failed to download resource "git--html"
Download failed: https://mirrors.edge.kernel.org/pub/software/scm/git/git-htmldocs-2.28.0.tar.xz
Warning: You are using macOS 10.10.
We (and Apple) do not provide support for this old version.
You will encounter build failures with some formulae.
Please create pull requests instead of asking for help on Homebrew's GitHub,
Discourse, Twitter or IRC. You are responsible for resolving any issues you
experience while you are running this old version.

==> Downloading https://ftp.gnu.org/gnu/gettext/gettext-0.21.tar.xz
Already downloaded: /Users/admin/Library/Caches/Homebrew/downloads/fbd8967fd8256b2e1856b74e8ff0f3d8371cb652c5768e47649613a69d4dc841--gettext-0.21.tar.xz
==> Downloading https://ftp.pcre.org/pub/pcre/pcre2-10.35.tar.bz2
Already downloaded: /Users/admin/Library/Caches/Homebrew/downloads/48997c77a7dae2fb85d52234e92e9032019609e091e23d72529d1e552978a260--pcre2-10.35.tar.bz2
==> Downloading https://mirrors.edge.kernel.org/pub/software/scm/git/git-htmldoc

curl: (60) SSL certificate problem: Invalid certificate chain
More details here: http://curl.haxx.se/docs/sslcerts.html

curl performs SSL certificate verification by default, using a "bundle"
 of Certificate Authority (CA) public keys (CA certs). If the default
 bundle file isn't adequate, you can specify an alternate file
 using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
 the bundle, the certificate verification probably failed due to a
 problem with the certificate (it might be expired, or the name might
 not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
 the -k (or --insecure) option.
Error: Failed to download resource "git--html"
Download failed: https://mirrors.edge.kernel.org/pub/software/scm/git/git-htmldocs-2.28.0.tar.xz

我已经尝试了这篇文章的答案,但没有运气。我也不想使用curl的-k或--insecure

我正在使用

  • OSX 优胜美地 10.10.5
  • 自制2.4.9
  • rvm 10.29.10
  • 红宝石2.0.0

更新:我尝试卸载并重新安装自制程序,在重新安装时我再次收到此消息:

curl: (60) SSL certificate problem: Invalid certificate chain
More details here: http://curl.haxx.se/docs/sslcerts.html

curl performs SSL certificate verification by default, using a "bundle"
 of Certificate Authority (CA) public keys (CA certs). If the default
 bundle file isn't adequate, you can specify an alternate file
 using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
 the bundle, the certificate verification probably failed due to a
 problem with the certificate (it might be expired, or the name might
 not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
 the -k (or --insecure) option.
Error: Failed to download resource "git--html"
Download failed: https://mirrors.edge.kernel.org/pub/software/scm/git/git-htmldocs-2.28.0.tar.xz

更新2: 当我运行brew doctor时,我得到了一个不合理的冗长的意外头文件列表。这些与我的问题有关吗?如果是这样,删除所有内容的最佳方法是什么?

更新3:我最终求助于使用curl的-k。唯一的麻烦是,当我这样做时,终端给了我数百行,其中似乎是随机字符作为回报。有人知道这是什么吗?不知道在这里做什么

更新 4: 不确定这是否相关,但是当我尝试安装 ruby 2.3 时,出现此错误:

Error running '__rvm_make -j4',
please read /Users/admin/.rvm/log/1596996566_ruby-2.3.8/make.log

这是日志

curl openssl ssl-certificate homebrew osx-yosemite
5个回答
10
投票
对于任何尝试过这里两个答案都无济于事的读者(像我一样),我找到了解决恼人的

curl (60)

 问题的解决方法。运行以下命令:

  • MacBook:~ leetbacoon$ nano ~/.curlrc
    
    
  • 在自己的行上添加
  • -k
     (我没有 
    .curlrc
     文件,所以整个文件当然只是 
    -k
     带有换行符)
  • 运行您的
  • brew install
    /
    upgrade
    ,它应该从 
    mirrors.edge.kernel.org
     或任何其他有 SSL 证书问题的网站下载

curl

,默认情况下,从 
~/.curlrc
 读取作为配置文件。 
-k
指示
curl
忽略SSL证书问题,这正是我们在本例中想要的。我建议之后从您的配置文件中删除 
-k

我的设置使用El Capitan 10.11.6 / Homebrew 2.5.2 / ruby 2.0.0p648,但没有

rvm

。巧合的是,我也在尝试安装
git
并遇到了这个问题。


4
投票
看起来下载程序(在本例中是curl的版本)不信任

https://mirrors.edge.kernel.org域上的CA证书。您可以尝试导入此网络服务器提供的 CA(取决于您是否真的信任该 CA)。

要导入证书,您可以下载证书,然后双击证书。 MacOS 默认会通过 Keychain 打开它并询问您是否要导入它。您可以参考

官方文档

wget http://crt.sectigo.com/SectigoRSADomainValidationSecureServerCA.crt


注意

如果您在任何其他域中遇到此问题,如何知道从哪里下载证书。

您可以查看服务器颁发的证书来获取上述链接。例如:

$ echo | openssl s_client -connect mirrors.edge.kernel.org:443 2>/dev/null \ | openssl x509 -noout -text | grep "CA Issuers" CA Issuers - URI:http://crt.sectigo.com/SectigoRSADomainValidationSecureServerCA.crt
PS:我无法让我的 

-ext

 标志在 libressl 上工作,因此很 hacky 
grep

注意网址。这是您需要信任的证书的位置,以便信任brew 安装。此 URL 可能出现在证书的

权威信息访问部分。


0
投票
我在 git--html 下载方面也遇到了一些问题(10.11)。如果你打开Finder并点击command+shift+G并输入/usr/local/cellar,你将有望找到你的包的文件夹。之后找到 bin 文件夹并启动 bin 文件夹内的可执行文件(它将具有终端图标)。

它应该是什么样子(1.3.5文件夹内的bin文件夹)


0
投票
只需在终端上运行此命令 导出 HOMEBREW_BOTTLE_DOMAIN=https://homebrew.bintray.com/bottles 然后关闭防火墙


0
投票
我刚刚运行了

brew update

,然后重试了
brew install git
。成功了。

© www.soinside.com 2019 - 2024. All rights reserved.