当前位置: 代码迷 >> 综合 >> linux centos 7.x 安装 python3.x 替换 python2.x(亲测有效)
  详细解决方案

linux centos 7.x 安装 python3.x 替换 python2.x(亲测有效)

热度:99   发布时间:2023-11-24 19:58:08.0

在这里插入图片描述

前言


一般而言,新的 centos 7.x 中自带的 python 都是 2.x 的版本。对于我们运行 python 软件支持并不友好,所以需要进行升级操作

下载 python3 的包之前,要先安装相关的依赖包,用于下载编译 python3:

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

安装 pip


默认的 centos7 是没有安装 pip,先添加 epel 扩展源

yum -y install epel-release

安装 pip

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

一般 centos7 系统都有自带的 python 2.x 的版本,所以直接使用 python 运行即可

python get-pip.py

pip 测试安装

pip -V# pip 版本展示如下
pip 20.3.1 from /usr/local/python3/lib/python3.6/site-packages/pip (python 3.6)

安装 wget


安装 wget 命令如下

pip install wget

用 wget 下载 python3 的源码包,或者自己先下载好,上传到服务器再安装,如果网络快可以直接安装

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

微信搜索【源码兴趣圈】,关注龙台,回复【资料】领取涵盖 GO、Netty、SpringCLoud Alibaba、Seata、开发规范、面试宝典、数据结构等电子书 or 视频学习资料!


编译 python 源码包


编译 python3 源码包,解压

xz -d Python-3.6.8.tar.xz
tar -xf Python-3.6.8.tar

进入解压后的目录,依次执行下面命令进行手动编译

cd Python-3.6.8
./configure prefix=/usr/local/python3

如果执行报如下错误,是因为由于本机缺少 gcc 编译环境,如果不报错,直接执行下一步骤

configure: error: in `/root/Python-3.6.8': configure: error: no acceptable C compiler found in $PATH See `config.log' for more details# 执行命令
yum install -y gcc

执行成功后,开始手动编译,时间稍等几分钟

make && make install

安装依赖 zlib、zlib-deve

yum install zlib zlib
yum install zlib zlib-devel

最后没提示出错,就代表正确安装了,在/usr/local/目录下就会有 python3 目录


替换 python 软链接


添加软链接,将原来的链接备份,如果没有 python 软连接可以不执行

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

添加 python3 的软链接

ln -s /usr/local/python3/bin/python3.6 /usr/bin/python

测试是否安装成功了

python -V# python 版本展示
Python 3.6.8

更新 yum 文件


而因为 yum 使用的是 python2,所以替换成为 python3 后可能会无法工作,因此还需要修改 yum 的配置文件

在此之前需要确认下,python 是否有 2.7 的版本

确认后就可以修改了

# 把文件头部的 #! /usr/bin/python 改成 #! /usr/bin/python2.7
vi /usr/bin/yum
# 把文件头部的 #! /usr/bin/python 改成 #! /usr/bin/python2.7
vi /usr/libexec/urlgrabber-ext-down
# 把文件头部的 #! /usr/bin/python 改成 #! /usr/bin/python2.7
# 如果没有此文件,就不必修改
vi /usr/bin/yum-config-manager

修改完成后可以下载个平时比较常用的 tree 组件
yum install tree -y

结言


由于作者水平有限, 欢迎大家能够反馈指正文章中错误不正确的地方, 感谢 ?

小伙伴的喜欢就是对我最大的支持, 如果读了文章有所收获, 希望能够 点赞、评论、关注三连!


推荐阅读:

  1. 【强烈推荐】1w 字,18 张图,彻底说清 springboot starter
  2. 【强烈推荐】谨慎使用 JDK 8 新特性并行流 ParallelStream
  3. 【强烈推荐】一文快速掌握 Redisson 如何实现分布式锁原理
  4. 【大厂面试真题】JDK 线程池中如何不超最大线程数快速消费任务
  5. 【大厂面试真题】JDK 线程池如何保证核心线程不被销毁

作者麻花,坐标帝都 Java 后端研发,励志成为架构师的一枚处女座程序员,专注高并发、框架底层源码、分布式等知识分享