问题描述:

最近有个需求是想在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. Perl的数值和字符串

    数值和字符串 数值 perl中以双精度(浮点数)方式保存和运算数值的方式 就算写的是整数,在内部也会转换成等效的浮点数类型保存. 但在perl内部,有些运算会将浮点数转换成整型进行,而且也有integ ...

  2. 分布式系统监视zabbix讲解一之zabbix安装--技术流ken

    zabbix概述 Zabbix是什么 Zabbix 是由Alexei Vladishev创建,目前由Zabbix SIA在持续开发和支持. Zabbix 是一个企业级的分布式开源监控方案. Zabbi ...

  3. 使用Task异步执行方法_多线程_应用程序池

    偶然遇到在执行登录的方法需要发送消息队列导致登录时间过长的问题,从网上查了一些方法,先将一个简单的异步处理程序的小例子展示出来,供大家参考: 备注:该方法是从应用程序程序所在的线程池中获取线程,第一次 ...

  4. 【C#】list 去重(转载)

    Enumerable.Distinct 方法 是常用的LINQ扩展方法,属于System.Linq的Enumerable方法,可用于去除数组.集合中的重复元素,还可以自定义去重的规则. 有两个重载方法 ...

  5. Linux-bg和fg命令(19)

    使用ctrl+z将程序挂在后台: jobs 查看后台的命令: fg(fore go) 将后台的命令,放置前台(fore)继续执行,比如:fg 2     //等价于vi 2.txt bg(back g ...

  6. 26.C++- 泛型编程之类模板(详解)

    在上章25.C++- 泛型编程之函数模板(详解) 学习了后,本章继续来学习类模板   类模板介绍 和函数模板一样,将泛型思想应用于类. 编译器对类模板处理方式和函数模板相同,都是进行2次编译 类模板通 ...

  7. mybatis_11关联查询_多对多

    一对一:模型里面有模型 一对多:模型里面有集合 多对多:集合里面有集合   映射思路 pojo类设计思路 v  将用户信息映射到user中. v  在user类中添加订单列表属性List<Ord ...

  8. Reinforcement Learning: An Introduction读书笔记(3)--finite MDPs

     > 目  录 <  Agent–Environment Interface Goals and Rewards Returns and Episodes Policies and Val ...

  9. Chrome 开发者工具

    打开开发工具 (1)在Chrome菜单中选择 更多工具 > 开发者工具. (2)在页面元素上右键点击,选择 "检查". (3)使用快捷键 Ctrl+Shift+I (Wind ...

  10. 带你了解源码中的 ThreadLocal

    本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 这次想来讲讲 ThreadLocal 这个很神奇的东西,最开始接触到这个是看了主席的<开发艺术探索>,后来是在研究 Vi ...