修复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调用短信猫控件实现发短信功能实例
Jul 04 Python
利用Python实现命令行版的火车票查看器
Aug 05 Python
python中的计时器timeit的使用方法
Oct 20 Python
基于python内置函数与匿名函数详解
Jan 09 Python
python贪婪匹配以及多行匹配的实例讲解
Apr 19 Python
使用python爬取B站千万级数据
Jun 08 Python
python3使用print打印带颜色的字符串代码实例
Aug 22 Python
简单了解Python write writelines区别
Feb 27 Python
Python selenium抓取虎牙短视频代码实例
Mar 02 Python
解决python中显示图片的plt.imshow plt.show()内存泄漏问题
Apr 24 Python
Python unittest如何生成HTMLTestRunner模块
Sep 08 Python
浅谈pytorch中stack和cat的及to_tensor的坑
May 20 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
关于BIG5-HKSCS的解决方法
2007/03/20 PHP
php设计模式 Prototype (原型模式)代码
2011/06/26 PHP
在PHP程序中使用Rust扩展的方法
2015/07/03 PHP
老生常谈PHP中的数据结构:DS扩展
2017/07/17 PHP
laravel如何开启跨域功能示例详解
2017/08/31 PHP
Yii2.0框架模型添加/修改/删除数据操作示例
2019/07/18 PHP
JavaScript实现为input与textarea自定义hover,focus效果的方法
2015/08/21 Javascript
jquery代码规范让代码越来越好看
2017/02/03 Javascript
jQuery实现的事件绑定功能基本示例
2017/10/11 jQuery
微信小程序 页面滑动事件的实例详解
2017/10/12 Javascript
Vue按需加载的具体实现
2017/12/02 Javascript
解决Mac node版本升级失败的问题
2018/05/16 Javascript
基于rollup的组件库打包体积优化小结
2018/06/18 Javascript
Vue 实现拖动滑块验证功能(只有css+js没有后台验证步骤)
2018/08/24 Javascript
vue 监听屏幕高度的实例
2018/09/05 Javascript
jquery获取img的src值实例介绍
2019/01/16 jQuery
webpack4之如何编写loader的方法步骤
2019/06/06 Javascript
vue实现后台管理权限系统及顶栏三级菜单显示功能
2019/06/19 Javascript
Vue编程式跳转的实例代码详解
2019/07/10 Javascript
解决antd datepicker 获取时间默认少8个小时的问题
2020/10/29 Javascript
JavaScript中clientWidth,offsetWidth,scrollWidth的区别
2021/01/25 Javascript
[02:18]《我与DAC》之工作人员:为了热爱DOTA2的玩家们
2018/03/28 DOTA
[42:32]Secret vs Optic 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Python的Django框架中的Context使用
2015/07/15 Python
python实现汉诺塔递归算法经典案例
2021/03/01 Python
python实现将汉字保存成文本的方法
2018/11/16 Python
python 串口读取+存储+输出处理实例
2019/12/26 Python
tensorflow 大于某个值为1,小于为0的实例
2020/06/30 Python
StubHub墨西哥:购买和出售您的门票
2016/09/17 全球购物
台湾SHOPRO购物行家:亚洲首创影视.3C.家电.优质购物平台
2018/05/07 全球购物
采购文员岗位职责
2013/11/20 职场文书
竞选文艺委员演讲稿
2014/04/28 职场文书
五年级下册复习计划
2015/01/19 职场文书
如何写好开幕词?
2019/06/24 职场文书
如何利用JavaScript实现二叉搜索树
2021/04/02 Javascript
Python 文本滚动播放器的实现代码
2021/04/25 Python