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版本有要求。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章