我已经通过 bash 脚本在具有许多用户的 Linux 系统上安装了 miniconda-3。我将此基本安装设置为对所有人只读。理想情况下,大多数用户只需运行以下命令即可在系统上运行 Python 应用程序。
eval "$(/path/to/bin/conda shell.bash hook)"
如果他们需要自定义包,他们可以通过创建 conda 克隆
conda create -p /path/to/new/env --clone $CONDA_PREFIX
但是,在这种情况下,用户环境仍在使用基本 conda 及其配置,如果用户运行 conda install ...
,则会导致权限错误,如下所示:
NotWritableError: The current user does not have write permissions to a required path.
path: /path/to/miniconda3/pkgs/cache/9e0f62c3.json
有没有办法让新环境使用自己的 pkg_dirs
和 env_dirs
而无需用户手动更改它们?
最佳答案
您应该创建一个共享的pkg_dirs
。简而言之,这是一个缓存目录。运行 conda install
时,它会从公共(public) channel 将软件包下载到此目录中,然后安装它们。
让每个用户使用相同的文件夹的好处是,它将加快安装速度,因为如果包已在其他用户的缓存中,它将减少下载。
参见this guide关于细节。基本上,您只需添加
pkgs_dirs:
- /path/to/shared_directory
到您的.condarc
关于python - 在 'read-only' 基本安装中使用 Conda 环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60453776/