• Centos 升级 python


    昨天把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
    

      

  • 相关阅读:
    函数的四种调用模式.上下文调用.call.apply
    caller.arguments.callee.eval
    面向对象相关知识总结
    javascript与jQuery的each,map回调函数参数顺序问题
    HTML5自定义属性的设置与获取
    [bzoj1911][Apio2010]特别行动队
    [学习笔记]乘法逆元
    [日常训练]普通计算姬
    [学习笔记]线性筛
    [学习笔记]数论(一)
  • 原文地址:https://www.cnblogs.com/YatHo/p/8257387.html
Copyright © 2020-2023  润新知