RHEL6.4上升级python从2.6.6到2.7.3

原始安装好的redhat6.4上的python版本是2.6.6,不能满足实际需要。升级的方法很多,从源码升级或者从rpm包升级。其中从rpm包升级相对简单。这里记录全部过程如下。准备新安装的RHEL6.4,没有安装任何其他多余的软件,配置好ISO作为本地YUM源。看看升级过程如下:

1 升级python

1) 首先是下载python的RPM包

rhel6使用下面的下载地址:

wget -c --no-check-certificate http://li.nux.ro/download/nux/dextop/el6/x86_64/python27-libs-2.7.3-6.2.el6.nux.x86_64.rpm
wget -c --no-check-certificate http://li.nux.ro/download/nux/dextop/el6/x86_64/python27-2.7.3-6.2.el6.nux.x86_64.rpm
wget -c --no-check-certificate http://li.nux.ro/download/nux/dextop/el6/x86_64/tkinter27-2.7.3-6.2.el6.nux.x86_64.rpm
wget -c --no-check-certificate http://li.nux.ro/download/nux/dextop/el6/x86_64/python27-devel-2.7.3-6.2.el6.nux.x86_64.rpm

rhel5 使用下面的下载地址:

wget -c --no-check-certificate ftp://ftp.pbone.net/mirror/dl.iuscommunity.org/pub/ius/stable/Redhat/5/x86_64/
  -- expat2-2.0.1-1.ius.el5.x86_64.rpm  
  -- python27-2.7.3-19.ius.el5.x86_64.rpm
  -- python27-libs-2.7.3-19.ius.el5.x86_64.rpm
  -- tkinter27-2.7.3-19.ius.el5.x86_64.rpm
  -- python27-devel-2.7.3-19.ius.el5.x86_64.rpm

2)然后以下面的次序安装

# rpm -ivh python27-libs-2.7.3-6.2.el6.nux.x86_64.rpm
# rpm -ivh python27-2.7.3-6.2.el6.nux.x86_64.rpm
# yum install tix
# rpm -ivh tkinter27-2.7.3-6.2.el6.nux.x86_64.rpm
# rpm -ivh python27-devel-2.7.3-6.2.el6.nux.x86_64.rpm

3) 测试是否组件可用

# python2.7 -c "import zlib, sqlite3 ssl"

2 安装python-inotify

这个是对文件目录变化实时监控的组件。python-inotify 依赖 pathlib。

$ wget --no-check-certificate https://pypi.python.org/packages/source/p/pathlib/pathlib-1.0.1.tar.gz
$ wget --no-check-certificate https://bitbucket.org/JanKanis/python-inotify/get/2193c8bdeb3b.zip

1) python-inotify需要安装gcc-c++

# yum install gcc-c++

2) 然后进入pathlib目录,执行:

# python2.7 setup.py build
# python2.7 setup.py install

3) 和JanKanis-python-inotify-2193c8bdeb3b目录

需要把./inotify/_inotify.c的开头添加下面的代码:

/* _inotify.c */
...
/* Exclude events on unlinked objects. */
#ifndef IN_EXCL_UNLINK
#  define IN_EXCL_UNLINK  0x04000000
#endif

然后执行:

# python2.7 setup.py build
# python2.7 setup.py install

4) 测试python-inotify

# python2.7 examples/simple.py

在/tmp下面写个文件看看!

--------------------------------------------------------------------------------------

如果升级之后, yum不可用,可以rpm安装python2.6.6, 参考:

http://www.linuxidc.com/Linux/2013-05/84727.htm

RHEL6.4上升级python从2.6.6到2.7.3的更多相关文章

  1. RHEL6.5上升级OpenSSH7.4p1

    由于升级OpenSSH涉及到安全性问题,为保险起见,在升级前最好安装telnet服务作为备用方案,然后在升级成功后再停止telnet即可. 一.OpenSSH升级相关源码包下载地址 zlib  htt ...

  2. MAC 上升级python为最新版本

    第1步:下载Python3.4 下载地址如下: 下载Mac OS X 64-bit/32-bit installer https://www.python.org/downloads/release/ ...

  3. 在Ubuntu上升级SQLite,并让Python使用新版SQLite

    (本文适用于Debian系的Linux,如Ubuntu.Raspbian等等.) 在Linux上,Python的sqlite3模块使用系统自带的SQLite引擎,然而系统自带的SQLite可能版本太老 ...

  4. centos6.5升级python为2.7

    今天线上服务器全部升级python环境为python-2.7.6的环境,我采用的方法是ansible+shell,代码如下,友提,Python-2.7.6.tgz.setuptools-14.3.1. ...

  5. 解决删除/升级Python导致Ubuuntu无法进入桌面的问题

    找到问题的原因后于是换个思路,想大概修复了python,Ubuntu进入桌面应该也就没啥问题了.于是重新安装Python发现还是无济于事.也通过/usr/bin/python: can't find ...

  6. CentOS 5升级Python版本(2.4>2.7)

    安装SALT时,需要这样作,公司有一批REDHAT5的,弄起来... 然后却是: Missing Dependency: python(abi) = 2.6 is needed by package ...

  7. 升级python的sqlite库版本

    今天了解了一下用python获取chrome cookie信息,在研究的过程中,发现打开数据库失败,后来调查了一下发现是由于sqlite3库太老的缘故,起码需要3.8以上,然后看了一下python 2 ...

  8. anaconda 环境新建/删除/拷贝 jupyter notebook上使用python虚拟环境 TensorFlow

    naconda修改国内镜像源 国外网络有时太慢,可以通过配置把下载源改为国内的通过 conda config 命令生成配置文件,这里使用清华的镜像: https://mirrors.tuna.tsin ...

  9. 如何在已安装Python解释器的Linux上更新Python

    在Linux环境下升级Python (附:解决pip报错 subprocess.CalledProcessError: Command '('lsb_release', '-a')' returned ...

随机推荐

  1. Sencha EXTJS6的 Eclipse 插件安装指南

    Sencha EXTJS的 Eclipse 插件安装指南 (翻译:苏生米沿) 本文地址:http://blog.csdn.net/sushengmiyan/article/details/52566 ...

  2. Android属性动画完全解析(中),ValueAnimator和ObjectAnimator的高级用法

    转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/43536355 大家好,在上一篇文章当中,我们学习了Android属性动画的基本用法 ...

  3. Android开发使用Java8新特性

    Android 支持所有 Java 7 语言功能,以及一部分 Java 8 语言功能(具体因平台版本而异).本文介绍您可以使用的新语言功能.如何正确配置项目以使用这些功能,以及您可能遇到的任何已知问题 ...

  4. Support Annotation Library使用详解

    概述 Support Annotation Library是在Android Support Library19.1版本开始引入的一个全新的函数包,它包含了诸多有用的元注解.用来帮助开发者在编译期间发 ...

  5. MongoDb 用 mapreduce 统计留存率

    MongoDb 用 mapreduce 统计留存率(金庆的专栏)留存的定义采用的是新增账号第X日:某日新增的账号中,在新增日后第X日有登录行为记为留存 输出如下:(类同友盟的留存率显示)留存用户注册时 ...

  6. 一个整数数组,长度为n,将其分为m份,使各份的和相等,求m的最大值。

    比如{3,2,4,3,6} 可以分成 {3,2,4,3,6} m=1; {3,6}{2,4,3} m=2 {3,3}{2,4}{6} m=3 所以m的最大值为3. bool isShare(int* ...

  7. 学习Android路上的一些感慨和总结,慢慢来,比较快!

    学习Android路上的一些感慨和总结,慢慢来,比较快! 一直想对自己的学习路程做一个总结,来告别某一个阶段的过去,迎接某一个阶段的来临,一直抽不出时间来,于是零零散散的写了点-,到现在,也已经积攒了 ...

  8. Markdown-----Markdown使用文档

    最近才接触Markdown,为了快速记忆,整理了这个文档,欢迎补充. Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和图片上传 LaTex数学公式 UML序列图和流程图 离线写 ...

  9. 分布式缓存GemFire架构介绍

    1什么是GemFire GemFire是一个位于应用集群和后端数据源之间的高性能.分布式的操作数据(operational data)管理基础架构.它提供了低延迟.高吞吐量的数据共享和事件分发.Gem ...

  10. 1076. Forwards on Weibo (30) - 记录层的BFS改进

    题目如下: Weibo is known as the Chinese version of Twitter. One user on Weibo may have many followers, a ...