由于CentOS6.8里自带的yum所依赖的python是2.6.66版本,但是安装pip至少要求python是2.7版本,因而原有的2.6并不能卸载,又得安装新的2.7.之前安装的时候强制卸载了2.6导致无法识别yum模块,进而又重新安装了一遍yum。第一部分是介绍了正常情况下安装python2.7,第二部分是安装pip,第三部分是重新安装yum的步骤以及相关可能出现的问题。

  一,安装python2.7

  参考博客:

  CentOS 6.9安装Python2.7.13 - 特里 - 博客园, 

  CentOS升级Python2.6到Python2.7并安装pip - SXY的博客 - CSDN博客

  在centos6.5环境下搭建多版本python(python2.6、python2.7、python3.5)共存环境

  (关于这个方法,我能找到的最初的博客是这个,但可惜已经打不开了。)

  ①查看系统版本以及python版本号

cat /etc/redhat-release
python -V

  ②安装配置环境

  为了防止后面提醒缺少东西,就先把这些安装上

yum -y update
yum groupinstall 'Development Tools'
yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel expat-devel

  特别说明一下,如果zlib-devel没安装的话,后面安装pip会有一个关于zlib的报错。同样要是openssl-devel没安装,会有WARNING - [xxxx] Load Crypto.Cipher.ARC4 Failed, Use Pure Python Instead.类似的报错。

 ③安装python

  python最新版本下载地址:https://www.python.org/downloads/

  python2.7.15下载地址:https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tgz

wget https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tgz
tar -zxvf Python-2.7.15.tgz
cd Python-2.7.15
./configure --prefix=/usr/local
make all
make altinstall
make clean

  这里用的是make altinstall,是为了不影响原有的python,但是我安装的时候用的是make install,后面也没什么影响。

ln -s /usr/local/bin/python2.7 /usr/bin/python

  将链接指向新的版本。再次查询的python版本的时候应该就是2.7.15了

  ④解决yum的问题

vi /usr/bin/yum

  将第一行  #!/usr/bin/python  改为 #!/usr/bin/python2.6

  这样yum也能照常用了。

  二,安装pip

  参考网站:Installation — pip 18.1 documentation

  之前根据前面参考博客中的方法,使用setuptools安装pip,并没有成功,因而这个就不再安装setuptools了。这里用官方给的方法就行。

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py

  我在这遇到了ssl的问题,导致在安装完openssl后,又重装了一次python,并且配置命令改成了

./configure --with-ssl

  其他的一些问题官网也有介绍。

  三、安装yum

  参考博客:centos 卸载python和yum之后的解决办法 - 风雪之殇 - 博客园

  由于之前的失误卸载了python2.6,导致没法使用yum。我试了下,哪怕重新装会python2.6也没用。出现的问题和上面博客中提及的一样。no module named yum。

  ①卸载python与yum

rpm -qa|grep python|xargs rpm -e --allmatches --nodeps
whereis python|xargs rm -fr rpm -qa|grep yum|xargs rpm -e --allmatches --nodeps
rm -rf /etc/yum.repos.d/*
whereis yum|xargs rm -fr

  ②安装python

  在参考博客里面给出的镜像站中,现在已经不再提供6.9及其以前的rpm包了,推荐使用这个:http://vault.centos.org/6.8/os/x86_64/Packages/ 。其中6.8为centos的版本号,x86_64为64位系统

mkdir /usr/local/src/python
cd /usr/local/src/python
wget http://vault.centos.org/6.8/os/x86_64/Packages/python-2.6.6-64.el6.x86_64.rpm
wget http://vault.centos.org/6.8/os/x86_64/Packages/python-iniparse-0.3.1-2.1.el6.noarch.rpm
wget http://vault.centos.org/6.8/os/x86_64/Packages/python-pycurl-7.19.0-9.el6.x86_64.rpm
wget http://vault.centos.org/6.8/os/x86_64/Packages/python-devel-2.6.6-64.el6.x86_64.rpm
wget http://vault.centos.org/6.8/os/x86_64/Packages/python-libs-2.6.6-64.el6.x86_64.rpm
wget http://vault.centos.org/6.8/os/x86_64/Packages/python-urlgrabber-3.9.1-11.el6.noarch.rpm
wget http://vault.centos.org/6.8/os/x86_64/Packages/rpm-python-4.8.0-55.el6.x86_64.rpm
rpm -ivh python-*   rpm-python-* 

  这有可能有已经安装的包有了依赖关系,只需要卸载了重装就好,具体的看参考博客,我没遇到就不写了。

  ③安装yum

mkdir /usr/local/src/yum
cd /usr/local/src/yum wget http://vault.centos.org/6.8/os/x86_64/Packages/yum-3.2.29-73.el6.centos.noarch.rpm
wget http://vault.centos.org/6.8/os/x86_64/Packages/yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
wget http://vault.centos.org/6.8/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.30-37.el6.noarch.rpm
rpm -ivh yum-*

  ④测试

yum

  显示出命令列表就可以了

  四、总结

  这样应该就没什么了。网络上给了乱七八糟的各种各样的,总有一款适合你。

CentOS6.8 安装python2.7,pip以及yum的更多相关文章

  1. CentOS6.5 安装Python2.7后, yum出现“No module named yum”错误

    安装如下方法安装python2.7: yum install –y python27 python27-devel python-docutils cd /usr/bin/ rm -rf python ...

  2. centos6.8 安装Python2.7后, yum出现“No module named yum”错误

    出现yum错误:No module named yum 解决方法,查看 /usr/bin下python有哪几个版本 ll /usr/bin 我这里是:2.6  和  2.7 (刚安装的) 由于yum命 ...

  3. CentOS6.9重新安装python2.6.6和yum

    CentOS6.9重新安装python2.6.6和yum 本文转载自昔日暖阳,原文地址:http://www.osheep.cn/4801.html 最近为了部署一个Python应用到腾讯云服务器,强 ...

  4. CentOS6.5安装Python2.7和Pip

    注:文中所写的安装过程均在CentOS6.5 x86下通过测试,安装的Python版本为2.7.12,Pip版本为8.1.2 主要参考博文:http://bicofino.io/2014/01/16/ ...

  5. 【Linux】 CentOS6.5安装Python2.7以及pip等工具

    原文地址 CentOS6.5下是原来就有python的,我的镜像里面自带的python版本是2.6.6.如果想要自己更新一个更加新的python版本可以这么做: 安装python2.7安装包. 从官网 ...

  6. centos6.5安装python2.7、pip、numpy、scipy

    1..安装Development Tools yum groupinstall -y 'development tools' 2.安装SSL.bz2.zlib来为Python的安装做好准备工作 yum ...

  7. Centos6.5安装python2.7与pip

    安装Python2.7 安装环境 [root@localhost1 ~]# cat /etc/redhat-release CentOS release 6.5 (Final) [root@local ...

  8. Centos6.5安装Python2.7.9

    1. 问题背景 Centos6.5默认自带的python环境是2.6.6,python的一些特性没法使用,所以要对python进行升级,借鉴了网上其他同学的安装教程,但是还是遇到一些坑,不是那木顺利, ...

  9. centos6.3安装python2.7, pip2.7, mysql

    参考: https://github.com/h2oai/h2o-2/wiki/Installing-python-2.7-on-centos-6.3.-Follow-this-sequence-ex ...

随机推荐

  1. Java与设计模式-适配器模式

    适配器模式是开发中常常会用到的模式,Android开发中常常常使用到的各种adapter就属于适配器模式,连接各种数据库时也要用到适配器模式. 适配器模式在生活中的实例也随处可见,你托人在日本买了个电 ...

  2. js添加页面元素

    js动态创建html元素需要使用到下面这些常见的js方法. getElementById();//返回带有指定 ID 的元素. getElementsByTagName();//返回包含带有指定标签名 ...

  3. Robot Framework 搭建和RIDE(GUI) 的环境

    在windows x64的环境上进行安装,集成Selenium2和AutoIt的libraries,以下安装步骤在win 7,win 8.1,win 10, win 2012 R2上测试通过 1. 下 ...

  4. PCB Genesis 外形加内角孔实现方法

    在PCB工程制作CAM时,经常会遇到外形拐角处直角的,而客户对内角是要求,比如最大内角要求R0.5mm或者不接受内角, 但成型方式为铣方式,又不是啤板成型,那怎么处理才可以达到要求效果呢,在这里介绍2 ...

  5. [Apple开发者帐户帮助]六、配置应用服务(5.3)推送通知(APN):从您的Web服务器发送推送通知

    要使用APN从Web服务器向macOS用户发送推送通知,请注册网站推送标识符并创建网站推送证书. 对于每个网站,请注册一个网站推送标识符,用于验证通知是否来自您的服务器.然后创建一个网站推送证书以签署 ...

  6. [Swift通天遁地]三、手势与图表-(2)监听手势事件自由拖动图像视图

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  7. 微信小程序调用微信支付

    1,首先我们先缕清支付的整个流程,详见https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=7_4&index=3,第一 ...

  8. 微信小程序后台获取用户的opeid

    1.微信小程序后台获取登录用户的openid,首先微信小程序将code传给后台服务器 wx.login({ success: function (res) { var code = res.code ...

  9. android:autoLink

    android:autoLink 显示URL链接 TextView识别链接的方式有两种,一种是自动识别链接和HTML解析链接 1)自动识别链接 <!-- android:autoLink=&qu ...

  10. c的二级指针

    ----"c 语言的精华在于指针的灵活性.学好指针的目的在于尽可能少的使用指针." 在敲binary search tree(二叉查找树),遇到了问题.在删除的时候,如果删除的是r ...