问题描述:

最近有个需求是想在centos下安装python3.5

因为django这边用到是这个版本

1.查看系统版本和python版本

Centos7.6版本默认安装的是python2.7.5版本

利用cat查看系统版本,python -V查看python版本

which查看python目录,或者whereis也行

[root@localhost data]# cat /etc/centos-release
CentOS Linux release 7.6. (Core)
[root@localhost data]# python -V
Python 2.7.
[root@localhost data]# which python
/usr/bin/python
[root@localhost data]# whereis python
python: /usr/bin/python /usr/bin/python2. /usr/lib/python2. /usr/lib64/python2. /etc/python /usr/include/python2. /usr/share/man/man1/python..gz

cd进入到python目录里面ll命令查看一下,看到指向的是python2.7版本

[root@localhost bin]# ll python*
lrwxrwxrwx root root Dec : python -> python2
lrwxrwxrwx root root Dec : python2 -> python2.
-rwxr-xr-x root root Oct : python2.

因为我们需要用到python3版本,所以python要指向python3才行
现在准备安装一下python3,先做一下备份,备份之前已安装相关包

[root@localhost bin]# mv python python.bak

2.开始安装python3

这边利用yum来安装依赖,这边mv备份了python2,所以需要在mv之前就执行安装依赖包

因为一些命令例如yum,它使用到python2

先安装一下依赖包

[root@localhost bin]# yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

去官网下载安装包或者直接指向下面命令,我这里指定了3.5的版本

官网下载地址:https://www.python.org/downloads/source/

[root@localhost data]# wget https://www.python.org/ftp/python/3.5.6/Python-3.5.6.tgz

解压安装包

[root@localhost data]# ls
Python-3.5..tgz
[root@localhost data]# tar -zxvf Python-3.5..tgz && cd Python-3.5.
[root@localhost Python-3.5.]#

编译安装

[root@localhost Python-3.5.]# ./configure prefix=/usr/local/python3
[root@localhost Python-3.5.]# make && make install

安装完成以后,可以到/usr/local/目录下面查看有没有python3
然后添加软链接到执行目录下/usr/bin/

[root@localhost Python-3.5.]# ln -s /usr/local/python3/bin/python3 /usr/bin/python

可以看到软链接创建成果,测试安装是否成功
执行python -V 查看python3的版本
执行python2 -V 查看python2的版本

[root@localhost bin]# python -V
Python 3.5.
[root@localhost bin]# python2 -V
Python 2.7.

因为执行yum命令需要用到python2版本,所以这边要修改一下yum的配置

[root@localhost bin]# vim /usr/bin/yum

把#!/usr/bin/python修改成#!/usr/bin/python2

再把urlgrabber-ext-down里面的#!/usr/bin/python修改成#!/usr/bin/python2

[root@localhost bin]# vim /usr/libexec/urlgrabber-ext-down

最后再配置一下pip包管理工具,使用软链接

[root@localhost bin]# ln -s /usr/local/python3/bin/pip3  /usr/bin/pip

这样python3版本安装完成与python2版本共存了!

Linux-Centos7系统下安装python2并与python3版本共存的更多相关文章

  1. Linux centos7环境下安装JDK的步骤详解

    Linux centos7环境下安装JDK的步骤详解 测试root用户下JAVA版本 输入命令:   java –version 1.先到Oracle官网里下载好jdk,网址如下: http://ww ...

  2. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦

    linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(一) 一.Linux下安装MySQL 1.下载 下载地址:http://dev.mysql.co ...

  3. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(二)

    linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(二) 安装apache web容器 . yum方式安装apache 注意apache在linux ...

  4. Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因

    原文:Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因 今天试了下在虚拟机上利用CentOS系统的yum命令安装好了httpd(apache2.4.6), ...

  5. Linux centos7环境下安装MySQL的步骤详解

    Linux centos7环境下安装MySQL的步骤详解 安装MySQL mysql 有两个跟windows不同的地方 1).my.ini 保存到/etc/my.ini 2).用户权限,单独用户执行 ...

  6. Linux centos7环境下安装Nginx

    Linux centos7环境下安装Nginx的步骤详解 1.    首先到Nginx官网下载Nginx安装包 http://nginx.org/download/nginx-1.5.9.tar.gz ...

  7. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(三)

    linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(三) 安装PHP 1.yum方式安装PHP方法同安装apache一样传送门:linux cent ...

  8. Windows10系统下安装python2和python3双版本

    Windows10系统下安装Python3的步骤已经演示过(详见:https://www.cnblogs.com/schut/p/8399195.html),此处不再赘述Python的下载,主要介绍在 ...

  9. win10系统同时安装python2.7和python3.6

    我是先在本机上安装的python3.6.5,因为要学习一个框架,但是这个框架只支持python2,所以我又安装了python2.7.15,并且配置到系统环境变量 环境变量配置了python3.6.5的 ...

随机推荐

  1. navicat连接不上Linux服务器上的MySQL

    1.首先确定你的linux已经关闭防火墙 详细操作点这里: 如果是公司服务器防火墙比较重要不能关闭,那就麻烦点了,需要在防火墙的配置文件下配置属性. 如果还不能解决,请继续往下看. 2.如果是云服务器 ...

  2. lambda,linq

    一:什么是Lambda表达式 lambda表达式是实例化委托的一个参数,就是一个方法,具体实现如下: { //.NetFramework 1.0-1.1的时候这样应用 NoReturnNoPara m ...

  3. Java并发(二)—— 并发编程的挑战 与 并发机制的底层原理

    单核处理器也可以支持多线程,因为CPU是通过时间片分配算法来循环执行任务 多线程一定比单线程快么?不一定,因为线程创建和上下文切换都需要开销. 如何减少上下文切换 无锁并发编程 CAS算法 使用最少线 ...

  4. 响应者链UIResponder-扩大UIButton的点击范围

    在开发中,我们经常看到有按钮等的点击,会出现响应事件.按钮->view->ViewController->UIWindow->UIApplication,这就形成了一个响应链. ...

  5. [转]MySQL查询缓存清空

    本文转自:https://www.cnblogs.com/wangyiwei/p/7765457.html 可以通过下面的SQL查看当前查询缓存相关参数状态:   SHOW VARIABLES LIK ...

  6. 【转载】使用Jquery操作Cookie对象

    Cookies是一种能够让网站服务器把少量数据储存到客户端的硬盘或内存,或是从客户端的硬盘读取数据的一种技术.jQuery是一个封装好的JavaScript库,使用jQuery可以极大地简化了Java ...

  7. java过滤器(简化认证)

    最近在看过滤器,刚刚实现了过滤器的简化认证功能: 使用过滤器简化认证: 在Web应用程序中,过滤器的一个关键用例是保护应用程序不被未授权的用户访问.为跨国部件公司开发的客户支持应用程序使用了一种非常原 ...

  8. 快速排序 and 拉格朗日插值查找

    private static void QuictSort(int[] zu, int left, int right) { if (left < right) { ; ; ]; while ( ...

  9. Java先比较日期再比较时间

    package com.bihang.seaya; import lombok.Data; import java.text.ParseException; import java.text.Simp ...

  10. 函数多个返回值与unpack的用法

    -- return the index of max number and himself -- 函数可以返回多个值 function get_max( T ) ] for i, v in ipair ...