大家好,又见面了,我是你们的朋友全栈君。
PackagesNotFoundError: The following packages are not available from current channels: ******
conda替换镜像源教程
由于国内访问conda官网很慢,离线安装又费时费力,因此,替换国内源是一个极佳的办法。
但是,目前国内源的替换教程过于老旧,都是2018-2021年的方法,尽管替换镜像源的方法不变,但是网上的资料中,很多镜像源都失效了,没有一个教程能够告诉大家如何去找自己的镜像源并添加进去。
本教程出于此目的,保证大家以后添加的镜像源实效性强。(时间2022.5.08)
1.镜像源添加方法
首先是一些常用命令,帮你诊断目前你的conda源的情况,如果是新装的conda,可以不用管。 第一步:查看并还原默认镜像源
代码语言:javascript复制# 首先,看一下目前conda源都有哪些内容
conda info
# 然后,删除并恢复默认的conda源
conda config --remove-key channels
下面是几个常用命令:后面会用到,这里不用管
代码语言:javascript复制# 添加指定源
conda config --add channels *(*指代你要添加的源)
# 设置安装包时,显示镜像来源,建议显示
conda config --set show_channel_urls yes
# 删除指定源
conda config --remove channels *(*代表你要删除的源)
2.如何找到你要用的源
首先,我们进入国内几家镜像源的网站(这里以清华园为例,基本上可以涵盖所有镜像) 清华镜像源 一般够用 :https://mirrors.tuna.tsinghua.edu.cn/
中科大源https://mirrors.ustc.edu.cn/
常用的其他源汇总 进入后搜索你需要的源:
假设我要获得conda中与pytorch相关的镜像:先搜索anaconda,搜索到后,点进去
然后进入cloud中,找到你需要的包,点进去,这里以pytorch为例(其他的包方法相同)
到了“pytorch/”这个目录下,你就可以看到,子目录的内容会区分系统了,此时,复制浏览器的地址栏如下:
代码语言:javascript复制https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
然后,利用1中的方法,将上面复制的地址(也就是源)添加到conda当中,conda会自动识别系统版本并匹配上。
下面是添加过程和结果:
我们在用conda安装pytorch时就可以看到,镜像安装地址已经变成,我新添加的啦
至此,你再也不用从网站上到处找各种不好用的镜像源尝试啦,自己到源头获取,实效性才是最高的。
3.快速上手
为了方便大家快速添加,我们把conda自身默认的镜像源的替换代码,写好放在这里,方便大家直接替换使用,大家逐条复制添加即可,下述链接更新时间为2022.3.10,可以通过前面的方法先判断一下镜像源对不对:
代码语言:javascript复制conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --set show_channel_urls yes
4.镜像源网站目录命名的含义
代码语言:javascript复制我们这里补充解释一下,上述几个文件夹的含义:
archive # 是anaconda软件历史版本存档,用不到
miniconda # 是mini anaconda历史版本存档,用不到
Parent directory/ # 是返回上级目录
failed_packages.txt #是失效包列表
cloud # 里面就是目前可用的全部的包,包括torch、paddle等等常用的工具包
pkgs # PKGS的概念:
在anaconda中,最安全的安装和升级命令是conda install XXX,而python中是pip,但在anaconda下依然可以使用pip升级,这样一些依赖可能会因为更新后的版本过高出现异常。
在conda的设计中,目录'pkgs'是下载、存放缓存,以及提取下载的conda包的地方。同时,anaconda一起携带的包也会放在这里。
它有一个非常关键的作用:我们在构建一些envs的时候,对一些包的依赖会通过硬盘链接链接到pkgs目录,这样虚拟环境生成的速度大大加快,占用空间就大大减小了!!!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/187296.html原文链接:https://javaforall.cn