国内企业服务器用 CentOS 系统的比较多,CentOS8 系统已经将系统默认 Python 版本调整为了 Python3,但是 CentOS7 的存量还是很大,毕竟对企业生产服务来说稳定大于一切,CentOS7 的 Python 版本还是 2.x。现在很多新软件都是用 python3 编写的,有一些甚至已经不支持 Python2 了,这时候就会报一大堆错,这里记录一下在 Linux 上将 Python2 升级到 Python3 的过程。

首先下载新版本,3.x 版本也挺多的,推荐 3.7.6 或者 3.7.5 吧。

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

然后解压缩

tar -zxvf Python-3.7.6.tgz

进入解压缩后的目录,安装配置

cd Python-3.7.6/
./configure

配置完成后,就可以编译了:

# make

安装

# make install

验证是否安装成功:

# python -V
Python 2.7.5
# python3 -V
Python 3.7.6

一个是旧版本 2.x,另外一个是新版本 3.x。。

设置 3.x 为默认版本

查看 Python 的路径,在 /usr/bin 下面。可以看到 python 链接的是 python 2.7,所以,执行 python 就相当于执行 python 2.7。

将原来 python 的软链接重命名:

# mv /usr/bin/python /usr/bin/python.bak

将 python 链接至 python3:

# ln -s /usr/local/bin/python3 /usr/bin/python

查看 python 版本:

# python -V
Python 3.7.6

配置 yum

升级 Python 之后,由于将默认的 python 指向了 python3,yum 不能正常使用,需要编辑 yum 的配置文件:

# vi /usr/bin/yum

将 #!/usr/bin/python 改为 #!/usr/bin/python2.7,保存退出即可。