python 升级导致yum无法正常使用

一、问题描述

    昨天安装django的时候有些命令用不了,一查应该是python版本过低,目前版本2.6.6,于是编译安装了2.7.2版本,编译完成后做了个软连接加到path路径里面,使python调用的2.7版本。但是问题来了,当使用yum的时候报错使用不了,找不到模块。

wKioL1YxtXWAGD0eAAIslGyikf0459.jpg

[root@mail ~]# 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.2 (default, Oct 28 2015, 14:44:54) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-16)]

If you cannot solve this problem yourself, please go to 
the yum faq at:
  http://yum.baseurl.org/wiki/Faq

这个时候就显示yum用不了了。

二、解决办法

于是自己在网上查了一下原因,知道是python升级导致的yum调用新的2.7版本的python,但是现有的yum不支高版本的python

1、查看yum版本

[root@mail ~]# rpm -qa | grep yum
yum-metadata-parser-1.1.2-16.el6.x86_64  
yum-plugin-fastestmirror-1.1.30-17.el6_5.noarch
yum-plugin-security-1.1.30-17.el6_5.noarch
yum-3.2.29-43.el6.centos.noarch
yum-utils-1.1.30-17.el6_5.noarch

2、查看python版本

[root@mail ~]# whereis python
python: /usr/bin/python2.6 /usr/bin/python /usr/lib/python2.6 /usr/lib64/python2.6 
/usr/local/bin/python /usr/local/bin/python2.7-config /usr/local/bin/python2.7 
/usr/local/lib/python2.7 /usr/include/python2.6 /usr/share/man/man1/python.1.gz

3、解决方法

修改yum的py文件

wKioL1YxuLyyfM7oAAEnRlH0vIY904.jpg

因为前面做了软连接使/usr/bin/python调用的2.7版本的,所以这里的yum使用的是2.7版本python,导致无法正常使用,所以我们需要修改开头然yum调用2.6版本的python

[root@mail ~]# sed -i 's#/usr/bin/python#/usr/bin/python2.6#g' /usr/bin/yum

重新查看一下yum

wKiom1YxugHD7dr5AAEHrJAAd2k045.jpg

wKioL1YxuqeRIHuaAACFjgZzZ-s385.jpg

现在yum就可以正常使用了

三、问题总结

所以最终到时yum无法正常使用的问题还是python升级导致的,我们只需要更新yum的文件即可,因为yum是python写的,对python版本有要求。

你可能感兴趣的:(python,yum)