一、2.6升级2.7

CentOS 6 系统默认 Python 版本是:2.6.6 平时在使用中遇到很多的库要求是 2.7.x 版本的库,比如使用 ConfigParser 库,在 2.6 版本库就不支持没有 value 值的配置项,需要升级到 2.7 以上的库才行,这次就尝试升级一下 Python 到 2.7.x 版本,记录于此。

1. 准备安装包,系统是最小化安装

# 下载安装依赖的相关包
[root@vip ~]# yum install vim gcc make wget -y
[root@vip ~]# yum install openssl-devel zlib-devel readline-devel sqlite-devel -y

# 下载
[root@vip ~]# cd /usr/local/src
[root@vip ~]# wget https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz
# 解压
[root@vip ~]# tar -zxvf Python-2.7.10.tgz
[root@vip ~]# ls
Python-2.7.10  Python-2.7.10.tgz

2. 编译配置安装

[root@vip ~]# cd Python-2.7.10
[root@vip Python-2.7.10]# ./configure --enable-shared --enable-loadable-sqlite-extensions \ --prefix=/usr/local/python27 --with-zlib --with-ssl      #这和上面是一条命令
[root@vip Python-2.7.10]# vim ./Modules/Setup    # 找到下边这一行内容,去掉注释
#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
[root@vip Python-2.7.10]# make && make install

3. 查看 python 版本信息

[root@vip Python-2.7.10]# python -V
Python 2.6.6
# 版本依旧是 2.6.6

4. 用 python2.7 替换旧版本

[root@vip Python-2.7.10]# cd /usr/bin/
[root@vip bin]# ls python* -l   # 旧 python 版本信息
-rwxr-xr-x. 2 root root 4864 2月  22 2013  python
lrwxrwxrwx. 1 root root    6 10月 22 18:38 python2 -> python
-rwxr-xr-x. 2 root root 4864 2月  22 2013  python2.6
[root@vip bin]# mv /usr/bin/python /usr/bin/python2.6.6
[root@vip bin]# ln -s /usr/local/python27/bin/python2.7 /usr/bin/python
[root@vip bin]# ls python* -l
lrwxrwxrwx. 1 root root   33 10月 23 00:01 python -> /usr/local/python27/bin/python2.7
lrwxrwxrwx. 1 root root    6 10月 22 18:38 python2 -> python
-rwxr-xr-x. 2 root root 4864 2月  22 2013 python2.6
-rwxr-xr-x. 2 root root 4864 2月  22 2013 python2.6.6

5. 重新验证 Python 版本信息

[root@vip bin]# python -V
Python 2.7.10
可以看到,系统识别的 python 版本已经是 python 2.7.10

执行 python -V 遇到的问题:

python: error while loading shared libraries: libpython2.7.so.1.0: cannot open shared object file: No such file or directory
# 原因:linux系统默认没有把/usr/local/python27/lib路径加入动态库搜索路径
解决:

[root@vip ~]# vim /etc/ld.so.conf
# 添加如下一行内容
/usr/local/python27/lib
[root@vip ~]# ldconfig  # 使新添加的路径生效

二、解决 yum 兼容性问题

因为 yum 是不兼容 Python 2.7 的,所以 yum 不能正常工作,我们需要指定 yum 的 Python 为 2.6。

1. 升级 python 后 yum 出现的问题

[root@vip bin]# yum 
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:
 No module named yum
... ... ... ...

2. 编辑 yum 配置文件

[root@vip bin]# vim /usr/bin/yum
#!/usr/bin/python
# 第一行修改为 python2.6.6
#!/usr/bin/python2.6.6

3. 验证 yum 问题解决

[root@vip bin]# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
... ... ... ...

三、升级 python 后,安装 pip 工具

1. 下载安装

[root@vip ~]# wget https://bootstrap.pypa.io/get-pip.py
[root@vip ~]# python get-pip.py

2. 设置软连接

[root@vip ~]# ln -s /usr/local/python27/bin/pip2.7 /usr/bin/pip

四、安装 ipython

[root@vip ~]# pip install ipython==1.2.1
[root@vip ~]# ln -s /usr/local/python27/bin/ipython /usr/bin/ipython

关于Linux自带的python2.6.6升级到2.7.10版本步骤详解及pip、ipython的安装相关推荐

  1. MySQL安装教程包含所有平台(图解),MySQL下载步骤详解(带安装教程)

    现在作为服务器的操作系统一般有两种,分别是 Windows Server 和 Linux,这里我们分别介绍在 Windows 下和 Linux 下安装 MySQL 的具体操作步骤. MySQL安装教程 ...

  2. 阿里云主机Linux服务器配置步骤详解

    下面我们一起来看看关于阿里云主机Linux服务器配置步骤详解,如果你正在使用阿里云主机我们可进入参考一下配置步骤哦,有兴趣的同学可进入参考. 一提到云主机,大家肯定熟知国内最知名品牌--阿里云了,后来 ...

  3. linux内核移植与开发板,Linux 2.6.36内核移植飞凌OK6410开发板完整步骤详解

    Linux 2.6.36内核移植飞凌OK6410开发板完整步骤详解 [复制链接] 今天终于让Linux内核在飞凌的板子上跑起来了,想来也是艰辛,为了移植成功,断断续续做了将近两个月的努力,期间郁闷不可 ...

  4. linux centos7 mysql_Linux centos7环境下安装MySQL的步骤详解

    Linux centos7环境下安装MySQL的步骤详解 安装MySQL mysql 有两个跟windows不同的地方 1).my.ini 保存到/etc/my.ini 2).用户权限,单独用户执行 ...

  5. Linux用户、权限及改变文件所有者及文件所属组多例详解 附python代码

    https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注! 欢迎关注微信公众号:宝藏女孩的成长日记 如有转载,请注明出处(如不注明,盗者必究) Linux用户.权 ...

  6. mysql5.7.11 linux_CentOS 7 中以命令行方式安装 MySQL 5.7.11 for Linux Generic 二进制版本教程详解...

    MySQL 目前的最新版本是 5.7.11,在 Linux 下提供特定发行版安装包(如 .rpm)以及二进制通用版安装包(.tar.gz).一般情况下,很多项目都倾向于采用二进制通用安装包形式来进行安 ...

  7. linux安装Openssl步骤详解_问题:OpenSSL: error:100AE081:elliptic curve routines:EC_GROUP_new_by_curve_name:un

    linux上安装Openssl步骤详解 问题: OpenSSL: error:100AE081:elliptic curve routines:EC_GROUP_new_by_curve_name:u ...

  8. tecplot脚本在Linux系统下运行,Linux系统下安装Tecplot的步骤详解

    众所周知,Tecplot是Linux系统中的数据分析软件,Tecplot的功能正在变得更加完善,使用的人群也在逐渐增多.下面,我们就跟随U大侠小编一起来看看Linux系统下安装Tecplot的步骤详解 ...

  9. Linux系统安装oracle客户端步骤详解

    Linux系统安装oracle客户端步骤详解 项目需要在linux系统上安装oracle客户端访问windows下安装的数据库,所以写了这篇文章,在安装时候搜索了很多博客,但是我发现大部分都是有问题的 ...

最新文章

  1. mysql 压力测试脚本
  2. 基于Kmeans聚类算法的图像分割(色彩分割)实战
  3. RStudio版本号管理 整合Git
  4. document.body.offsetWidth 网页可见区域高宽,offset、client、scroll使用方法详解,页面位置距离
  5. 创建WCF第一个应用程序
  6. 分布式是什么意思_机架式ups是什么意思?与分布式DPS有何不同之处?
  7. 熊猫分发_熊猫新手:第一部分
  8. python中的iter()函数与next()函数
  9. 【VB.NET】VB.NET基本数据类型
  10. Intel(R) 处理器产品架构/微架构对照表
  11. git使用git push 命令跳出remote: Permission to Aname denied to usernameB 的问题
  12. 曼哈顿交易 - 题解
  13. 可以记录阅读进度的 pdf 电脑阅读器
  14. android开发图片格式,Android程序开发如何处理图像格式类及图像转换
  15. jemalloc 内存管理
  16. linux快速切换目录
  17. 如何进行美国站税务审核
  18. Linux虚拟机克隆后网络冲突解决办法
  19. caffe 损失函数
  20. 【电磁】基于Matlab模拟电偶极子电磁场附GUI界面

热门文章

  1. 转录组测序多少生物重复合适?2个?3个?48个?
  2. 如何进行Tuxera NTFS的挂载卷设置?实现MacOS对NTFS磁盘的完全读写功能
  3. 第十一届蓝桥杯青少组Python竞赛真题
  4. 有一个php的类库网站_可以composer下载的,composer轻量级的HTTP开发库
  5. 【分享-快速仿站】无敌超强仿站小工具一键下载
  6. ThinkPHP6项目基操(13.实战部分 项目中的自定义异常处理总结 错误页面API错误)
  7. mui 头部tab代码
  8. Leaflet工作笔记-多个标签在地图显示不关闭
  9. Qt|Http笔记-两种方式发送http协议数据,获取服务器数据(GET方法)
  10. Qt文档阅读笔记-Transformations解析及例子