在 CentOS 上安装 pyenv
和 pyenv-virtualenv
,可以按照以下步骤进行操作:
ps: centos7 最高适配到3.9.*
步骤 1:安装依赖
首先,确保你的系统中安装了必需的依赖项。你可以使用以下命令安装它们:
[root@ ~]# yum groupinstall "Development Tools"
[root@ ~]# yum install gcc zlib-devel bzip2-devel readline-devel sqlite-devel openssl-devel tk-devel libffi-devel
步骤 2:安装 pyenv
接下来,安装 pyenv
。你可以通过克隆 pyenv
的 GitHub 仓库来安装:
# 该命令将自动安装 pyenv、pyenv-virtualenv 和其他一些辅助工具。
# 但是会安装到$Home/.pyenv 目录下
[root@ tools]# curl https://pyenv.run | bash
# 这个方法可以安装到指定目录下
[root@ tools]# export PYENV_ROOT="/usr/local/pyenv"
[root@ tools]# curl https://pyenv.run | bash
# 或者
[root@ tools]# git clone https://github.com/pyenv/pyenv.git /usr/local/pyenv
[root@ tools]# git clone https://github.com/pyenv/pyenv-virtualenv.git /usr/local/pyenv/plugins/pyenv-virtualenv
步骤 3:配置环境变量
安装完成后,需要将 pyenv
路径添加到你的 shell 配置文件中。根据你使用的 shell(bash、zsh 等),编辑相应的配置文件。
对于 bash
,在 ~/.bashrc
文件中添加以下内容:
[root@ tools]# vim ~/.bashrc
# 设置 pyenv 根目录
export PYENV_ROOT="/usr/local/pyenv"
# 检查 pyenv 是否存在,并添加其路径
command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"
# 初始化 pyenv 相关设置
eval "$(pyenv init --path)"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
[root@ local]# source ~/.bashrc
步骤 4:安装 Python 版本
现在,你已经可以使用 pyenv
安装多个 Python 版本了。你可以列出可安装的版本:
[root@ local]# pyenv install --list
会返回很对的版本,选择需要安装的版本即可。如果安装不成功,可以选择自己下载指定版本,再安装:
[root@ local]# pyenv install 3.9.21
WARNING: Please make sure you remove any previous custom paths from your /root/.pydistutils.cfg file.
Downloading Python-3.9.21.tar.xz...
-> https://www.python.org/ftp/python/3.9.21/Python-3.9.21.tar.xz
# 这里如果卡住了,下载安装不成功,我们换种方式
[root@ local]# cd /usr/local/pyenv/
[root@ pyenv]# mkdir cache
[root@ cache]# cd cache
[root@ cache]# wget https://www.python.org/ftp/python/3.9.21/Python-3.9.21.tar.xz
# 下载完成后
[root@ cache]# pyenv install 3.9.21
WARNING: Please make sure you remove any previous custom paths from your /root/.pydistutils.cfg file.
Installing Python-3.9.21...
Installed Python-3.9.21 to /usr/local/pyenv/versions/3.9.21
步骤 5:查看已安装的 Python 版本和虚拟环境
查看当前安装的 Python 版本:
[root@ cache]# pyenv versions
* system (set by /usr/local/pyenv/version)
3.9.21
步骤 6:设置全局 Python 版本
你可以设置一个全局的 Python 版本,这将是系统默认使用的版本:
[root@ cache]# pyenv global 3.9.21
[root@ cache]# pyenv versions
system
* 3.9.21 (set by /usr/local/pyenv/version)
步骤 7:创建虚拟环境
使用 pyenv-virtualenv
创建虚拟环境。例如,创建一个名为 myenv
的虚拟环境:
[root@ cache]# pyenv virtualenv 3.9.21 myenv
Looking in links: /tmp/tmptpra4pd8
Requirement already satisfied: setuptools in /usr/local/pyenv/versions/3.9.21/envs/myenv/lib/python3.9/site-packages (58.1.0)
Requirement already satisfied: pip in /usr/local/pyenv/versions/3.9.21/envs/myenv/lib/python3.9/site-packages (23.0.1)
步骤 8:激活虚拟环境
要激活刚刚创建的虚拟环境,可以使用以下命令:
[root@ cache]# pyenv activate myenv
(myenv) [root@ cache]#
如果想直接通过安装的虚拟环境的解释器执行脚本,可以使用以下命令:
[root@ cache]# /usr/local/pyenv/versions/3.9.21/bin/python -V
Python 3.9.21
[root@ cache]# /usr/local/pyenv/versions/myenv/bin/python -V
Python 3.9.21
步骤 9:退出虚拟环境
退出当前虚拟环境,可以运行:
(myenv) [root@ cache]# pyenv deactivate
步骤 10:删除虚拟环境、安装的python
如果删除虚拟环境、安装的python:
[root@ cache]# pyenv virtualenvs
3.9.21/envs/myenv (created from /usr/local/pyenv/versions/3.9.21)
myenv (created from /usr/local/pyenv/versions/3.9.21)
[root@ cache]# pyenv uninstall myenv
pyenv: remove /usr/local/pyenv/versions/myenv? (y/N) y
pyenv-virtualenv: remove /usr/local/pyenv/versions/3.9.21/envs/myenv? (y/N) y
[root@ cache]# pyenv virtualenvs
[root@ cache]# pyenv versions
system
* 3.9.21 (set by /usr/local/pyenv/version)
[root@ cache]# pyenv uninstall 3.9.21
pyenv: remove /usr/local/pyenv/versions/3.9.21? (y/N) y
pyenv: 3.9.21 uninstalled
[root@ cache]# pyenv versions
pyenv: version `3.9.21' is not installed (set by /usr/local/pyenv/version)
system