一、問題描述
昨天安裝django的時候有些命令用不了,一查應該是python版本過低,目前版本2.6.6,於是編譯安裝了2.7.2版本,編譯完成後做了個軟連接加到path路徑裏面,使python調用的2.7版本。但是問題來了,當使用yum的時候報錯使用不了,找不到模塊。
[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文件
因爲前面做了軟連接使/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
現在yum就可以正常使用了
三、問題總結
所以最終到時yum無法正常使用的問題還是python升級導致的,我們只需要更新yum的文件即可,因爲yum是python寫的,對python版本有要求。