除非有特殊需求,比如说内网服务器无法访问外部网站,或者特别喜欢折腾,否则都没有必要尝试下面的操作
构建一个conda本地镜像,本质上就是把anaconda的包都下载了,然后指定包的下载位置。目前对我而言,常用的anaconda频道如下,因此我只要从anaconda中下载这些资源即可。
- Anaconda
- conda-forge
- bioconda
如下是下载数据的脚本,将其保存为my_conda_mirror.sh
,
mkdir -p local_mirror
cd local_mirror
# anaconda
mkdir -p anaconda/noarch
mkdir -p anaconda/linux-64
cd anaconda/linux-64/
wget -q -nd -r -l 1 https://conda.anaconda.org/anaconda/linux-64/ .
cd ../../
cd anaconda/noarch/
wget -q -nd -r -l 1 https://conda.anaconda.org/anaconda/noarch/ .
cd ../../
# bioconda
mkdir -p bioconda/linux-64
cd bioconda/linux-64
wget -q -nd -r -l 1 https://conda.anaconda.org/bioconda/linux-64/ bioconda/linux-64 .
cd ../../
mkdir -p bioconda/noarch
cd bioconda/noarch
wget -q -nd -r -l 1 https://conda.anaconda.org/bioconda/noarch/ bioconda/noarch .
cd ../../
# conda-forge
mkdir -p conda-forge/linux-64
cd conda-forge/linux-64
wget -q -nd -r -l 1 https://conda.anaconda.org/conda-forge/linux-64/ .
cd ../../
mkdir -p conda-forge/noarch
cd conda-forge/noarch
wget -q -nd -r -l 1 https://conda.anaconda.org/conda-forge/noarch/ .
cd ../../
然后找到一个足够大的硬盘进行运行(据我估计大概需要下载300G的数据)
sh my_conda_mirror.sh
下一步是配置channels, 比如说我运行脚本的位置是/home6/xzg
, 那么添加频道的方法就是下面这种。
conda config --add channels file:///home6/xzg/local_mirror/conda-forge/
conda config --add channels file:///home6/xzg/local_mirror/bioconda/
conda config --add channels file:///home6/xzg/local_mirror/anaconda/
后面照常使用conda安装即可。