温馨提示×

centos怎么升级python版本

小樊
41
2026-09-06 10:47:47
栏目: 编程语言

在 CentOS 上“升级 Python”要特别注意:不要直接覆盖系统自带的 Python(尤其是 CentOS 7 的 Python 2.7),否则会导致 yumsystemctl 等命令失效。

下面按推荐方式给你讲几种常见做法。


一、最推荐:用 Software Collections(SCL)安装新版本(不影响系统)

CentOS 7 示例(以 Python 3.8 为例)

# 1. 安装 SCL 源
sudo yum install -y centos-release-scl

# 2. 安装 Python 3.8
sudo yum install -y rh-python38

# 3. 使用新版本 Python
scl enable rh-python38 bash

# 验证
python --version

退出 SCL 环境后,系统 Python 不变。

安全、不影响系统


二、手动编译安装(最灵活,常用)

以 Python 3.10 为例(CentOS 7/8 通用)

# 安装依赖
sudo yum groupinstall -y "Development Tools"
sudo yum install -y gcc openssl-devel bzip2-devel libffi-devel zlib-devel wget

# 下载源码
cd /usr/src
sudo wget https://www.python.org/ftp/python/3.10.12/Python-3.10.12.tgz
sudo tar xzf Python-3.10.12.tgz
cd Python-3.10.12

# 编译安装
sudo ./configure --enable-optimizations
sudo make altinstall

⚠️ 一定要用 make altinstall,不要用 make install

python3.10 --version

系统 Python 仍然是:

/usr/bin/python

三、使用 alternatives(可选,谨慎)

如果你想让 python3 指向新版本:

sudo alternatives --set python3 /usr/local/bin/python3.10

不要对 python(Python 2)做这个操作


四、CentOS 8 / Stream(更简单)

CentOS 8 默认就有 Python 3:

sudo dnf install python3
python3 --version

如需新版本:

sudo dnf install python39

五、常见坑(非常重要)

❌ 不要做这些:

  • 删除 /usr/bin/python
  • python 软链接到 python3
  • 升级系统 python2 到 python3

✅ 正确做法:

  • python3.x 命令
  • 用虚拟环境
python3.10 -m venv venv
source venv/bin/activate

六、快速选择建议

场景 推荐方式
服务器生产环境 SCL
需要指定版本 编译安装
本地开发 venv
CentOS 8 dnf

如果你告诉我:

  • CentOS 版本(7 / 8 / Stream)
  • 当前 Python 版本
  • 想升到哪个版本

我可以给你精确命令

0