安装所有用户可用的共享 pyenv 版本

mpo*_*ett 5 python pyenv

我有一个 shell 服务器,被研究人员占用,他们都在自己的项目上工作,拥有自己所需的 python 和 python 库版本。但是有很多重叠,特别是在所需的python版本中,我发现我们在主目录中浪费了大量空间,因为安装了许多相同版本的python的多个副本。

我想找到一种体面的方式来versions全局安装 pyenv ,并允许所有用户为自己的envs. pyenv 似乎只使用 PYENV_ROOT 来查找版本的安装位置,并且没有一个独立的类似 PATH 的变量来允许多个版本的搜索路径。它还放在envspython 版本目录中,这似乎与共享版本不兼容。

当然,其他人以前必须解决这个问题。有没有人找到成功让用户共享 pyenv 版本的方法?

plp*_*hez 0

此时(2020 年 10 月),目录 ~/.pyenv/versions 列出了用户可用的 Python 版本:

> ls ~/.pyenv/versions
2.7.18  3.5.9  3.6.10  3.7.7  3.8.3  3.8.5  venv3.7
Run Code Online (Sandbox Code Playgroud)

您可以使用指向实际内容所在位置的软链接来共享整个 ~/.pyenv/versions 目录内容或单个版本。

> ln -s ~someotheruser/.pyenv/versions/3.8.5 ~/.pyenv/versions/my3.8
> ln -s /some_shared_dir/3.5.9 ~/.pyenv/versions/my3.5
Run Code Online (Sandbox Code Playgroud)

请注意,共享某个版本的所有用户可能会受到共享该版本的其他用户的操作的影响。