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. NLP系列(4)_朴素贝叶斯实战与进阶

    作者: 寒小阳 && 龙心尘 时间:2016年2月. 出处:http://blog.csdn.net/han_xiaoyang/article/details/50629608 htt ...

  2. ngx.ctx

    https://github.com/openresty/lua-nginx-module#ngxctx 要点 生命周期和请求一致 每个请求的ngx.ctx是相互独立的,包括ngx.location. ...

  3. Programming In Scala笔记-第十七章、Scala中的集合类型

    本章主要介绍Scala中的集合类型,主要包括:Array, ListBuffer, Arraybuffer, Set, Map和Tuple. 一.序列 序列类型的对象中包含多个按顺序排列好的元素,可以 ...

  4. 搭建ejabberd集群

    搭建ejabberd集群(金庆的专栏 2016.8)以2台机器搭建一个ejabberd集群.2台机器都是外网一块网卡,内网另一块网卡.新建一个域名,添加2台机器的外网IP.分别用源码安装ejabber ...

  5. Servlet - 基础

    Servlet 标签 : Java与Web HTTP协议 HTTP(hypertext transport protocol),即超文本传输协议.这个协议详细规定了浏览器(Browser)和万维网服务 ...

  6. iOS下使状态栏颜色与H5中背景色一致

    iOS 中有的页面也能会内嵌WebView,然后WebView中用H5做了一个导航,而iOS 中状态栏的颜色很难调整的与H5中导航颜色一致.如下图所示: 其实出现这种原因,主要是因为使用16进制颜色, ...

  7. RxJava(三) flatMap操作符用法详解

    欢迎转载,转载请标明出处: http://blog.csdn.net/johnny901114/article/details/51532776 本文出自:[余志强的博客] flatMap操作符的作用 ...

  8. Java并发框架——AQS之原子性如何保证?

    在研究AQS框架时,会发现这个类很多地方都使用了CAS操作,在并发实现中CAS操作必须具备原子性,而且是硬件级别的原子性,java被隔离在硬件之上,明显力不从心,这时为了能直接操作操作系统层面,肯定要 ...

  9. Shell命令:echo 命令详解

    http://blog.chinaunix.net/uid-27124799-id-3383327.html # echo命令介绍 功能说明:显示文字. 语 法:echo [-ne][字符串] / e ...

  10. Dynamics CRM2011 在Visual Studio中开启Javascript的Xrm.Page智能提示

    前面一篇博文:http://blog.csdn.net/vic0228/article/details/49512699 讲到了在Visual Studio中开启xml编辑的智能提示,本篇接着来讲下如 ...