我在Users/user/conda/envs
中创建了两个不再需要的环境。我看到pkgs
中也有Users/user/conda
,并且Users/user/conda/envs
和Users/user/conda/pkgs
都确实占用了我很多存储空间。我要删除这两个环境。
conda remove -n env_name --all
是否也删除环境及其环境中所有已安装的软件包?还是只删除环境?
我可以直接从pkgs
删除文件夹env
和Users/user
而不影响 base 环境吗?
如何像首次安装一样还原Anaconda(仅包含 base 环境和默认软件包)?
还是我需要卸载Anaconda并重新安装?
答案 0 :(得分:1)
conda remove -n env_name --all
是否也删除环境及其环境中的所有已安装软件包?还是只删除环境?
它将删除环境 my_env ,其中包括解压缩的库和env/env_name
目录。不会删除conda/pkgs
目录中的缓存tarball。
- 我可以直接从用户/用户中删除文件夹
pkgs
和env
而不影响基本环境吗?
您不应该这样做,因为Conda可能在整个环境中使用硬链接或软链接来共享软件包,因此很难确定这种钝删除可能对您造成什么影响。如果要删除环境,则应使用(1)中的命令。如果要删除缓存的软件包,则应使用conda clean
(使用--help
标志查看可用选项)。
- 如何像首次安装一样还原Anaconda(仅包含 base 环境和默认软件包)?
同样,您可以使用conda remove --all
删除其他环境。对于基础,您可以使用
conda install -n base --revision 0
但是,我会注意到许多用户报告说这不起作用。
由于您似乎想彻底休息一下,因此建议您完全卸载Anaconda。但是,由于您似乎主要关注空间,因此不必重新安装Anaconda,而考虑切换到Miniconda,它仅包括Conda软件包管理器和最少的支持它的基础结构。然后创建仅包含您实际需要的软件包的环境。您仍然可以使用conda clean --tarballs
来最大程度地减少缓存的下载量,但是与Miniconda相比,使用Miniconda所需要的资源要少得多。
作为一般经验法则,我建议仅将 base 用于安装基础结构(Jupyter,git,emacs等),并针对所需的特定软件包环境(例如TensorFlow)使用单独的环境,PyTorch)。以我的经验,这有助于保持您的 base 更加稳定,并允许您通过在不再需要env之后清除它们来划分潜在的程序包冲突并打包特定项目。