这里记录一下linux 系统升级python对yum带来影响的解决办法

  很多人在使用linux系统执行python任务的时候需要升级linux系统自带的python到高级版本。具体如何升级python这里就不做介绍了。简单说一下,一般重源码编译安装高版本的python,如果不指定安装目录,就不会覆盖系统的原生python,这里升级之后就可以通过ln -s的方式把新版本声明到系统里。系统里就可以使用新版本的当作默认环境。如果指定了安装目录对原生进行覆盖就直接将新版本声明到系统,并且成了默认的python环境。

  升级python之后yum随之就出现问题了。非覆盖安装的比较容易解决,只需要将/usr/bin/yum 文件的shebang中python改成python2.6(或系统原先老版本号)就可以了。网上搜索python升级yum问题的时候大多也都是这个方案文档。但是这个方法并不适用于覆盖安装的方法。

  覆盖安装的解决方法稍微复杂一点。需要将yum依赖的库文件从老的环境里安装到新环境中。这个需要提前重老版本中备份出来。如果没有备份也可使用其他正常机器上的这几个文件。

  直接将这几个目录文件复制到现在新python 环境中的lib库目录下即可。

  依赖如下:

      rpm*,urlgrabber*,pycurl,sqlite*,sqlitecachec*

      这些依赖都在/usr/lib/python/site-packages和/usr/lib64/python/site-packages以及/usr/lib64/python/lib-dynload目录中。

      sqlite是_sqlite.so一个文件在lib-dynload下,sqlitecache中有一个_sqlitecachec.so和其他sqlitecachec*文件在site-packages目录下

      rpm和urlgrabber都是多个目录ls | grep rpm 出现的都是需要的依赖不可缺少。在site-packages目录下

      pycurl 可以直接使用easy_install 安装

   

  上述方法在2.6到2.7升级,以及2.7到其他2.7版本升级中测试可以解决yum不可用问题。此外的版本并未测试,不知道是否有效。

linux 升级yum对应的python的更多相关文章

  1. Linux升级python3之后yum不能正常使用解决方法一:重新配置yum源

    [转]linux下yum安装及配置 分步阅读 公司使用的是linux搭建服务器,linux安装软件能够使用yum安装依赖包是一件非常简单而幸福的事情,所以这里简单介绍一下linux安装yum源流程和操 ...

  2. Linux yum的配置 , python环境管理, nginx搭建简单学习

    Linux yum的配置 , python环境管理, nginx搭建简单学习 一丶配置yum的数据仓库 ### yum 工具, 方便,自行解决软件之间的依赖关系. # 配置yum源仓库 (可以使用,清 ...

  3. Linux升级命令yum upgrade和yum update的区别

    Linux升级命令有两个分别是yum upgrade和yum update, 这个两个命令是有区别的: yum -y update 升级所有包同时也升级软件和系统内核 yum -y upgrade 只 ...

  4. linux更换yum源

    由于 redhat的yum在线更新是收费的,如果没有注册的话不能使用,如果要使用,需将redhat的yum卸载后,重启安装,再配置其他源,以下为详细过程: 1.删除redhat原有的yum rpm - ...

  5. linux中yum命令的解析

    yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...

  6. 【Linux】YUM Repositories for CentOS, RHEL & Fedora Systems

    这里是官方wiki:https://wiki.centos.org/AdditionalResources/Repositories 一.简介 YUM(Yellowdog Updater Modifi ...

  7. [Linux] 025 yum 命令

    1. 常用 yum 命令 (1) 查询 查询所有可用软件包列表 $ yum list 搜索服务器上所有和关键字相关的包 $ yum search 关键字 ps 有点像 Python 的 pip lis ...

  8. 【转】linux和windows下安装python集成开发环境及其python包

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

  9. Linux CentOS 编绎安装Python 3.5

    Linux CentOS 编绎安装Python 3.5 先决条件(若无安装,则不能编绎使用idle3):yum install tk-devel xz -d Python-3.5.0.tar.xzta ...

随机推荐

  1. [刷题]算法竞赛入门经典(第2版) 4-2/UVa201 - Squares

    书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 代码:(Accepted,20 ms) #include<iostream> #include<cs ...

  2. maven(03)

    修改本地库路径 windows下maven默认路径应该是${user.home}/.m2/repository 修改方法:找到maven安装的根路径,里面有一个conf的文件夹,打开里面有一个sett ...

  3. java内存模型7-处理器内存模型

    处理器内存模型 顺序一致性内存模型是一个理论参考模型,JMM和处理器内存模型在设计时通常会把顺序一致性内存模型作为参照.JMM和处理器内存模型在设计时会对顺序一致性模型做一些放松,因为如果完全按照顺序 ...

  4. Promise简介

    Promise是ES6中的函数,规范了如何处理异步任务的回调函数,功能类似于jQuery的defferred.简单说就是通过promise对象的不同状态调用不同的回调函数.目前IE8及以下不支持,其他 ...

  5. Java基础知识二次学习-- 第一章 java基础

    基础知识有时候感觉时间长似乎有点生疏,正好这几天有时间有机会,就决定重新做一轮二次学习,挑重避轻 回过头来重新整理基础知识,能收获到之前不少遗漏的,所以这一次就称作查漏补缺吧!废话不多说,开始! 第一 ...

  6. 【shell脚本实例】shell脚本统计单词频率、出现次数最多的n个单词

    1. 统计的对象words.txt,每个单词占一行(从简考虑了~) zjd@ubuntu:~/test$ cat word.txt used this count mysql count this u ...

  7. 矢量量化(VQ)

    作者:桂. 时间:2017-05-31  21:14:56 链接:http://www.cnblogs.com/xingshansi/p/6925955.html 前言 VQ(Vector Quant ...

  8. PHP版本替换, phpinfo和php -v显示版本信息不一致

    环境:OS X EI Capitan 10.11 & lnmp 背景: 1想将lamp(xampp安装的,php5.2)换成 lnmp(php7.0)   2php5.2卸载(xampp卸载& ...

  9. Docker-compose实战——Django+PostgreSQL

    今天我们来用docker-compose 快速安装一个Django+PostgreSQL的开发环境. Compose简介 Compose 定位是“defining and running comple ...

  10. laytpl : 一款非常轻量的JavaScript模板引擎

    //假设你得到了这么一段数据 var data = { title: '前端圈', intro: '一群码js的骚年,幻想改变世界,却被世界改变.', list: [{name: '贤心', city ...