在安装Kilo版的OpenStack时,我们发现社区已经将Python升到2.7,而CentOS 6.3上仍然在使用2.6版的Python。本文记录将CentOS 6.3内置的Python2.6更新为Python2.7.9,完成后系统内两个版本的Python共存,可以通过不同的命令分别调用,效果如下:

# python -V
Python 2.7.
# python2. -V
Python 2.6.

1. 下载需要的Python源码包,
  可以到https://www.python.org/downloads/source/选择需要的源码包,这里以Python2.7.9的Gzip包为例:

# wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz

  下载完成后解压安装包:

tar -xzf Python-2.7..tgz

  进入解压得到的目录:

# cd Python-2.7.

2. 编译源码并安装,

  编译前配置未来安装的目录、以及编译时需要的支持:

# ./configure --prefix=/usr/local/python2. --with-bz2
# make
# make install
# make clean

  说明:

  (1). 选项--prefix指定未来Python2.7.9安装的位置,这里是/usr/local/python2.7/;

  (2). --with-bz2为即将编译的Python添加bz2支持,在安装OpenStack时我们发现有些软件包使用了bzip2压缩,这就要为Python添加bz2支持,使用该选项的前提是CentOS上安装了bzip2以及bzip2-devel库:

# yum install -y bzip2 bzip2-devel

  如果不需要bzip2功能,则不用添加“--with-bz2”选项;

  如果之前编译Python时没有添加bzip2支持,安装CentOS的bzip2和bzip2-devel库并重新编译Python即可。

  

3. 将系统默认的python 命令指向新版的Python2.7.9:

ln -fs /usr/local/python2./bin/python2. /usr/bin/python

  

4. 修改yum命令的配置

  由于yum命令依赖于CentOS原有的Python2.6,这里需要将其脚本解释器指向旧版Python:

vim /usr/bin/yum

将第一行 #!/usr/bin/python 改为 #!/usr/bin/python2. ,这也是为什么更新Python时没有卸载原有Python的原因。

(实用)CentOS 6.3更新内置Python2.6的更多相关文章

  1. Vue.js@2.6.10更新内置错误处机制,Fundebug同步支持相应错误监控

    摘要: Fundebug 的 JavaScript 错误监控插件同步支持 Vue.js 异步错误监控. Vue.js 从诞生至今已经 5 年,尤大在今年 2 月份发布了重大更新,即Vue 2.6.更新 ...

  2. 更新内置flash方法[转]

    原文地址:http://bbs.theworld.cn/thread-223573-1-1.html 由于目前flash插件版本较旧,而旧版flash可能会导致崩溃,其实更新方法很简单,请看如下教程. ...

  3. (MariaDB)MySQL内置函数大全

    html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...

  4. MongoDB内置文档查看和修改

    MongoDB设计的时候,有时候会设计内置文档,方便某个对象的统一.在这里略写了查看内置文档和更新内置文档. 1.查看  表为:realtimelogin   realName为:123 realpa ...

  5. Xshell 连接centOS虚拟机、centOS内置python版本升级

    Xshell 连接虚拟机 前置条件:VMware Workstation 12.5.1.Xshell 5 .  centOS 6.6 1.打开虚拟机,输入用户名和密码: 2.输出命令:ifconfig ...

  6. centos 特殊权限 各种搜索命令 lsattr ,chattr,suid,sgid,sbit,file,type是否是内置命令,stat文件属性 ,whereis,locate,find,ln 内部命令和外部命令 第五节课

    centos 特殊权限 各种搜索命令 lsattr ,chattr,suid,sgid,sbit,file,type是否是内置命令,stat文件属性 ,whereis,locate,find,ln   ...

  7. python 内置2to3工具将python2代码转换为python3代码

    python2与python3代码不兼容,如果需要python2代码在python3环境下运行,需要将代码进行转换,本文介绍使用python3内置工具2to3.py对代码进行转换 一:2to3.py在 ...

  8. CentOS8.2集成的megaraid_sas版本不支持IBM X3850 X5内置RAID卡。需要更新https://docs.broadcom.com/docs/MR_LINUX_DRIVER_7.15-07.715.02.00-1-PUL.tgz

    CentOS8.2集成的megaraid_sas版本不支持IBM X3850 X5内置RAID卡.需要更新https://docs.broadcom.com/docs/MR_LINUX_DRIVER_ ...

  9. python2.7入门---内置函数

        内置函数     abs() divmod() input() open() staticmethod() all() enumerate() int() ord() str() any() ...

随机推荐

  1. php 允许浏览器跨域访问web服务端的解决方案

    今天和同事探讨了前后端如何真正实现隔离开发的问题,如果前端单独作为服务发布,势必会涉及到无法直接调用后端的接口的问题,因为浏览器是不允许跨域提交请求的. 所谓跨域访问,就是在浏览器窗口,和某个服务端通 ...

  2. [HihoCoder1369]网络流一·Ford-Fulkerson算法

    思路: 最大流模板. #include<queue> #include<cstdio> #include<cctype> #include<vector> ...

  3. NOIP 竞赛注意事项

    <一>程序习惯注意 一.Linux与Windows的区别 a) 大小写敏感 i.   在Windows下,文件名大小写不敏感,例如A.c 与 a.c 与和a.C与A.C和没有区别. ii. ...

  4. 网络编程(1)—TCP

    java.net 包中提供了两种常见的网络协议的支持: TCP:TCP 是传输控制协议的缩写,它保障了两个应用程序之间的可靠通信.通常用于互联网协议,被称 TCP / IP. TCP协议: 使用TCP ...

  5. 什么是less?

    什么是less? 简单的说,你可以在你的css文件中使用变量.函数等方式来编写你的css. less具有哪些功能? 混入(Mixins)——class中的class: 参数混入——可以传递参数的cla ...

  6. C语言事实上不简单:sizeof

    问:C语言中一共同拥有多少个keyword? 答:32个. 答不上来的没关系.非常正常.我们玩的是程序的艺术.而不是背数字. 只是这个特殊的数字1<<5也是非常好记的-.-. 问:size ...

  7. AngularJS中使用$http对MongoLab数据表进行增删改查

    本篇体验使用AngularJS中的$http对MongoLab数据表进行增删改查. 主页面: <button ng-click="loadCourse()">Load ...

  8. [Python] 糗事百科文本数据的抓取

    [Python] 糗事百科文本数据的抓取 源码 https://github.com/YouXianMing/QiuShiBaiKeText import sqlite3 import time im ...

  9. 全景分割pipeline搭建

    全景分割pipeline搭建 整体方法使用语义分割和实例分割结果,融合标签得到全景分割结果: 数据集使用:panoptic_annotations_trainval2017和cityscapes; p ...

  10. .NET 同步与异步之锁(ReaderWriterLockSlim)(八)

    本随笔续接:.NET 同步与异步之锁(Lock.Monitor)(七) 由于锁 ( lock 和 Monitor ) 是线程独占式访问的,所以其对性能的影响还是蛮大的,那有没有一种方式可是实现:允许多 ...