CentOS7 下升级Python版本

CentOS7 下升级Python版本

服务器版本:CentOS 7.3 64位

旧Python版本:2.7.5

新Python版本:3.8.0

1、切换目录到/usr/local

[root@ chenc01 ~]# cd /usr/local/
[root@ chenc01 local]# ls
bin  etc  games  include  lib  lib64  libexec  sbin  share  src

2、下载目录Python版本压缩包

[root@ chenc01 local]# wget http://npm.taobao.org/mirrors/python/3.8.0/Python-3.8.0.tgz
--2020-03-10 17:14:37--  http://npm.taobao.org/mirrors/python/3.8.0/Python-3.8.0.tgz
[root@ chenc01 local]# ls
bin  etc  games  include  lib  lib64  libexec  Python-3.8.0.tgz  sbin  share  src

3、解压Python压缩包

[root@ chenc01 local]# tar zxf Python-3.8.0.tgz

4、在当前目录下创建文件夹–Python3

[root@ chenc01 local]# mkdir python3
[root@ chenc01 local]# ls
bin  games    lib    libexec  Python-3.8.0      sbin   src
etc  include  lib64  python3  Python-3.8.0.tgz  share

5、编译安装

# 进入解压文件路径
[root@ chenc01 local]# cd Python-3.8.0/
# 生成makefile文件
[root@ chenc01 Python-3.8.0]# ./configure --prefix=/usr/local/python3
# 对makefile文件进行操作
[root@ chenc01 Python-3.8.0]# make
# 安装
[root@ chenc01 Python-3.8.0]# make install
命令解释:

在Linux中通过源码安装程序时,对于解压文件,先执行./configure,后执行make,最后执行make install

make 命令 是对makefile文件操作,make install 是安装命令,那么 ./configure 是干什么呢?./configure 其实就是生成 makefile 文件

prefix作用:编译的时候用来指定程序存放路径。

不指定prefix,可执行文件默认放在/usr/local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc,其它的资源文件放在/usr/local/share

指定prefix,直接删掉一个文件夹就够了

6、直接创建Python3软连接

# 在/usr/bin路径下创建python3软链,指向已安装的python3
[root@ chenc01 Python-3.8.0]# ln -s /usr/local/python3/bin/python3 /usr/bin/python3
# 在/usr/bin路径下创建pip3软链,指向已安装的pip3
[root@ chenc01 Python-3.8.0]# ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

7、 覆盖现有python,启动python时指向python3.8

[root@ chenc01 Python-3.8.0]# mv /usr/bin/python /usr/bin/python2_old
[root@ chenc01 Python-3.8.0]# mv /usr/bin/pip3 /usr/bin/pip2_old
# 修改软连接
[root@ chenc01 Python-3.8.0]# ln -s /usr/local/python3/bin/python3 /usr/bin/python
[root@ chenc01 Python-3.8.0]# ln -s /usr/local/python3/bin/pip /usr/bin/pip

8、收尾工作

由于修改了python的版本,会导致一些依赖于旧版本的程序出现错误,如yum,可进行如下配置:

[root@ chenc01 Python-3.8.0]# vim /usr/bin/yum
# 原
#!/usr/bin/python
import sys
try:
    import yum
except ImportError:
    print >> sys.stderr, """\
# 改
#!/usr/bin/python2.7
import sys
try:
    import yum
except ImportError:
    print >> sys.stderr, """\
 
[root@ chenc01 Python-3.8.0]# python -V
Python 3.8.0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值