python2.6升级到3.3.0 的操作记录
线上服务器python版本默认是2.6,由于业务程序要求,需要将python升级到3.3.0
下面对这一升级过程做一记录:
Cenots6.8默认安装的是2.6版本,要更新升级需安装下gcc:
[root@openstack ~]# yum -y install gcc
系统会自动下载安装gcc
下载python 3.3.0
[root@openstack ~]# wget http://python.org/ftp/python/3.3.0/Python-3.3.0.tar.bz2
解压python 3.3.0
[root@openstack ~]# tar -jxvf Python-3.3.0.tar.bz2
进入目录:
[root@openstack ~]# cd Python-3.3.0.tar.bz2
安装python
[root@openstack ~]# ./configure
[root@openstack ~]# make all
[root@openstack ~]# make install
[root@openstack ~]# make clean
[root@openstack ~]# make distclean
然后不要急着去python -V,这时候实际上你还是发现是2.6.6
执行
[root@openstack ~]# mv /usr/bin/python /usr/bin/python.bak2.6
会问你是否overwrite2.6的配置,输入y
[root@openstack ~]# ln -s /usr/local/bin/python3.3 /usr/bin/python
这时候输入python -V,应该是3.3.0了
[root@openstack ~]# python -V
Python 3.3.0
另外,注意一点:
python升级到新版本后,之前的yum是不能使用的,需要将/usr/bin/python文件头部修改下:
原来默认头部内容
#!/usr/bin/python
改为如下内容,即修改到升级前的版本即可!
#!/usr/bin/python2.6
这样,整个升级过程才算完成!!
------------------------------------------------------------------------
python升级后,使用pip安装程序,会报错如下:
ImportError: No module named 'pip'
解决办法:
同样是修改/usr/bin/pip的头部文件
#!/usr/bin/python
修改为:
#!/usr/bin/python2.6
pip安装报错如下:
Command python setup.py egg_info failed with error code 1 in /tmp/pip-build-root/pytz
解决办法:
pip install -U setuptools