conda是最常用的软件安装工具之一。conda能够解决程序依赖问题,可以快速的安装各种软件,把我们从安装软件的大坑中解放出来。
1. 查看conda的环境配置
conda config --show
conda有时候安装软件会非常慢,需要设置国内镜像。
设置conda的镜像
#设置清华镜像
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/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
#设置bioconda
conda config --add channels bioconda
conda config --add channels conda-forge
#设置搜索时显示通道地址
conda config --set show_channel_urls yes
2. 安装软件
conda能够自动的解决软件依赖问题,因此通过conda安装软件非常方便,减少了很多的工作量。
这里以安装最新版本的 R 为例,说明使用conda安装软件的过程。
首先搜索conda中提供的R版本
conda search R
# Name Version Build Channel
#r 3.3.2 r3.3.2_0 conda-forge
#r 3.4.1 r3.4.1_0 conda-forge
#r 3.5.1 r351_0 conda-forge
然后安装对应的软件
conda install r
安装特定版本的R:
conda install 软件名=版本号
conda install r=3.5.1
最后可以更新已经安装的软件
conda update R
3. 在不同环境下安装软件
默认的用conda安装的软件,都会在系统目录中能够直接访问,但很多时候不同版本的软件的依赖关系不一样,需要设置单独的环境安装特定的软件。不同环境之间的软件互相不会干扰。
3.1设置一个新的环境
conda create -n myenv
#当程序依赖于python2是,使用python=2来设置python版本
conda create -n myenv python=2
3.2环境切换
#激活myenv环境
conda activate myenv
#退出环境
conda deactivate
3.3删除环境
conda remove -n myenv --all
3.4导出环境
很多的软件依赖特定的环境,我们可以导出环境,给其他人重新还原环境。
#获得环境中的所有配置
conda env export --name myenv > myenv.yml
#重新还原环境
conda env create -f myenv.yml
4. 清理anaconda缓存
conda clean -p # 删除没有用的包 --packages
conda clean -t # 删除tar打包 --tarballs
conda clean -y -all # 删除所有的安装包及cache(索引缓存、锁定文件、未使用过的包和tar包)
5. conda镜像设置问题
conda的镜像经常不能用,比如会报错:
Collecting package metadata (current_repodata.json): done
Solving environment: done
UnavailableInvalidChannel: The channel is not accessible or is invalid.
channel name: anaconda/cloud
channel url: https://mirrors.ustc.edu.cn/anaconda/cloud
error code: 404
You will need to adjust your conda configuration to proceed.
Use `conda config --show channels` to view your configuration's current state,
and use `conda config --show-sources` to view config file locations.
CondaHTTPError: HTTP 000 CONNECTION FAILED for url [https://conda.anaconda.org/anaconda/linux-64/repodata.json](https://conda.anaconda.org/anaconda/linux-64/repodata.json)
Elapsed: -
最后参看了非常多的文章,发现只有最后参看清华的镜像才能解决问题。
Anaconda 镜像使用帮助
最后,将主文件目录下的 .condarc 修改成下面的内容:
channels:
- defaults
show_channel_urls: true
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
6. 更新:可以设置阿里云的镜向
https://developer.aliyun.com/mirror/anaconda
channels:
- defaults
show_channel_urls: true
default_channels:
- http://mirrors.aliyun.com/anaconda/pkgs/main
- http://mirrors.aliyun.com/anaconda/pkgs/r
- http://mirrors.aliyun.com/anaconda/pkgs/msys2
custom_channels:
conda-forge: http://mirrors.aliyun.com/anaconda/cloud
msys2: http://mirrors.aliyun.com/anaconda/cloud
bioconda: http://mirrors.aliyun.com/anaconda/cloud
menpo: http://mirrors.aliyun.com/anaconda/cloud
pytorch: http://mirrors.aliyun.com/anaconda/cloud
simpleitk: http://mirrors.aliyun.com/anaconda/cloud