本文档为傻瓜式操作指南 ,仅包含核心执行步骤,无额外建议,按步骤执行即可完成 Python 离线升级。
适用环境:CentOS 9(内核 5.14.0-601.el9.x86_64)、离线环境、当前 Python 版本 3.9.19。
前置准备(联网机器操作)
步骤 1:下载 Python 3.11.9 源码包
在一台有网络、同架构(x86_64)的 CentOS 9 机器上执行:
bash
# 下载源码包(华为云镜像,速度更快)
wget https://mirrors.huaweicloud.com/python/3.11.9/Python-3.11.9.tgz
步骤 2:下载编译依赖包
bash
# 创建依赖包存放目录
mkdir -p /root/python_deps
cd /root/python_deps
# 仅下载编译依赖包,不安装
dnf install --downloadonly --downloaddir=. gcc openssl-devel bzip2-devel libffi-devel zlib-devel make
# 打包依赖包,方便传输
cd /root
tar -zcvf python_deps.tar.gz python_deps/
步骤 3:传输文件到离线服务器
将以下 2 个文件通过 SFTP/U盘等方式,传输到离线服务器的 /root/ 目录下:
- Python-3.11.9.tgz
- python_deps.tar.gz
离线服务器操作(核心步骤)
步骤 1:安装编译依赖
bash
# 解压依赖包
tar -zxvf /root/python_deps.tar.gz -C /root/
# 进入依赖包目录
cd /root/python_deps
# 离线安装所有依赖
dnf install -y *.rpm
# 回到根目录
cd /root/
步骤 2:编译安装 Python 3.11.9
bash
# 解压源码包
tar -zxvf Python-3.11.9.tgz
cd Python-3.11.9
# 配置编译参数(固定路径,无需修改)
./configure --prefix=/usr/local/python311 --enable-optimizations --with-openssl=/usr
# 编译(自动匹配CPU核心数,加快速度)
make -j $(nproc)
# 安装(使用altinstall,不覆盖系统默认Python)
make altinstall
步骤 3:配置软链接(切换默认 Python 版本)
bash
# 备份原有 python3 软链接
mv /usr/bin/python3 /usr/bin/python3.9.bak
# 备份原有 pip3 软链接
mv /usr/bin/pip3 /usr/bin/pip3.9.bak
# 创建指向 Python 3.11.9 的软链接
ln -s /usr/local/python311/bin/python3.11 /usr/bin/python3
ln -s /usr/local/python311/bin/pip3.11 /usr/bin/pip3
步骤 4:验证升级结果
bash
# 检查 Python 版本(应输出 Python 3.11.9)
python3 -V
# 检查 pip 版本(应显示 pip xx.x.x from /usr/local/python311/.../python 3.11)
pip3 -V
验证标准
执行验证命令后,输出以下内容即为升级成功:
Python 3.11.9
pip 24.2 from /usr/local/python311/lib/python3.11/site-packages/pip (python 3.11)
总结
- 核心流程:联网机器下载源码+依赖包 → 传输到离线服务器 → 安装依赖 → 编译安装 → 配置软链接;
- 所有命令均为固定写法,无需修改路径/参数,直接复制执行即可;
- 验证命令输出 Python 3.11.9 即为操作成功。