Ale*_*eed 6 homebrew curl openssl ssl-certificate osx-yosemite
每当我尝试运行时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
Run Code Online (Sandbox Code Playgroud)
我已经尝试了这篇文章的答案,但没有运气。我也不想使用 curl 的 -k 或 --insecure
我在用
更新:我尝试卸载并重新安装自制软件,并在重新安装时再次收到此消息:
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
Run Code Online (Sandbox Code Playgroud)
更新 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
Run Code Online (Sandbox Code Playgroud)
这是日志
对于在这里尝试了两个答案但都无济于事的任何人(像我一样),我找到了解决这个烦人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并遇到了这个问题。
看起来下载程序(在本例中是curl 的版本)不信任https://mirrors.edge.kernel.org域上的 CA 证书。您可以尝试导入此网络服务器提供的 CA(取决于您是否真的信任该 CA)。
要导入证书,您可以下载证书,然后双击该证书。MacOS 默认会通过 Keychain 打开它并询问您是否要导入它。这方面你可以参考官方文档。
wget http://crt.sectigo.com/SectigoRSADomainValidationSecureServerCA.crt
Run Code Online (Sandbox Code Playgroud)
如果您在任何其他域中遇到此问题,如何知道从哪里下载证书。
您可以检查服务器颁发的证书来获取上述链接。例如:
$ 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
Run Code Online (Sandbox Code Playgroud)
PS:我无法让我的-ext标志在 libressl 上工作,因此 hacky grep.
注意网址。这是您需要信任的证书的位置,以便信任brew 安装。该 URL 可能出现在证书的授权信息访问部分中。