Centos7下python2升级到python3

Centos7下python2.7.5升级到python3.7

       之前博主介绍了如何在centos6下升级python到python3,如果小伙伴们的系统是centos6,可以看看之前的那篇教程。

       今天博主刚好在centos7下将python2.7.5升级到python3,所以顺带在这里跟大家分享。

       一、前期准备

       先看看系统是否装了pip,可以通过以下命令来判断是否已经装了,命令如下:

pip -V

      如果显示了版本则这一步可以省略,如果没有安装,先安装下,命令如下:

yum -y install epel-release
yum install python-pip

 然后完成安装pip后就可以了。

      二、下载安装

      我们接下来下载安装python,命令如下:

#进入安装目录
cd /home

# 下载
wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz 

# 解压
tar -zxf Python-3.7.3.tgz

# 安装依赖包
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc  libffi-devel
 
# 进入python目录
cd Python-3.7.3

# 编译
./configure --prefix=/usr/local/python3.7

#安装
make && make install

      关于Python3.7以上的版本,需要多安装一个依赖包:

yum install -y libffi-devel

      在make install后执行echo $?,为0表示没有出错。如果没有报错,在/usr/local会生成python3.7目录。

      三、创建软链接及修改

      我们先看看我们最终安装后的python3跟pip3的地址,我们要创建软链接,博主是的地址是在/usr/local/python3.7/bin目录下,小伙伴们可以通过如下命令找到

find / -name 'python3'
find / -name 'pip3'

然后先备份原先python2,命令如下:

mv /usr/bin/python /usr/bin/python.bak
mv /usr/bin/pip /usr/bin/pip.bak

然后我们创建软链接,命令如下:

ln -s /usr/local/python3.7/bin/pip3 /usr/bin/pip
ln -s /usr/local/python3.7/bin/python3.7 /usr/bin/python

然后输入以下命令查看版本:

python -V

如果显示的是python3.7就代表成功。

       四、更改yum配置

       因为yum需要使用python2,将/usr/bin/python改为python3后,yum就不能正常运行了,因此需要更改一下yum的配置,命令如下:

vi /usr/bin/yum
vi /usr/libexec/urlgrabber-ext-down

编辑这两个文件,将文件头的#!/usr/bin/python改为#!/usr/bin/python2即可。

       完成以上所有步骤,我们就成功的将python2.7更新到python3,同时更新了pip以及不影响系统的yum。

1条评论

  • 黎鸣 2019-07-29 11:09:40

    哇,这个真棒,刚好需要用到,一搜就找到这里,感谢博主的贡献

    回复

发表评论