记一次conda遇到的坑
- 问题:不论安装什么包都会出现以下错误
- 资料收集
- 解决思路
- references
问题:不论安装什么包都会出现以下错误
Solving environment: failed
CondaHTTPError: HTTP 000 CONNECTION FAILED for url </pkgs/main/noarch/.bz2>
Elapsed: -
An HTTP error occurred when trying to retrieve this URL.
HTTP errors are often intermittent, and a simple retry will get you on your way.
If your current network has blocked, please file
a support request with your network engineering team.
ProxyError(MaxRetryError("HTTPSConnectionPool(host='', port=443): Max retries exceeded with url: /pkgs/main/noarch/.bz2 (Caused by ProxyError('Cannot connect to proxy.', NewConnectionError('< object at 0x7f79845787f0>: Failed to establish a new connection: [Errno 111] Connection refused')))"))
资料收集
这种问题在网上有好多解决方案,不幸的是对我都不生效。
我把我查到的方法总结一下:
/?id=1
/questions/50305725/condahttperror-http-000-connection-failed-for-url-https-repo-continuum-io-pk
/questions/51266535/conda-returns-solving-environment-failed
/pytorch/pytorch/issues/4207
解决思路
现在说说我的解决思路:
1.根据错误内容,安装失败的原因应该是这个网址 /pkgs/main/noarch/.bz2 请求失败。
2.所以我尝试用
wget /pkgs/main/noarch/.bz2
手动下载这个包,结果出现以下错误。
-2018-12-12 18:29:18-- /pkgs/main/noarch/.bz2
Connecting to 127.0.0.1:33473... failed: Connection refused.
那么应该寻找失败的原因,127.0.0.1
表示的是本机,应该不会有什么问题,那么会不会是因为端口33473被占用的原因。
3.用netstat -ntpl
查看本地端口的使用情况
netstat -ntpl
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:57837 0.0.0.0:* LISTEN 2165/python
tcp 0 0 127.0.0.1:37138 0.0.0.0:* LISTEN 15851/python
tcp 0 0 127.0.0.1:45331 0.0.0.0:* LISTEN 2050/python
tcp 0 0 127.0.0.1:37492 0.0.0.0:* LISTEN 2165/python
tcp 0 0 127.0.1.1:53 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:53526 0.0.0.0:* LISTEN 15851/python
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:45527 0.0.0.0:* LISTEN 2165/python
tcp 0 0 127.0.0.1:45655 0.0.0.0:* LISTEN 2165/python
tcp 0 0 127.0.0.1:36887 0.0.0.0:* LISTEN 2050/python
tcp 0 0 127.0.0.1:8888 0.0.0.0:* LISTEN 30648/python
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:43001 0.0.0.0:* LISTEN 15851/python
tcp 0 0 127.0.0.1:59033 0.0.0.0:* LISTEN 2050/python
tcp 0 0 127.0.0.1:34684 0.0.0.0:* LISTEN 2165/python
tcp 0 0 127.0.0.1:43869 0.0.0.0:* LISTEN 2165/python
tcp 0 0 127.0.0.1:45631 0.0.0.0:* LISTEN 2050/python
tcp 0 0 127.0.0.1:58368 0.0.0.0:* LISTEN 15851/python
tcp 0 0 127.0.0.1:34498 0.0.0.0:* LISTEN 2050/python
tcp 0 0 127.0.0.1:42147 0.0.0.0:* LISTEN 15851/python
tcp 0 0 127.0.0.1:34211 0.0.0.0:* LISTEN 4448/pgAdmin4
tcp 0 0 127.0.0.1:51367 0.0.0.0:* LISTEN 2050/python
tcp 0 0 127.0.0.1:51338 0.0.0.0:* LISTEN 15851/python
tcp6 0 0 127.0.0.1:8079 :::* LISTEN 28374/java
tcp6 0 0 :::8080 :::* LISTEN 28374/java
tcp6 0 0 ::1:631 :::* LISTEN -
发现33473并没有被服务占用。
4.查看代理服务
export | grep -i proxy
HTTPS_PROXY=http://127.0.0.1:33473/
HTTP_PROXY=http://127.0.0.1:33473/
NO_PROXY=localhost,127.0.0.0/8,::1
http_proxy=http://127.0.0.1:33473/
https_proxy=http://127.0.0.1:33473/
no_proxy=localhost,127.0.0.0/8,::1
终于找到原因了,33473端口被代理服务占用了,所以接下来要做的就是关闭这些代理。
5. 使用unset
关闭所有占用33474端口的代理
比如unset HTTPS_PROXY
注意,代理名称区分大小写.
——————————————————————————
接下来,install终于没问题了,
references
/article/37905