1. 程式人生 > >【疑難雜症】-CentOS-修改python版本後yum執行出錯

【疑難雜症】-CentOS-修改python版本後yum執行出錯

     線上伺服器使用的是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版本:

[[email protected] 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的版本:
[[email protected] xxx]# which yum
/usr/bin/yum
[[email protected] xxx]# vim /usr/bin/yum
將
#!/usr/bin/python
改為:
#!/usr/bin/python2.6

   然後執行yum,如果不在報錯說明問題已經解決!

   Linux很多自帶的工具依賴python,所以在修改時一定要保留原版本的python,新增一個python版本然後修改即可!