CentOS 7下Python 2.7升级至Python3.6.1的实战教程


Posted in Python onJuly 06, 2017

前言

大家应该都知道,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"

二、下载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

三、  编译并安装

>> mkdir /usr/local/python3

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

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

CentOS 7下Python 2.7升级至Python3.6.1的实战教程    

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

CentOS 7下Python 2.7升级至Python3.6.1的实战教程    

四、 替换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的版本是否被正确替换掉了。

五、收尾替换工作

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

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

 a.  /usr/bin/yum

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

总结

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

好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
Python多线程threading和multiprocessing模块实例解析
Jan 29 Python
利用python将json数据转换为csv格式的方法
Mar 22 Python
python3学习之Splash的安装与实例教程
Jul 09 Python
使用python将多个excel文件合并到同一个文件的方法
Jul 09 Python
在Django admin中编辑ManyToManyField的实现方法
Aug 09 Python
Pytorch Tensor 输出为txt和mat格式方式
Jan 03 Python
使用Tensorboard工具查看Loss损失率
Feb 15 Python
python使用Geany编辑器配置方法
Feb 21 Python
Python执行时间的几种计算方法
Jul 31 Python
Python实现自动签到脚本功能
Aug 20 Python
python利用tkinter实现图片格式转换的示例
Sep 28 Python
Python+Appium实现自动抢微信红包
May 21 Python
Python中定时任务框架APScheduler的快速入门指南
Jul 06 #Python
Python如何快速实现分布式任务
Jul 06 #Python
Python3下错误AttributeError: ‘dict’ object has no attribute’iteritems‘的分析与解决
Jul 06 #Python
Python标准库sched模块使用指南
Jul 06 #Python
用virtualenv建立多个Python独立虚拟开发环境
Jul 06 #Python
基于Python的关键字监控及告警
Jul 06 #Python
Python中装饰器兼容加括号和不加括号的写法详解
Jul 05 #Python
You might like
PHP中的日期处理方法集锦
2007/01/02 PHP
hessian 在PHP中的使用介绍
2010/12/13 PHP
php URL验证正则表达式
2011/07/19 PHP
php 短链接算法收集与分析
2011/12/30 PHP
Youku 视频绝对地址获取的方法详解
2013/06/26 PHP
PHP实现生成唯一编号(36进制的不重复编号)
2014/07/01 PHP
php调用新浪短链接API的方法
2014/11/08 PHP
php使用正则表达式获取图片url的方法
2015/01/16 PHP
jQuery中[attribute=value]选择器用法实例
2014/12/31 Javascript
js实现用户注册协议倒计时的方法
2015/01/21 Javascript
JQuery中两个ul标签的li互相移动实现方法
2015/05/18 Javascript
js实现数组转换成json
2015/06/26 Javascript
非常酷炫的Bootstrap图片轮播动画
2016/05/27 Javascript
jquery 无限极下拉菜单的简单实例(精简浓缩版)
2016/05/31 Javascript
Javascript仿京东放大镜的效果
2017/03/01 Javascript
微信小程序 弹框和模态框实现代码
2017/03/10 Javascript
详解JS中遍历语法的比较
2017/04/07 Javascript
JS检测是否可以访问公网服务器功能代码
2017/06/19 Javascript
AugularJS从入门到实践(必看篇)
2017/07/10 Javascript
深入理解vue-router之keep-alive
2017/08/31 Javascript
利用Bootstrap Multiselect实现下拉框多选功能
2019/04/08 Javascript
JS实现排行榜文字向上滚动轮播效果
2019/11/26 Javascript
基于Django框架利用Ajax实现点赞功能实例代码
2018/08/19 Python
Python中几种属性访问的区别与用法详解
2018/10/10 Python
Python类中的魔法方法之 __slots__原理解析
2019/08/26 Python
python图形开发GUI库pyqt5的详细使用方法及各控件的属性与方法
2020/02/14 Python
Django多个app urls配置代码实例
2020/11/26 Python
python上下文管理的使用场景实例讲解
2021/03/03 Python
一个大学生十年的职业规划
2014/01/17 职场文书
护理专科毕业生自荐书范文
2014/02/19 职场文书
青年文明号服务承诺
2014/03/31 职场文书
司机个人年终总结
2015/03/03 职场文书
销售内勤岗位职责范本
2015/04/13 职场文书
小学运动会宣传稿
2015/07/23 职场文书
小学生组织委员竞选稿
2015/11/21 职场文书
无线电知识基础入门篇
2022/02/18 无线电