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学习之第三方包安装方法(两种方法)
Jul 30 Python
Python的Scrapy爬虫框架简单学习笔记
Jan 20 Python
Python zip()函数用法实例分析
Mar 17 Python
python使用筛选法计算小于给定数字的所有素数
Mar 19 Python
python 脚本生成随机 字母 + 数字密码功能
May 26 Python
Python切片操作深入详解
Jul 27 Python
Python使用jsonpath-rw模块处理Json对象操作示例
Jul 31 Python
解决PyCharm控制台输出乱码的问题
Jan 16 Python
python实现矩阵和array数组之间的转换
Nov 29 Python
Python3 webservice接口测试代码详解
Jun 23 Python
Python调用飞书发送消息的示例
Nov 10 Python
python中Matplotlib绘制直线的实例代码
Jul 04 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
2020最新CPU的性能排名
2020/04/02 数码科技
用PHP和ACCESS写聊天室(九)
2006/10/09 PHP
PHP-redis中文文档介绍
2013/02/07 PHP
jQuery向下滚动即时加载内容实现的瀑布流效果
2016/01/07 PHP
深入理解Yii2.0乐观锁与悲观锁的原理与使用
2017/07/26 PHP
YII框架中使用memcache的方法详解
2017/08/02 PHP
mysqli扩展无法在PHP7下升级问题的解决
2019/09/10 PHP
JAVASCRIPT  THIS详解 面向对象
2009/03/25 Javascript
jQuery中ajax的使用与缓存问题的解决方法
2013/12/19 Javascript
JS获取几种URL地址的方法小结
2014/02/26 Javascript
Nodejs实现的一个简单udp广播服务器、客户端
2014/09/25 NodeJs
推荐6款基于jQuery实现图片效果插件
2014/12/07 Javascript
jQuery实现的选择商品飞入文本框动画效果完整实例
2016/08/10 Javascript
JavaScript使用键盘输入控制实现数字验证功能
2016/08/19 Javascript
微信小程序 教程之wxapp 视图容器 view
2016/10/19 Javascript
Javascrip实现文字跳动特效
2016/11/27 Javascript
jQuery常用选择器详解
2017/07/17 jQuery
jQuery中的for循环var与let的区别
2018/04/21 jQuery
详解vue中$nextTick和$forceUpdate的用法
2019/12/11 Javascript
jquery实现聊天机器人
2020/02/08 jQuery
python放大图片和画方格实现算法
2018/03/30 Python
使用Django启动命令行及执行脚本的方法
2018/05/29 Python
Python实现模拟登录网易邮箱的方法示例
2018/07/05 Python
使用python将时间转换为指定的格式方法
2018/11/12 Python
python安装dlib库报错问题及解决方法
2020/03/16 Python
HTML5 canvas基本绘图之文字渲染
2016/06/27 HTML / CSS
如何减少垃圾回收让内存更加有效使用
2013/10/18 面试题
临床医学专业个人的自我评价
2013/09/27 职场文书
实习生自荐信范文分享
2013/11/27 职场文书
护理专业毕业生自我鉴定总结
2014/03/24 职场文书
电子商务专业毕业生自荐书
2014/06/22 职场文书
幼儿园教师岗位职责
2015/04/02 职场文书
教师读书笔记
2015/06/29 职场文书
四群教育工作总结
2015/08/10 职场文书
JavaScript中isPrototypeOf函数
2021/11/07 Javascript
Go语言基础函数基本用法及示例详解
2021/11/17 Golang