不要輕易更新python版本,不然有可能會導致linux很多命令不相容新的版本
1、yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel(虛擬機器有安裝1的,請從第二步開始) 2、wget http://www.python.org/ftp/python/3.2.3/Python-3.2.3.tar.bz2
3、tar -xjf Python-3.2.3.tar.bz2
4、cd Python-3.2.3
5、./configure --prefix=/usr/local/python3
6、make && make install
7、rm -rf /usr/bin/python*
8、ln -s /usr/local/python3/bin/python3 /usr/bin/python
9、查看版本 python -v
不相容如:
問題:
[root@name user]# yum
File "/usr/bin/yum", line 30
except KeyboardInterrupt, e:
^
原因:
這是因為yum採用python作為命令直譯器,這可以從/usr/bin/yum檔案中第一行#!/usr/bin/python發現。而python版本之間相容性不太好,使得2.X版本與3.0版本之間存在文法不一致問題。而CentOS 5內建的yum採用的是python2.4,當系統將python升級到2.6或3.0後,出現文法解釋錯誤。
解決辦法:
很簡單,一是升級yum,一是修改yum的解譯器為舊版本python2.4(如果你沒有採用覆蓋升級的話,覆蓋的話重新拷貝一個python2版本檔案)
升級yum的作法就不詳述了;
修改yum的解譯器為舊版本python2.4:
vi /usr/bin/yum
將第一行"#!/usr/bin/python" 改為 "#!/usr/bin/python2.4"即可