CentOS 7从Python 2.7升级至Python3.6.1

原创 2017年04月11日 20:12:14

引言: Centos是目前最为流行的Linux服务器系统,其默认的Python 2.x,但是根据python社区的规划,在不久之后,整个社区将向Python3迁移,且将不在支持Python2, 那该如何平滑迁移至Python3 呢?


1.  环境介绍

   Centos 7,   当前的Python版本2.7.12

  >> uname -a  

Linux AY131203102210033c39Z 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

  >> cat /etc/os-release

NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
2. 下载Python 3.x的安装包

   默认Linux的安装包只能是源码安装:

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

   由于xz结尾的文件,故可以使用如下命令来解压:

   >>  xz -d Python-3.6.1.tar.xz

   >> tar xvf Python-3.6.1.tar

3.  编译并安装

    >>  mkdir /usr/local/python3

    >>  cd Python-3.6.1   #进入源码文件目录

    >>  sudo ./configure --prefix=/usr/local/python3 --enable-optimizations

     

    >>  sudo make  # 此过程将持续较长的时间

     

    3.  替换python

     >> cd /usr/bin

     >>  mv python python.bak

       其中有python, python2.7, python2三个文件,其实都是指向python2.7的,这里将python备份

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

    >> python -V

      检查python的版本是否被正确替换掉了。

4.  收尾替换工作

    原则: 所有python相关的应用,如果为使用/usr/bin/python开头的脚本统统替换掉, 如果其只能在python2.7下执行,则替换为python2.7。

    根据网路上的信息,相关的文件可能有如下, 具体情况视具体情况而定:

    a.  /usr/bin/yum

 b./usr/libexec/urlgrabber-ext-down

   5. 总结

     过程比较简单,期待Centos7尽快升级到Python3.

   

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

CentOS6升级Python到2.7.3版本

转自:http://www.zhangchun.org/the-centos6-3-upgrade-python-to-2-7-3-version/ 查看python的版本 ...

CentOS6.5 安装Python3.6 (一个小白的安装过程全纪录!)

本人Python小白,这是本人学习Python的开始,对于新技术本人一贯于直接上手去做,然后在做的过程中去学习和查阅相关资料,因为经验的积累在于处理做的过程中的遇到的各种问题,在学习阶段遇到的问题越多...

CentOS7.3安装Python3.6

把centos7.3自带的Python2.7更改为最新的Python3.6

NumPy的详细教程

NumPy的详细教程 先决条件 在阅读这个教程之前,你多少需要知道点python。如果你想从新回忆下,请看看 Python Tutorial . 如果你想要运行教程中的示例,你至少...

django搭建个人博客02,表设计(models)

django 建立数据模型 1.表设计:   > 文章ID(PK),标题(Idx),正文(markdown),正文(html),摘要,分类名(FK),发布时间,修改时间   >分类名(PK),文章...

django搭建个人博客01,mysql连接配置

创建并注册app www  1.python3 manage.py startapp www   2.mkdir -p www/templates/www   3.mkdir -p www/sta...

django搭建个人博客03,编写首页

django编写个人博客之编写首页index 写个不需要用到models层的首页来熟悉一下模块解耦,html模板以及views.py,urls.py配置。文章展示了django开发中,页面如何被内置t...

Centos 6.4 python 2.6 升级到 2.7

一开始有这个需求,是因为用 YaH3C 替代 iNode 进行校园网认证时,一直编译错误,提示找不到 Python 的某个模块,百度了一下,此模块是在 Python2.7 以上才有的,但是系统的自带的...

在CentOS上升级Python的坑

在一台纯净的CentOS 6上,将Python 2.6升级到Python 2.7,并且不引入版本干扰的问题。

Linux 升级 Python 至 3.x

CentOS 7 中默认安装了 Python,版本比较低(2.7.5),为了使用新版 3.x,需要对旧版本进行升级。 由于很多基本的命令、软件包都依赖旧版本,比如:yum。所以,在更新 Python...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)