创建干净的 conda 环境

Create clean conda environment

我想制作一个blank/empty conda 环境,但是新创建的环境似乎是从root 或其他环境中获取包。我 已经 在系统上以 root 身份安装了这些软件包(例如 bedtoolsbwa 等),也安装到其他 conda 环境中,但我想做一个干净的(为了再现性)。

这是预期的行为吗?我该如何调试?

我(试图)遵循这个答案:

$ conda env create -n test-env python
$ source activate 
$ conda env export
name: test-env
channels:
- conda-forge
- biconda
- anaconda
- defaults
dependencies
...
python=3.6.2=0
bcftools=1.6=0
bedtools=2.26.0=0
bwa=0.7.15=1
...
picard=2.14=py36_0
...

有关以下环境的一些信息:

$ conda info
Current conda install:

               platform : linux-64
          conda version : 4.3.27
       conda is private : False
      conda-env version : 4.3.27
    conda-build version : not installed
         python version : 3.6.1.final.0
       requests version : 2.14.2
       root environment : /home/obk/anaconda3  (writable)
    default environment : /home/obk/anaconda3/envs/tttest2
       envs directories : /home/obk/anaconda3/envs
                          /home/obk/.conda/envs
          package cache : /home/obk/anaconda3/pkgs
                          /home/obk/.conda/pkgs
           channel URLs : https://repo.continuum.io/pkgs/main/linux-64
                          https://repo.continuum.io/pkgs/main/noarch
                          https://repo.continuum.io/pkgs/free/linux-64
                          https://repo.continuum.io/pkgs/free/noarch
                          https://repo.continuum.io/pkgs/r/linux-64
                          https://repo.continuum.io/pkgs/r/noarch
                          https://repo.continuum.io/pkgs/pro/linux-64
                          https://repo.continuum.io/pkgs/pro/noarch
            config file : None
             netrc file : None
           offline mode : False
             user-agent : conda/4.3.27 requests/2.14.2 CPython/3.6.1 Linux/3.13.0-132-generic debian/jessie/sid glibc/2.19
                UID:GID : 1001:1001
$ conda deactivate
$ conda info
Current conda install:

               platform : linux-64
          conda version : 4.3.27
       conda is private : False
      conda-env version : 4.3.27
    conda-build version : not installed
         python version : 3.6.1.final.0
       requests version : 2.14.2
       root environment : /home/obk/anaconda3  (writable)
    default environment : /home/obk/anaconda3
       envs directories : /home/obk/anaconda3/envs
                          /home/obk/.conda/envs
          package cache : /home/obk/anaconda3/pkgs
                          /home/obk/.conda/pkgs
           channel URLs : https://repo.continuum.io/pkgs/main/linux-64
                          https://repo.continuum.io/pkgs/main/noarch
                          https://repo.continuum.io/pkgs/free/linux-64
                          https://repo.continuum.io/pkgs/free/noarch
                          https://repo.continuum.io/pkgs/r/linux-64
                          https://repo.continuum.io/pkgs/r/noarch
                          https://repo.continuum.io/pkgs/pro/linux-64
                          https://repo.continuum.io/pkgs/pro/noarch
            config file : None
             netrc file : None
           offline mode : False
             user-agent : conda/4.3.27 requests/2.14.2 CPython/3.6.1 Linux/3.13.0-132-generic debian/jessie/sid glibc/2.19
                UID:GID : 1001:1001

顺便说一句,我最初遇到的问题如下:

$ source activate test-env
$ conda install jupyter
Fetching package metadata ...........
Solving package specifications: .

UnsatisfiableError: The following specifications were found to be in conflict:
  - imagemagick
  - jupyter
  - python 3.6*
Use "conda info <package>" to see the dependencies for each package.

我猜这是因为新创建的环境 test-env 中已经有包了...

您可以通过键入 conda create -n vEnv python

创建一个新环境

这将创造一个全新的环境。顺便说一句,这与您进入 GUI 并点击创建按钮是一样的。这样你创建的 env 将被放置在随处可用的 anaconda 文件中的 envs 下,所以你可以通过执行以下操作简单地激活它:conda activate vEnv

您可以像这样检查 pip 和 conda 包(一旦您激活了您的环境): pip list conda list

希望对你有帮助