centos7中将python2.7.5版本升级到3.x版本

 

一、安装gcc源码编译器

yum -y install gcc gcc-c++ pcre-devel zlib-devel openssl-devel

二、下载python软件包

wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz

三、解压并编译安装

1、解压

tar -zxvf Python-3.5.2.tgz

2、进入解压目录

cd Python-3.5.2

3、创建安装目录

mkdir /usr/local/python3.5.2

4、编译

./configure -prefix=/usr/local/python3.5.2

5、安装

make && make install

6、备份原有python

mv /usr/bin/python /usr/bin/python2.7.5    

四、建立软连接指向到当前系统默认python命令的bin目录,让系统使用新版本python

mv /usr/bin/python /usr/bin/python2.7.5 //当前python的版本为2.7.5
ln -s /usr/local/python3.5.2/bin/python3.5  /usr/bin/python

ln -s /usr/local/python3.5.2/bin/pip3.5 /usr/bin/pip3

 

查看python版本

python -V

五、修改yum配置文件

vim /usr/bin/yum

把文件头部的

!/usr/bin/python

修改为

!/usr/bin/python2.7.5 //改为之前的老版本号

保存退出,yum即可正常使用。

六:修改另外一个相关的配置文件

vim  /usr/libexec/urlgrabber-ext-down

该配置文件与yum install 命令有关,如果不修改该文件会报错

File "/usr/libexec/urlgrabber-ext-down", line 28    except OSError, e:

这是因为python版本不匹配:

把文件头部的

!/usr/bin/python

修改为

!/usr/bin/python2.7.5 //改为之前的老版本号

七升级python后防火墙无法启动:

解决方法:

vim  /usr/sbin/firewalld

把文件头部的

#!/usr/bin/python -Es

修改为之前的老版本号

#!/usr/bin/python2.7.5 -Es

把vim /usr/bin/firewall-cmd文件头部的

#!/usr/bin/python -Es

修改为

#!/usr/bin/python2.7.5 -Es

升级pip

pip3 install --upgrade pip

如若有其他命令、软件不能正常使用,仿照yum配置文件的修改方法,修改其配置文件即可。至此,更新完毕。

 

转载于:https://www.cnblogs.com/Mr-Ding/p/9333744.html

你可能感兴趣的:(centos7中将python2.7.5版本升级到3.x版本)