修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法


Posted in Python onJanuary 26, 2018

之前把现有这台阿里CentOS7.2系统的Python2.7.5升级成Python3.6后,yum工具就不能不觉使用了。当时查了下说明python版本的问题,但是用网上的方法还是没解决,后面也就一直没管了。最近要弄一个Nodejs小程序,需要用yum安装一些开发工具,不得不修复这个问题。

修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法 

1 yum工具报错情况

直接执行 yum 命令就会提示 /usr/bin/yum 文件第34行有错误:

[root@typecodes ~]# yum
File "/usr/bin/yum", line 34
 ^
SyntaxError: EOF while scanning triple-quoted string literal
[root@typecodes ~]#

但是vim查看这个文件根本没有这一行:

修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法 

2 解决方法

由于找不到报错的位置,只能考虑重新安装yum了。

修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法 

2.1、下载yum安装包

[root@typecodes ~]# wget -c http://yum.baseurl.org/download/3.4/yum-3.4.3.tar.gz
[root@typecodes ~]# tar -zxf yum-3.4.3.tar.gz
[root@typecodes ~]# cd yum-3.4.3/

接着使用 python2 yummain.py install yum 命令(还是不能使用python3来执行)重新安装yum工具:

修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法 

2.2、执行 yum 命令

尝试执行 yum 命令,在 /usr/bin/yum 文件的第30行报错:

[root@typecodes yum-3.4.3]# yum
File "/usr/bin/yum", line 30
 except KeyboardInterrupt, e:       ^
SyntaxError: invalid syntax
[root@typecodes yum-3.4.3]#

显然上面的 except 是python2的写法,当然不能使用默认的Python3来执行了。于是把这个文件第1行的 #!/usr/bin/python 替换成 #!/usr/bin/python2

2.2、继续执行 yum 命令

尝试执行 yum -y update 命令更新CentOS系统,结果在文件 /usr/libexec/urlgrabber-ext-down 第28行处还是报 SyntaxError: invalid syntax 的错误。

修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法 

问题是一样的,要么把 /usr/libexec/urlgrabber-ext-down 文件中所有的except写法改成Python3,要么修改第1行的解释器声明。显然第2种方法更新简单有效。

3 解决完毕

到此,可以愉快地使用 yum -y update 命令更新CentOS系统,然后做开发了!

修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法 

总结

以上所述是小编给大家介绍的修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python中的FTP通信模块ftplib的用法整理
Jul 08 Python
python3中str(字符串)的使用教程
Mar 23 Python
python中模块查找的原理与方法详解
Aug 11 Python
图解Python变量与赋值
Apr 03 Python
Python实现简单http服务器
Apr 12 Python
python opencv旋转图像(保持图像不被裁减)
Jul 26 Python
python如何解析配置文件并应用到项目中
Jun 27 Python
Python中使用双下划线防止类属性被覆盖问题
Jun 27 Python
简单了解python元组tuple相关原理
Dec 02 Python
Python 统计位数为偶数的数字代码详解
Mar 15 Python
解决使用python print打印函数返回值多一个None的问题
Apr 09 Python
keras中的卷积层&池化层的用法
May 22 Python
Python实现PS滤镜功能之波浪特效示例
Jan 26 #Python
Python使用pickle模块存储数据报错解决示例代码
Jan 26 #Python
python如何重载模块实例解析
Jan 25 #Python
Python进程间通信Queue实例解析
Jan 25 #Python
Python操作Redis之设置key的过期时间实例代码
Jan 25 #Python
python编程使用selenium模拟登陆淘宝实例代码
Jan 25 #Python
python画出三角形外接圆和内切圆的方法
Jan 25 #Python
You might like
PHP一些常用的正则表达式字符的一些转换
2008/07/29 PHP
PHP filter_var() 函数 Filter 函数
2012/04/25 PHP
PHP数据过滤的方法
2013/10/30 PHP
php实现上传图片生成缩略图示例
2014/04/13 PHP
PHP批量去除BOM头代码分享
2015/06/26 PHP
Flash对联广告的关闭按钮讨论
2007/01/30 Javascript
JavaScript onkeypress事件入门实例(按下或按住一个键盘按键)
2014/10/17 Javascript
jQuery实现tab选项卡效果的方法
2015/07/08 Javascript
javascript学习笔记整理(概述、变量、数据类型简介)
2015/10/25 Javascript
jQuery实现的AJAX简单弹出层效果代码
2015/11/26 Javascript
AngularJS 让人爱不释手的八种功能
2016/03/23 Javascript
深入理解AngularJs-scope的脏检查(一)
2017/06/19 Javascript
js实现图片懒加载效果
2017/07/17 Javascript
js中less常用的方法小结
2017/08/09 Javascript
微信小程序基于slider组件动态修改标签透明度的方法示例
2017/12/04 Javascript
使用vue完成微信公众号网页小记(推荐)
2019/04/28 Javascript
layui table 复选框跳页后再回来保持原来选中的状态示例
2019/10/26 Javascript
vue 使用插槽分发内容操作示例【单个插槽、具名插槽、作用域插槽】
2020/03/06 Javascript
JS使用Chrome浏览器实现调试线上代码
2020/07/23 Javascript
详解用python实现简单的遗传算法
2018/01/02 Python
python生成ppt的方法
2018/06/07 Python
django 微信网页授权登陆的实现
2019/07/30 Python
keras自定义损失函数并且模型加载的写法介绍
2020/06/15 Python
html5拍照功能实现代码(htm5上传文件)
2013/12/11 HTML / CSS
出口公司经理求职简历中的自我评价
2013/10/13 职场文书
营销与策划专业毕业生求职信
2013/11/01 职场文书
出纳岗位职责模板
2013/11/27 职场文书
旅游市场营销方案
2014/03/09 职场文书
学生会部长竞聘书
2014/03/31 职场文书
网络工程师自荐书范文
2014/04/01 职场文书
小学生家长寄语
2014/04/02 职场文书
社区文化建设方案
2014/05/02 职场文书
2015毕业寄语大全
2015/02/26 职场文书
房租涨价通知
2015/04/23 职场文书
vue.js Router中嵌套路由的实用示例
2021/06/27 Vue.js
Elasticsearch 索引操作和增删改查
2022/04/19 Python