CentOS6.5下是原来就有python的,我的镜像里面自带的python版本是2.6.6.如果想要自己更新一个更加新的python版本可以这么做:

安装python2.7安装包。

从官网下载python2.7.13的安装包。

https://www.python.org/download/releases/2.7.13。

解压后做以下几步:

(1) ./configure    --prefix=/usr/local/pyton2.7(这里填写自己的安装目录,默认确实就是这个目录)。

(2)执行make命令操作  对源码进行编译。

(3)执行make install 进行安装。

(4)执行make clean 清除安装时生成的临时编译文件

如果没报错就代表 python2.7已经安装到了你的服务器上。

在终端输入python命令,会发现系统原有版本为2.6,并没有使用我们的2.7版本。

这是你可以用which python命令查看该python命令调用的是那个位置的python,一般情况下在/usr/bin/python 这里。但是这里的python指向的系统自带的2.6版本。而我们安装的python2.7的命令在/usr/local/bin/python(前边的路径要根据你的安装路径确定)这里。我们可以把/usr/bin/python 备份成其他名字:cp /usr/bin/python /usr/bin/python。然后做个软连接  ln -s /usr/local/bin/python /usr/bin/python。这个时候 我们再一次在终端输入python命令已经成了2.7版本。

这时候你输入 yum install xxxx  会提示你yum模块找不到。

其实 yum 是依赖原来的python 的。当我们修改了原有的python版本之后这个yum会调用我们的2.7版本的python,而我们2.7版本没有yum就会报错。我们只需要 用 which yum 找到yum的地址,然后 编辑yum文件,然后把文件首行的#!/usr/bin/python 改成#!/usr/bin/python2.6  (其实在/usr/bin下边依然是有python2.6这个文件的)。这样子yum就又可以使用了。

###########我靠,这哥们跟我在笔记上写的几乎一模一样。。。思わず抄过来了###########

安装pip和setuptools

  (根据经验一个新系统往往没有zlib-devel,openssl-devel这些包,请确保zlib,zlib-devel,openssl,openssl-devel四个包都在才能确保setuptools和pip的顺利安装)

  本来没想搞setuptools的,但是难得记录一下,就干脆乘此机会搞清楚这两个东西之间的关系。setuptools是一个python基础包的管理工具,用它可以对python的第三方包进行安装,升级,卸载等等操作。当我们的python还没安装第三方工具时我们可以通过源码包的方式来安装setuptools。请注意,这个源码包不是C源码而是python源码,也就是说安装套路不是./configure make那一套,而是要python setup.py build再install那一套。(在安装setuptools的过程可能会遇到很多很多依赖包不存在的问题。。最笨的办法,上https://pypi.python.org/pypi一个个搜一个个用python setup.py build再install的套路装)

  安装完成之后linux的话会在PATH中有一个easy_install的命令,而windows会在python的根目录的Scripts文件夹中出现一个easy_install.exe的文件(这些都是我自己的感知,肯定有更准确的描述只是我不知道。。)。运行这两个可执行程序就可以安装python需要的一些东西了。比如我们可以用easy_install来装pip。另外,在linux上的安装过程中可能会遇到没有zlib包的错误(根据原博文的描述),其实是要求linux上要有zlib和zlib-devel两个包,看看哪个少了rpm看一下即可。安装完之后需要重新编译安装python一下。

  pip和setuptools极其类似(似乎是这样),也是一个方便的python模块管理工具。除了刚才提到的通过setuptools来安装外,当然也可以用源码安装。套路和setuptools基本上是一样的,只不过pip源码安装也是需要setuptools的支持,所以还是一定要先装setuptools的。pip安装成功之后可能无法通过pip install来装python模块,报错的如果是跟https,ssl什么的相关的话,可能是因为linux系统没有安装openssl-devel包,和zlib-devel一样,用yum安装完成之后要重新编译安装下python,再重新安装下pip。此时pip应该就可以安装python模块了。

  就我个人而言,我一直习惯用的是pip。pip用法非常简单,在命令行键入pip如果没报错就是安装成功了,安装模块时只需要pip install xxx,如pip install bs4, pip install requests等,pip会自动安装所有这些模块的依赖包以确保一站式模块安装。即装即用。

【Linux】 CentOS6.5安装Python2.7以及pip等工具的更多相关文章

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

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

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

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

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

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

  4. CentOS6.8 安装python2.7,pip以及yum

    由于CentOS6.8里自带的yum所依赖的python是2.6.66版本,但是安装pip至少要求python是2.7版本,因而原有的2.6并不能卸载,又得安装新的2.7.之前安装的时候强制卸载了2. ...

  5. CentOS 6.5上安装python2.7、pip以及Python命令行补全和yum冲突解决

    目前CentOS6.5上自带的python版本为2.6,升级到python2.7会碰到很多问题.本文将介绍如何安装python2.7.pip以及python命令行补全. 一.如何安装python2.7 ...

  6. CentOS6.5上安装Python2.7和PIP

    目前大部分用户使用的CentOS6.5上默认的Python还是2.6版本.升级到Python2.7碰到很多问题.本文将介绍如何安装Python2.7. 1. 安装必要的准备包 安装过程将用到gcc,方 ...

  7. Centos6.5安装Python2.7.9

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

  8. 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 ...

  9. Linux(CentOS6.7) 安装MySql5.7数据库

    linux(CentOS6.7) 环境Mysql 5.7.17安装教程分享给大家,供大家参考,具体内容如下: 1系统约定安装文件下载目录:/data/softwareMysql目录安装位置:/usr/ ...

随机推荐

  1. 一句Python,一句R︱数据的合并、分组、排序、翻转

    先学了R,最近刚刚上手python,所以想着将python和R结合起来互相对比来更好理解python.最好就是一句python,对应写一句R. python中的numpy模块相当于R中的matirx矩 ...

  2. R语言与格式、日期格式、格式转化

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- R语言的基础包中提供了两种类型的时间数据,一类 ...

  3. Unhandled event loop exception No more handles

    1.错误描述 2.错误原因 3.解决办法

  4. org.hibernate.TransientObjectException:The given object has a null identifier

    1.错误描述 org.hibernate.TransientObjectException:The given object has a null identifier:com.you.model.U ...

  5. 简单bfs(hdu2612)

    #include<stdio.h>#include<string.h>#include<queue>#define INF 0x3f3f3f3fusing name ...

  6. 畅通工程 HDU - 1863

    省政府"畅通工程"的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可).经过调查评估,得到的统计表中列出了有可能建设公路的若干条道 ...

  7. 网络协议笔记-网络层-ARP协议

    [2-地址解析协议ARP] [2.1-基本概念] 地址解析协议ARP的作用是根据主机的IP地址,找出该主机的硬件地址. [2.2-为什么要使用ARP] 在数据传输过程中,网络层使用的IP地址,但是在实 ...

  8. 外网如何访问 Service?- 每天5分钟玩转 Docker 容器技术(139)

    除了 Cluster 内部可以访问 Service,很多情况我们也希望应用的 Service 能够暴露给 Cluster 外部.Kubernetes 提供了多种类型的 Service,默认是 Clus ...

  9. 反射(C#编程)

    反射提供了封装程序集.模块和类型的对象(Type 类型).可以使用反射动态创建类型的实例,将类型绑定到现有对象,或从现有对象获取类型并调用其方法或访问其字段和属性.如果代码中使用了属性,可以利用反射对 ...

  10. 【转载】Spark学习——spark中的几个概念的理解及参数配置

    首先是一张Spark的部署图: 节点类型有: 1. master 节点: 常驻master进程,负责管理全部worker节点.2. worker 节点: 常驻worker进程,负责管理executor ...