CentOS7系统下Python版本的升级

参考文档:
Centos升级Python
Centos7.5编译安装python3.7后解决SSL不可用问题

1.安装依赖包

# yum install -y zlib* readline* gcc*

2. 下载Python 3.8.13版本的源代码

# wget https://www.python.org/ftp/python/3.8.13/Python-3.8.13.tar.xz

3.解压源代码

z -- 解压缩, x -- 解包, v -- 显示详细信息, f -- 指定压缩文件

# tar -zxvf Python-3.5.2.tgz
# tar -xvJf Python-3.8.13.tar.xz

4.编译

  • 进入源代码目录
# cd Python-3.8.13
  • 建立安装目录
# mkdir /usr/local/python3.8.13
  • 编译
# ./configure --prefix=/usr/local/python3.8.13
  • 安装
# make && make install

5. 环境整理

  • 备份原python2,更改后的文件名要记住,后面更改 yum 的配置时要用
# mv /usr/bin/python /usr/bin/python.py2.bak
  • 创建指向新版本的软链接
# ln -s /usr/local/python3.8.13/bin/python3.8 /usr/bin/python
  • 查看当前Python版本
# python -V

关于pip

用先前版本下载的包,在新编译的版本是无法导入的,要想在新版本中安装包,需要运行 bin/pip3 安装包,然后才能在新的 python 中导入该包。

6. yum 配置

  • yum源配置信息修改
    当Python升级成功后你会发现yum源不能正常使用了,这是因为yum是需要调用原先旧版本的python的,此时python版本不匹配,需要修改yum源的配置信息.

vi /usr/bin/yum
把文档首部的 !/usr/bin/python 中python的版本号改为先前备份的版本 (即改为: !/usr/bin/python.py2.bak)

  • yum install 命令相关配置文件信息修改
    vi /usr/libexec/urlgrabber-ext-down
    同样的, 把文档首部的python版本号改为之前的旧版本号.
    即: 将 !/usr/bin/python 改为: !/usr/bin/python2.7.5

如果还有其他因python版本不匹配造成命令或者软件的无法使用,可参照前两条修改相应配置信息.

posted @ 2022-05-09 10:46  汉学  阅读(217)  评论(0)    收藏  举报