昨天把redmine的测试环境给搞Over了,想了下,干脆直接把环境给整成docker化的,配置环境的时候,安装docker-compose需要python2.7支持。

CentOS 6 系统默认 Python 版本是:2.6.6 ,需要升级到 2.7 以上的库才行,记录升级过程。

1. 准备系统安装包

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

  

#下载python包
# cd /usr/local/src
# wget https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz
# 解压
# tar -zxvf Python-2.7.10.tgz
# ls
Python-2.7.10 Python-2.7.10.tgz

  2. 编译配置安装

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

  3. 查看 python 版本信息

# python -V
Python 2.6.6
# 版本依旧是 2.6.6

  4. 用 python2.7 替换旧版本

# cd /usr/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 # mv /usr/bin/python /usr/bin/python2.6.6
# ln -s /usr/local/python27/bin/python2.7 /usr/bin/python # 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 版本信息

# 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路径加入动态库搜索路径

  解决:

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

  

解决 yum 兼容性问题

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

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

# 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 配置文件

# vim /usr/bin/yum
#!/usr/bin/python
# 第一行修改为 python2.6.6
#!/usr/bin/python2.6.6

  3. 验证 yum 问题解决

# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
... ... ... ...

  

升级 python 后,安装 pip 工具

  1、首先检查linux有没有安装python-pip包,终端执行 pip -V

# pip -V
-bash: pip: command not found

  2、没有python-pip包就执行命令 yum -y install epel-release

yum -y install epel-release

  

  3、执行成功之后,再次执行yum -y install python-pip

yum -y install python-pip

  

  4、对安装好的pip进行升级 pip install --upgrade pip

pip install --upgrade pip

  

  5、pip安装好了,执行pip -V 再次检查pip环境。

pip -V
pip 9.0.1 from /usr/lib/python2.7/site-packages (python 2.7)

  

  yun安装的pip无法使用?pip更新: 

 1. 下载安装

# wget https://bootstrap.pypa.io/get-pip.py
# python get-pip.py

  2. 设置软连接

# ln -s /usr/local/python27/bin/pip2.7 /usr/bin/pip

  

安装 ipython

# pip install ipython==1.2.1
# ln -s /usr/local/python27/bin/ipython /usr/bin/ipython

  

Centos 升级 python的更多相关文章

  1. liunx CentOS 升级Python版本

    CentOS python版本是V2.6.6,升级3.4.3. 1.下载 安装包:wget http://www.python.org/ftp/python/3.4.3/Python-3.4.3.tg ...

  2. centos升级python到2.7

    最近在阿里云租了一个云主机,打算部署自己的个人网站,但是centos系统的默认Python是2.6版本,打算升级到2.7.3! 查看python的版本 #python  -V Python 2.6.6 ...

  3. 【转】Centos升级Python 2.7.12并安装pip、ipython

    Centos系统一般默认就安装有Python2.6.6版本,不少软件需要2.7以上的,通过包管理工具安装不了最新的版本,通过源码编译可以方便安装指定版本,只需要把下面版本的数字换成你想要的版本号. 1 ...

  4. CentOS升级Python的方法

    centOS内核版本为:3.10.101-1.el6.elrepo.x86_64 1,下载Python安装包 wget http://www.python.org/ftp/python/2.7.6/P ...

  5. centos升级python(从2.6.6升级到2.7.8)

    ***先安装readline,否则升级后python回退和方向键不能使用 yum install readline-devel.x86_64   1.#wget www.python.org/ftp/ ...

  6. CentOS升级Python 2.6到2.7

    查看python的版本 python -V Python 2.6.6 下载Python   Python-2.7.8.tar.xz      链接:http://pan.baidu.com/s/1i4 ...

  7. Centos升级Python及pip

    因为CentOS系统中旧版本的Python已被深度依赖,所以不能卸载原有的Python,只能全新安装. 1.从官网下载: wget https://www.python.org/ftp/python/ ...

  8. centos 升级 python后 python-setuptools pip 安装依赖报错

    解决办法: $ wget https://svn.apache.org/repos/asf/oodt/tools/oodtsite.publisher/trunk/distribute_setup.p ...

  9. CentOS升级Python到2.7版本

    查看python的版本 1 python -V Python 2.4.3 1.先安装GCC 1 yum -y install gcc 2.下载Python-2.7.2 1 wget http://py ...

随机推荐

  1. html5 返回当前地理位置的坐标点(经纬度)

    BAIDU <!DOCTYPE html> <html> <body> <p id="demo">点击这个按钮,获得您的坐标:< ...

  2. Android开发学习笔记-自定义组合控件

    为了能让代码能够更多的复用,故使用组合控件.下面是我正在写的项目中用到的方法. 1.先写要组合的一些需要的控件,将其封装到一个布局xml布局文件中. <?xml version="1. ...

  3. Cannot retrieve the latest commit at this time.

    此时无法检索最新提交. GitHub页面上提示: Cannot retrieve the latest commit at this time. 还没更新的意思,等他更新就好了. 更新后:

  4. linux中如何对一个文件的内容进行处理,文件中每行有多个字段的值,中间用空格分隔开?

    需求描述: 今天在帮同事看个需求,将操作系统上的文件进行修改名字,改为特定的名字,所以呢,就先把这些原名字及对应的新名字关系放到了一个文本中,对于这个文本执行循环. 文件格式如下: .00000005 ...

  5. Python_selenium二次封装selenium的几个方法

    Python_selenium二次封装selenium的几个方法 将常用的几个webdriver方法封装到自己写的一个类中去,此实例中是将"浏览器后退.浏览器前进.打开站点和关闭浏览器&qu ...

  6. 在netbeans下使用调试PHP的插件XdeBug

    本人的开发环境: wamp最新官网wampserver2.2d-x32版. 下载点:http://nchc.dl.sourceforge.net/project/wampserver/WampServ ...

  7. zabbix添加对tomcat线程池的监控

    在zabbix模板中添加以下监控项: 可以参考文档:http://www.fblinux.com/?p=616

  8. Android图片的合成示例

    package com.example.demo; import android.os.Bundle; import android.app.Activity; import android.grap ...

  9. 中间件安全加固之Jboss

    JBoss 的安全设置 1) jmx-console A.jmx-console登录的用户名和密码设置 默认情况访问 http://localhost:8080/jmx-console 就可以浏览jb ...

  10. Splash autoload() 方法

    autoload() 方法可以设置每个页面访问时自动加载的对象,比如自动加载 JavaScript 代码,自动加载 Ajax 代码等等 注意此方法只负责加载 JavaScript/Ajax 代码,不执 ...