红联Linux门户
Linux帮助

CentOS修改python版本后yum运行出错

发布时间:2016-07-04 10:45:22来源:linux网站作者:zhang_xinxiu
线上服务器使用的是CentOS 6.3,系统自带的python是2.6版本的,该版本的python已经很老了,企业大部分再用的python是2.7版本,而且公司编写的python爬虫使用的也是2.7版本的,所以就必须把系统的python升级到2.7。但是升级后,系统很多自带的工具使用报错,比如系统工具yum,因为默认在安装的时候使用的是2.6版本的python。接下来就看看python升级后对yum的影响。
 
yum使用报错,错误代码如下:
There was a problem importing one of the Python modules required to run yum. The error leading to this problem was:   
No module named yum  
Please install a package which provides this module, or verify that the module is installed correctly.  
It's possible that the above module doesn't match the current version of Python, which is:2.7.6 (default, Oct 15 2015, 13:18:59)  
[GCC 4.4.7 20120313 (Red Hat 4.4.7-11)]  
 
大致意思就是说在运行yum时倒入python模块出错,给出的错误原因是yum和当前的python版本不匹配,当前python版本为2.7.6,知道问题了那么就容易解决了,也就是说把yum运行的python版本改为2.6的即可,解决方法如下:
 
查看系统的python版本:
[root@web1 xxx]# whereis python  
python: /usr/bin/python2.6 /usr/bin/python.tar /usr/bin/python /usr/lib/python2.6 /usr/lib64/python2.6 /usr/local/bin/python2.7-config /usr/local/bin/python /usr/local/bin/python2.7 /usr/local/lib/python2.7 /usr/include/python2.6 /usr/share/man/man1/python.1.gz  
 
查找yum的位置并编辑python的版本:
[root@web1 xxx]# which yum  
/usr/bin/yum  
[root@web1 xxx]# vim /usr/bin/yum  
将: 
#!/usr/bin/python
改为:  
#!/usr/bin/python2.6
然后运行yum,如果不在报错说明问题已经解决!
 
Linux很多自带的工具依赖python,所以在修改时一定要保留原版本的python,新增一个python版本然后修改即可!
 
本文永久更新地址:http://www.linuxdiyf.com/linux/22055.html