腾讯云 Python3.12.8 通过yum安装 并设置为默认版本
在腾讯云服务器上,直接通过 yum
安装 Python 3.12.8 可能不可行,因为标准仓库通常不包含最新的 Python 版本。不过,我们可以通过添加第三方仓库或手动安装 RPM 包的方式实现。以下是完整解决方案:
方法 1: 通过第三方仓库安装(推荐)
适用于 CentOS 7/8/9
# 安装必要的工具
sudo yum install -y epel-release
sudo yum install -y yum-utils# 添加 IUS 社区仓库(提供较新的 Python 版本)
sudo yum install -y https://repo.ius.io/ius-release-el$(rpm -E '%{rhel}').rpm# 安装 Python 3.12
sudo yum install -y python3.12 python3.12-devel python3.12-pip# 验证安装
/usr/bin/python3.12 --version
方法 2: 手动安装 RPM 包
如果仓库中没有 3.12.8,可以手动下载安装:
# 下载 Python 3.12.8 RPM 包(以 CentOS 7 为例)
wget https://example.com/python3.12.8.rpm # 需替换为实际下载链接# 查找可用包(可尝试以下官方源):
# - https://packages.endpointdev.com/
# - https://ius.io/# 安装依赖
sudo yum install -y gcc openssl-devel bzip2-devel libffi-devel# 安装 RPM 包
sudo yum localinstall -y python3.12.8.rpm
设置为默认 Python3 版本
# 1. 移除现有 python3 链接
sudo rm -f /usr/bin/python3# 2. 创建新链接
sudo ln -s /usr/bin/python3.12 /usr/bin/python3
sudo rm /usr/bin/pip3 # 删除错误链接
sudo rm /usr/bin/pip # 可选,如有问题一并删除
sudo ln -s /usr/bin/pip3.12 /usr/bin/pip3# 3. 验证设置
python3 --version # 应显示 Python 3.12.8
pip3 --version # 应显示 pip 版本# 4. 修复 yum 依赖(重要!)
# 因 yum 依赖 Python,需修改其解释器
sudo sed -i '1s|python|python2|' /usr/bin/yum
sudo sed -i '1s|python|python2|' /usr/libexec/urlgrabber-ext-down
配置环境
# 1. 设置 pip 腾讯云镜像
mkdir -p ~/.pip
cat > ~/.pip/pip.conf << EOF
[global]
index-url = https://mirrors.cloud.tencent.com/pypi/simple
trusted-host = mirrors.cloud.tencent.com
EOF# 2. 安装常用工具
pip3 install virtualenv wheel# 3. 创建虚拟环境
python3 -m venv myenv
source myenv/bin/activate
验证安装
# 检查版本
python3 -c "import sys; print(sys.version)"# 测试 SSL 模块
python3 -c "import ssl; print(ssl.OPENSSL_VERSION)"# 测试包安装
pip3 install numpy
python3 -c "import numpy; print(numpy.__version__)"
注意事项
-
兼容性问题:
- CentOS 7 需要额外安装较新的 OpenSSL
- 某些系统工具(如 yum)依赖 Python 2,修改后不影响使用
-
替代方案推荐:
# 使用软件集合(SCL)实现多版本共存 sudo yum install -y centos-release-scl sudo yum install -y rh-python312 scl enable rh-python312 bash
-
最新版本获取:
- 定期检查官方仓库更新:
sudo yum check-update python3*
- 查看 IUS 仓库可用版本:
yum --disablerepo="*" --enablerepo="ius" list available python3*
- 定期检查官方仓库更新:
卸载方法
# 还原默认链接
sudo ln -sf /usr/bin/python2 /usr/bin/python # CentOS 7
sudo ln -sf /usr/bin/python3.6 /usr/bin/python3 # 原始版本# 卸载 Python 3.12
sudo yum remove -y python3.12*