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. Openstack: MP-BIOS bug: 8254 timer not connected to IO-APIC

    Issue: After you import an linux image into openstack and run an instance of it, you may find that t ...

  2. Programming In Scala笔记-第十一章、Scala中的类继承关系

    本章主要从整体层面了解Scala中的类层级关系. 一.Scala的类层级 在Java中Object类是所有类的最终父类,其他所有类都直接或间接的继承了Object类.在Scala中所有类的最终父类为A ...

  3. Django项目实践4 - Django站点管理(后台管理员)

    http://blog.csdn.net/pipisorry/article/details/45079751 上篇:Django项目实践3 - Django模型 Introduction 对于某一类 ...

  4. WmS详解(二)之如何理解Window和窗口的关系?基于Android7.0源码

    上篇博客(WmS详解(一)之token到底是什么?基于Android7.0源码)中我们简要介绍了token的作用,这里涉及到的概念非常多,其中出现频率最高的要数Window和窗口这一对搭档了,那么我们 ...

  5. [文摘]Quick Start to Client side COM and Python

    摘自:PyWin32.chm Introduction This documents how to quickly start using COM from Python. It is not a t ...

  6. java类加载器——ClassLoader

    Java的设计初衷是主要面向嵌入式领域,对于自定义的一些类,考虑使用依需求加载原则,即在程序使用到时才加载类,节省内存消耗,这时即可通过类加载器来动态加载. 如果你平时只是做web开发,那应该很少会跟 ...

  7. MapReduce:并行计算框架

    MapReduce 是 Hadoop 的核心组成,是专用于进行数据计算的.重点掌握实现 MapReduce 算法的步骤,掌握 map.reduce 函数的特点.如何写函数. 如果我们把 MapRedu ...

  8. Java基本语法-----java二维数组

    由于word里的样式在csdn上调太麻烦了,所以我再次贴图了,后面二维数组那里是文字的,大家将就看吧. 二维数组常见的操作: 1.遍历二维数组 2.对二维数组求和 class Demo { // 定义 ...

  9. Android简易实战教程--第二十五话《网络图片查看器》

    访问网络已经有了很成熟的框架.这一篇只是介绍一下HttpURLConnection的简单用法,以及里面的"注意点".这一篇可以复习或者学习HttpURLConnection.han ...

  10. 14 fragment 创建

    静态展示 注意 静态的开始进入界面的生命周期和动态的不同 详情:14 fragment注意点 步骤一:创建一个类继承 Fragment 代码类型一: package com.fmy.demo1; im ...