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中的wxPython实现最基本的浏览器功能
Apr 14 Python
Python记录详细调用堆栈日志的方法
May 05 Python
python实现搜索本地文件信息写入文件的方法
Feb 22 Python
Python Json模块中dumps、loads、dump、load函数介绍
May 15 Python
对python中词典的values值的修改或新增KEY详解
Jan 20 Python
Python中的十大图像处理工具(小结)
Jun 10 Python
对django后台admin下拉框进行过滤的实例
Jul 26 Python
Django接收post前端返回的json格式数据代码实现
Jul 31 Python
Python Web框架之Django框架Model基础详解
Aug 16 Python
Python3.7+tkinter实现查询界面功能
Dec 24 Python
关于python中导入文件到list的问题
Oct 31 Python
python单向链表实例详解
May 25 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伪造referer突破网盘禁止外连的代码
2008/06/15 PHP
Yii净化器CHtmlPurifier用法示例(过滤不良代码)
2016/07/15 PHP
PHP实现二维数组中的查找算法小结
2018/06/09 PHP
PHP的mysqli_stat()函数讲解
2019/01/23 PHP
lib.utf.js
2007/08/21 Javascript
javascript下高性能字符串连接StringBuffer类
2010/08/16 Javascript
利用javascript打开模态对话框(示例代码)
2014/01/11 Javascript
JavaScript实现为指定对象添加多个事件处理程序的方法
2015/04/17 Javascript
完美实现仿QQ空间评论回复特效
2015/05/06 Javascript
购物车前端开发(jQuery和bootstrap3)
2016/08/27 Javascript
bootstrap下拉菜单使用方法解析
2017/01/13 Javascript
JS设置时间无效问题的解决办法
2017/02/18 Javascript
使用jquery+iframe做一个ajax上传效果(实例)
2017/08/24 jQuery
JavaScript中Require调用js的实例分享
2017/10/27 Javascript
vue组件命名和props命名代码详解
2019/09/01 Javascript
JS快速实现简单计算器
2020/04/08 Javascript
python3.5使用tkinter制作记事本
2016/06/20 Python
简单掌握Python的Collections模块中counter结构的用法
2016/07/07 Python
python利用rsa库做公钥解密的方法教程
2017/12/10 Python
用python实现对比两张图片的不同
2018/02/05 Python
python利用pandas将excel文件转换为txt文件的方法
2018/10/23 Python
在unittest中使用 logging 模块记录测试数据的方法
2018/11/30 Python
Pandas统计重复的列里面的值方法
2019/01/30 Python
python 实现创建文件夹和创建日志文件的方法
2019/07/07 Python
python3 Scrapy爬虫框架ip代理配置的方法
2020/01/17 Python
python 调用API接口 获取和解析 Json数据
2020/09/28 Python
试解释COMMIT操作和ROLLBACK操作的语义
2014/07/25 面试题
读书伴我成长演讲稿
2014/05/07 职场文书
高一新生军训方案
2014/05/12 职场文书
会员活动策划方案
2014/08/19 职场文书
尊师重教演讲稿
2014/09/04 职场文书
2014年化工厂工作总结
2014/11/25 职场文书
如何用python绘制雷达图
2021/04/24 Python
python实现腾讯滑块验证码识别
2021/04/27 Python
python 爬取吉首大学网站成绩单
2021/06/02 Python
详细聊聊关于Mysql联合查询的那些事儿
2021/10/24 MySQL