CentOS 6.9 安装 Python 2.7 详解 (Ansible 适配版)
CentOS 6.9 安装 Python 2.7 详解 (Ansible 适配版)
背景描述
CentOS 6.9 默认自带的 Python 版本为 2.6.6。由于 CentOS 6 已于 2020 年正式停止维护(EOL),且现代运维工具(如 Ansible 2.9+)要求目标机 Python 版本至少为 2.7+,因此必须通过 SCL (Software Collections) 安装 Python 2.7。
步骤一:修复 RPM 数据库 (预防报错)
如果在安装过程中遇到 DB_RUNRECOVERY: Fatal error,需先执行此步:
# 清理并重建损坏的 RPM 数据库
rm -f /var/lib/rpm/__db*
rpm --rebuilddb
yum clean all
步骤二:安装 SCL 源
由于官方源已下线,必须安装 SCL 配置文件,随后手动修改指向 阿里云 Archive (Vault) 镜像。
# 1. 安装 SCL 基础配置
yum install -y centos-release-scl
# 2. 删除失效的默认配置
rm -f /etc/yum.repos.d/CentOS-SCLo-scl*.repo
步骤三:强制写入指向 Vault 的镜像地址
执行以下命令,直接创建指向阿里云存档库的 .repo 文件:
cat <<EOF > /etc/yum.repos.d/CentOS-SCLo-scl.repo
[centos-sclo-sclo]
name=CentOS-6.10 - SCLo sclo
baseurl=http://mirrors.aliyun.com/centos-vault/6.10/sclo/x86_64/sclo/
gpgcheck=0
enabled=1
EOF
cat <<EOF > /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo
[centos-sclo-rh]
name=CentOS-6.10 - SCLo rh
baseurl=http://mirrors.aliyun.com/centos-vault/6.10/sclo/x86_64/rh/
gpgcheck=0
enabled=1
EOF
步骤四:安装并验证 Python 2.7
# 更新缓存并安装
yum clean all
yum makecache
yum install -y python27
# 将 Python 2.7 的库文件路径添加到系统配置中,创建一个新的 ld 配置负载文件
echo "/opt/rh/python27/root/usr/lib64" > /etc/ld.so.conf.d/python27.conf
# 刷新系统动态链接库缓存
ldconfig
# 验证安装路径 (SCL 默认路径)
/opt/rh/python27/root/usr/bin/python --version
步骤五:Ansible 适配建议
为了让 Ansible 能够识别并使用这台机器,请在 inventory (hosts) 文件中针对该 IP 指定 Python 解释器路径:
INI 格式
192.168.4.101 ansible_python_interpreter=/opt/rh/python27/root/usr/bin/python
YAML 格式
192.168.4.101:
ansible_python_interpreter: /opt/rh/python27/root/usr/bin/python
💡 避坑指南
- 不要替换系统默认 Python:千万不要去动
/usr/bin/python,否则会导致yum命令彻底失效。 - Vault 镜像:如果阿里云源后续失效,可以尝试使用
https://vault.centos.org作为baseurl。 - 环境变量:如果想在当前 Shell 直接用 python27,可以运行
scl enable python27 bash。

浙公网安备 33010602011771号