如何在CentOS7中恢复默认Python2.7.5并解决yum报错问题
恢复CentOS7默认Python2.7.5及修复Yum问题
问题根源
CentOS 7的yum等系统工具紧密依赖自带的Python2.7.5,其核心模块都绑定在系统Python的site-packages目录中。你替换默认Python为2.7.10后,yum调用的是新版本Python,无法找到仅存在于旧版本中的yum模块,因此触发报错。另外,你尝试安装低版本Python时出现冲突,是因为系统已经存在更高版本的Python依赖包(比如python-devel-2.7.5-86.el7),无需重复安装旧版本。
分步修复步骤
1. 恢复系统默认Python软链接
先删除错误的软链接,重新指向系统自带的Python2.7.5:
# 删除当前的python软链接 rm -f /usr/bin/python # 重新创建指向系统自带Python的软链接(系统自带的2.7.5路径为/usr/bin/python2.7) ln -s /usr/bin/python2.7 /usr/bin/python
2. 修正alternatives配置
你之前通过alternatives设置了Python优先级,需要调整回系统默认版本:
# 查看当前Python的alternatives选项 alternatives --list | grep python # 如果存在/usr/local/bin/python2.7的选项,先移除它 alternatives --remove python /usr/local/bin/python2.7 # 设置系统自带的Python为默认选项 alternatives --set python /usr/bin/python2.7
3. 验证修复结果
执行以下命令确认恢复成功:
# 查看Python版本,应该显示2.7.5 python -V # 测试yum是否正常工作 yum install mysql
后续避免问题的建议
不要修改系统默认的Python指向,CentOS 7的核心工具(如yum、rpm)都依赖它。如果需要使用其他Python版本,可以通过以下方式安全切换:
- 使用完整路径调用:比如直接执行
/usr/local/bin/python2.7 - 通过
alternatives管理多个版本(给系统版本设置最高优先级,默认保留) - 在用户级设置
alias(比如alias python2710="/usr/local/bin/python2.7"),不要全局修改python别名
内容的提问来源于stack exchange,提问作者AVA
相关产品推荐
相关产品推荐

