Linux 服务器上anoconda用户环境和系统环境串在一起,造成环境管理极其混乱
症状:
1.使用Conda create -n new_env
不指定python版本。但是conda activate new_env
再pip list
发现已经有东西安装了
2.使用which python
得到类似 usr/local/anoconda...
的结果
3.在安装包或者使用pip list
是有类似WARNING: Ignoring invalid distribution -ip
的结果
4.安装包出现以下问题:
- 莫名其妙的版本不对
- 出现没安装的包已经存在
- 出现同一个包多个版本
- 出现’Permission denied:’
- 出现setuptools, protobuf等python相关的问题。
5.在创建环境时安装python,没有出现问题1,但是在新环境下 使用conda安装非常慢
以上症状都有可能是用户环境和系统环境串在一起造成的。
原因:
1.目前排查到etc/profile文件下出现
# <<< anaconda initialization <<<
export PATH=/usr/local/anaconda3/bin:$PATH
将其注释后问题得以解决。
2.由于tensorboard 和 setuptool之间存在冲突,因此需要执行:
pip uninstall setuptools
conda install setuptools==58.0.4
执行完毕后,运行which python` 发现python是系统环境路径。
此时执行:
conda deactivate
conda activate new_env
则又恢复正常
如果没有解决或发现其他原因,欢迎留言。