修复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在linux中输出带颜色的文字的方法
Jun 19 Python
Python中if __name__ == "__main__"详细解释
Oct 21 Python
初步理解Python进程的信号通讯
Apr 09 Python
Python语言的面相对象编程方式初步学习
Mar 12 Python
Python对CSV、Excel、txt、dat文件的处理
Sep 18 Python
PyCharm鼠标右键不显示Run unittest的解决方法
Nov 30 Python
python爬取cnvd漏洞库信息的实例
Feb 14 Python
Python函数参数定义及传递方式解析
Jun 10 Python
python中threading和queue库实现多线程编程
Feb 06 Python
用Python进行栅格数据的分区统计和批量提取
May 27 Python
pandas提升计算效率的一些方法汇总
May 30 Python
python turtle绘图命令及案例
Nov 23 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 带逗号千位符数字的处理方法
2012/01/10 PHP
解析php addslashes()与addclashes()函数的区别和比较
2013/06/24 PHP
微信公众号OAuth2.0网页授权问题浅析
2017/01/21 PHP
php获取指定数量随机字符串的方法
2017/02/06 PHP
在 PHP 和 Laravel 中使用 Traits的方法
2019/11/13 PHP
js判断选择时间不能小于当前时间的示例代码
2013/09/24 Javascript
jQuery实现拖动调整表格单元格大小的代码实例
2015/01/13 Javascript
5个最顶级jQuery图表类库插件【jquery插件库】
2016/05/05 Javascript
javascript css红色经典选项卡效果实现代码
2016/05/17 Javascript
js 截取或者替换字符串中的数字实现方法
2016/06/13 Javascript
AngularJs  Understanding Angular Templates
2016/09/02 Javascript
非常优秀的JS图片轮播插件Swiper的用法
2017/01/03 Javascript
vue.draggable实现表格拖拽排序效果
2018/12/01 Javascript
DatePickerDialog 自定义样式及使用全解
2019/07/09 Javascript
JavaScript中的this原理及6种常见使用场景详解
2020/02/14 Javascript
基于vue的video播放器的实现示例
2021/02/19 Vue.js
[59:42]Secret vs Alliacne 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
Python使用爬虫猜密码
2016/02/19 Python
浅谈python内置变量-reversed(seq)
2017/06/21 Python
对PyQt5中树结构的实现方法详解
2019/06/17 Python
python正则爬取某段子网站前20页段子(request库)过程解析
2019/08/10 Python
Python操作Sqlite正确实现方法解析
2020/02/05 Python
用python打开摄像头并把图像传回qq邮箱(Pyinstaller打包)
2020/05/17 Python
Python使用Selenium实现淘宝抢单的流程分析
2020/06/23 Python
洛杉矶生活休闲而精致的基础品牌:Mika Jaymes
2018/01/07 全球购物
总经理助理岗位职责
2013/11/08 职场文书
运动会通讯稿150字
2014/02/15 职场文书
机关会计岗位职责
2014/04/08 职场文书
团委竞选演讲稿
2014/04/24 职场文书
拾金不昧感谢信范文
2015/01/21 职场文书
2015年街道办事处团委工作总结
2015/10/14 职场文书
导游词之广东佛山(南风古灶)
2019/09/24 职场文书
JavaScript实现贪吃蛇游戏
2021/06/16 Javascript
MySQL系列之开篇 MySQL关系型数据库基础概念
2021/07/02 MySQL
mysql insert 存在即不插入语法说明
2022/03/25 MySQL
【海涛dota】偶遇拉娜娅 质量局德鲁伊第一视角解说
2022/04/01 DOTA