问题展示
当您使用命令conda -n create (环境名) python=X.X时,可能会出现如下问题。
出现这样的报错其实就是网络链接问题。
可能的原因一
由于anaconda是国外的网站,因此国内访问必须要加vpn,但服务器可能没有翻墙的装置,因此访问国外数据可能就会出现网络连接超时等连接问题。.
可能的原因二
您的channels选择不对,需要修改一下。
可能的原因三
您的服务器网络连接存在问题。
解决方案
方法一
针对原因一,这一种方法的本质是修改.condarc当中的文件,如下图所示。
下面点击.condarc,右侧的编辑器底部将出现如下文本。
将channels里加入清华源的链接即可。这种方法,只要清华源不崩,一般是可以解决连接问题的。
channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
- defaults
show_channel_urls: true
方法二
这个方法主要针对原因二,也是网上诸多博客提供的方法,您的channels不对,在这种情况下,可以进行如下修改,例如将https改为http,在每一行之后添加/linux-64,或者是去掉-default。也可以将上述措施组合使用。
当然了,这个地方我并没有亲自去尝试过,因为我遇到的不是这个问题。
示例1
channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2/linux-64/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro/linux-64/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r/linux-64/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/linux-64/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/linux-64/
- defaults
show_channel_urls: true
示例2
channels:
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2/
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro/
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r/
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
- defaults
show_channel_urls: true
示例3
channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
show_channel_urls: true
方法三
您计算机的网络连接出现了问题,考虑到部分服务器无法联网或是无法访问外网,需要跳板机的支撑,而一次次使用export命令又比较麻烦,很多人就把export直接加在了.bashrc文件里。
下面打开.bashrc,进入其中。
当你使用的conda initialize的时候,就可以在每次开机启动conda的时候默认使用其它的服务器访问外网。重要的是这几行代码:
export http_proxy='http://10.81.37.48:4780'
export https_proxy='http://10.81.37.48:4780'
如果您无法联网,很可能就是这个地方出现了问题,可以去看看别人的账户当中,根目录下的.bashrc文件有没有类似的问题。