当前位置: 首页 > news >正文

centos服务器系统下安装python3并与自带的python2

centos服务器系统下安装python3并与自带的python2

在centos中,自带有python2,因此需要经常安装python3。但是这里有一个坑,就是centos的yum是用python2写的,如果正常编译安装python3,那么yum就会直接挂了。为了方便以后编译安装python3,不用天天去网上找教程仅供参考。

(因平台原因本文中www即为xxx ,com即为zzz,http/ccccc即为cccc/ccccc)

首先连上服务器,看下python版本:

python -V

如图我们可以看到centos下,默认带有python2.7.5:

 

接下来我们开始安装python3。

1 安装python3所需要的组件

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

安装完成如图:

 

2 备份现有的python2

cd /usr/bin

mv python python.bak

mv pip pip.bak

然后试下yum,发现已经挂了:

 

3 下载并编译安装python3

这篇文章我们选择最新的稳定版本3.6.5,如有更新可以自行去官网

cd ~ && wget ccccc://xxx.python.org/ftp/python/3.6.5/Python-3.6.5.tar.xz ;

tar -xvJf Python-3.6.5.tar.xz

cd Python-3.6.5

指定安装路径

./configure prefix=/usr/local/python3

编译并安装

make && make install

编译安装完成后如图:

 

接下来做一条软连接,将python3指向python,顺便把pip也重新指向:

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

ln -s /usr/local/python3/bin/pip3 /usr/bin/pip

这时候我们执行一下python,看看版本回显信息:

python -V 

python2 -V

如图可以看到,python命令对应了python3.6.5,python2命令对应了python2.7.5。

 

4 修改yum配置

装完了python3之后,我们要修一下yum了,不然以后都没法装软件和环境了。

vim /usr/bin/yum

如图,按insert,把头部的 #! /usr/bin/python 修改为 #! /usr/bin/python2

 

修改完成后按esc,然后输入 :wq 保存退出

同样修改一下 urlgrabber-ext-down 文件,把头部的 #! /usr/bin/python 修改为 #! /usr/bin/python2:

vim /usr/libexec/urlgrabber-ext-down

 

改完之后再试一下yum,已经恢复正常:

 

到了这一步那么所有的就弄好啦

我是艾西,今天的分享就到这里啦希望对有需要的小伙伴有帮助我们下期见

拥有一台服务器可以做很多有趣的事情!

http://www.lryc.cn/news/146919.html

相关文章:

  • (二十)大数据实战——Flume数据采集的基本案例实战
  • AutoCAD图如何保存为Word
  • Java线程 - 详解(2)
  • 事务特性 - 达梦数据库
  • axios 使用FormData格式发送GET请求
  • CS144(2023 Spring)Lab 1: stitching substrings into a byte stream
  • 【PHP】常用的PHP内置函数
  • css自学框架之消息弹框
  • 42、Flink 的table api与sql之Hive Catalog
  • PAT 1145 Hashing - Average Search Time
  • C++调用Python Win10 Miniconda虚拟环境配置
  • 从0到1学会Git(第一部分):Git的下载和初始化配置
  • 【记录】手机QQ和电脑QQ里的emoji种类有什么差异?
  • blender界面认识01
  • TCP数据报结构分析(面试重点)
  • 合并两个有序的单链表,合并之后的链表依然有序
  • eureka迁移到nacos--双服务中心注册
  • 线程池使用不规范导致线程数大以及@Async的规范使用
  • 启莱OA treelist.aspx SQL注入
  • ES是一个分布式全文检索框架,隐藏了复杂的处理机制,核心数据分片机制、集群发现、分片负载均衡请求路由
  • xml和json互转工具类
  • Windows系统下MMDeploy预编译包的使用
  • yolov5自定义模型训练二
  • Spring框架获取用户真实IP(注解式)
  • 利用 IDEA IDE 的轻量编辑模式快速查看和编辑工程外的文本文件
  • MyBatisx代码生成
  • 【日记】文章更新计划
  • UML用例图三种关系(重点)-架构真题(十七)
  • 分层解耦介绍
  • Nginx百科之gzip压缩、黑白名单、防盗链、零拷贝、跨域、双机热备