0

当我在特定环境中调用conda activate <my_env>(或)时,它会无限期挂起:没有输出,没有提示返回。source activate <my_env>

但是,当我按 Enter 一到两次(或使用 CTRL+C)时,我得到了提示,并且环境似乎已激活,一切正常。这基本上与此处描述的问题完全相同。我有几个共同的包,喜欢django和其他r相关的包。

我有:

conda                     4.6.4
conda-build               3.15.1

运行conda config --get channels给出:

--add channels 'defaults'   # lowest priority
--add channels 'bioconda'
--add channels 'conda-forge'   # highest priority
4

1 回答 1

3

就我而言,这是因为我的 conda 环境中有一些文件归 root 所有。我显然一定是sudo在某个时候不小心在 conda 命令前面抛出了一个,这导致该命令修改或创建的任何文件都归 root 所有。除非您想始终以 root 身份运行您的 anaconda 环境——这将是罕见的并且可能非常危险!- 强烈建议将这些文件的所有权转回您的非 root 用户。

为了做到这一点,我只是简单地在 shell 上做了这个:

$ cd ~/anaconda3
$ sudo chown -R user.user .

您将在其中替换user为您的 Linux 用户名。

默认的 Ubuntu 配置为每个用户创建一个与用户同名的默认组,所以这就是我放在user.user那里的原因。如果您的设置不同,您可以轻松更改以匹配您的情况。

如果有疑问,只需执行一次ls -Fla ~/anaconda3,它将显示 Anaconda 安装根目录中所有文件的所有者和组信息。

于 2019-07-13T23:01:49.910 回答