Python 2 升级到 Python 3

重要提醒①:升级Python3需要较新版本GCC,推荐使用scl和devtoolset临时切换到GCC-8来升级。
重要提醒②:如果需要使用Python3的ssl模块,那么则要将OpenSSL升级到1.1.1或以上版本。

查看当前Python版本
[root@localhost ~]# python -V
Python 2.7.5
[root@localhost ~]#
 
下载Python 3源码压缩包
[root@localhost ~]# mkdir /src/
[root@localhost ~]# cd /src/
[root@localhost src]# wget https://www.python.org/ftp/python/3.10.10/Python-3.10.10.tgz
 
解压Python 3源码压缩包并开始安装
[root@localhost src]# tar -zxvf Python-3.10.10.tgz
[root@localhost src]# cd Python-3.10.10
[root@localhost Python-3.10.10]# export LANGUAGE=en_US.UTF-8
[root@localhost Python-3.10.10]# export LANG=en_US.UTF-8
[root@localhost Python-3.10.10]# export LC_ALL=en_US.UTF-8
[root@localhost Python-3.10.10]# ./configure --enable-optimizations --prefix=/program/python3
[root@localhost Python-3.10.10]# make -j8
[root@localhost Python-3.10.10]# make install
 
备份旧版Python并修改软链接
[root@localhost ~]# cp /usr/bin/python /usr/bin/python.default && mv /usr/bin/python /usr/bin/python.bak
[root@localhost ~]# ln -s /program/python3/bin/python3 /usr/bin/python
 
查看当前Python版本
[root@localhost ~]# python -V
Python 3.10.10
[root@localhost ~]# rm -rf /src/ # 删除Python 3源码及其压缩包
 
解决升级Python后执行yum命令报错问题
[root@localhost ~]# cp /usr/bin/yum /usr/bin/yum.default && cp /usr/bin/yum /usr/bin/yum.bak
[root@localhost ~]# vim /usr/bin/yum
把第一行的『#!/usr/bin/python』改为『#!/usr/bin/python2』
[root@localhost ~]# cp /usr/libexec/urlgrabber-ext-down /usr/libexec/urlgrabber-ext-down.default && cp /usr/libexec/urlgrabber-ext-down /usr/libexec/urlgrabber-ext-down.bak
[root@localhost ~]# vim /usr/libexec/urlgrabber-ext-down
把第一行的『#! /usr/bin/python』改为『#! /usr/bin/python2』
[root@localhost ~]#

Copyright © 2024 码农人生. All Rights Reserved