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版本不匹配造成命令或者软件的无法使用,可参照前两条修改相应配置信息.

浙公网安备 33010602011771号