美文网首页日常笔记
Centos 系统自带Python升级

Centos 系统自带Python升级

作者: Lisong | 来源:发表于2017-05-07 18:08 被阅读185次

    查看系统版本

    cat /etc/redhat-release
    CentOS release 6.4 (Final)
    uname -r
    2.6.32-358.el6.x86_64
    

    查看Python版本

    python -V
    Python 2.6.6
    

    安装 Python 前所需要的依赖包

    yum -y install openssl openssl-devel ncurses-devel.x86_64  bzip2-devel sqlite-devel python-devel zlib gcc
    

    下载python2.7.12版本源码包

    cd /usr/local/src
    wget https://www.python.org/ftp/python/2.7.12/Python-2.7.12.tgz
    tar xvf Python-2.7.12.tgz
    cd Python-2.7.12
    mkdir -p /usr/local/python27/lib
    ./configure --enable-shared --prefix=/usr/local/python27 LDFLAGS="-Wl,-rpath /usr/local/python27/lib"
    make all
    make install
    make clean
    make distclean
    

    如果在Python2.7下的bin目录中执行 Python2.7 报如下错误
    cd /usr/local/python27/bin
    ./python2.7

    ./python2.7: error while loading shared libraries: libpython2.7.so.1.0: cannot open shared object file: No such file or directory

    解决方法
    vi /etc/ld.so.conf
    加入
    /usr/local/python27/lib

    执行 **/sbin/ldconfig -v **

    将系统默认的python版本设置为2.7.12

    mv /usr/bin/python /usr/bin/python2.6.6  
     # 将原来的Python程序改名为Python26 备份,使 yum 可以使用
    ln -s /usr/local/python27/bin/python2.7 /usr/bin/python
     #链接到新的Python
    

    解决系统 Python 软链接指向 Python2.7 版本后,yum无法使用

    因为yum是不兼容 Python 2.7的,所以yum不能正常工作,需要指定 yum 的旧的Python版本

    vi /usr/bin/yum  
    将文件头部的
    #!/usr/bin/python
    改成
    #!/usr/bin/python2.6.6
    
    

    检查升级后的python版本

    python -V
    Python 2.7.12
    

    加入环境变量

    最好把新的 python 的路径加到 PATH 环境变量中,否则还会有其他组件运行不正常,PATH变量永久生效必须添加到/etc/profile配置文件,打开在末尾添加就好了,添加完PATH变量记得立即生效配置文件。

    vim /etc/profile
    export PYTHON_HOME=/usr/local/python/27
    export PATH=$PATH:$PYTHON_HOME/bin
    
    刷新环境变量  
     source /etc/profile
    

    安装pip

    方法一:

    下载get-pip.py 文件
    wget https://bootstrap.pypa.io/get-pip.py --no-check-certificate
    
    执行安装
    python get-pip.py
    
    如果 安装完成pip 命令不能使用,搜索系统中pip文件,创建命令链接
    ln -s /usr/local/python27/bin/pip  /usr/bin/pip
    

    方法二:

    pip下载:
    
    wget https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz#md5=35f01da33009719497f01a4ba69d63c9 --no-check-certificate
    
    pip安装:
    tar -xzvf pip-9.0.1.tar.gz
    cd pip-9.0.1
    python setup.py install
    ln -s /usr/local/python27/bin/pip /usr/bin/pip
    

    安装会提示错误:

    [sudo] password for dslab:
    Traceback (most recent call last):
    File "setup.py", line 5, in <module>

    from setuptools import setup, find_packages  
    

    ImportError: No module named setuptools

    安装pip时提示setup.py中使用setuptools中的模块,但是电脑中并没有安装setuptools软件包,所以我们需要先下载并安装 setuptools!

    linux设置pip的国内源
    vim ~/.pip/pip.conf
    [global]
    index-url = http://mirrors.aliyun.com/pypi/simple/
    trusted-host = mirrors.aliyun.com
    
    windows 设置pip的国内源

    对虚拟环境也有效
    1、在资源管理器中访问 %APPDATA%
    2、新建pip文件夹,然后到pip文件夹里面去新建个pip.ini文件

    [global]
    timeout = 6000
    index-url = http://pypi.douban.com/simple
    trusted-host = pypi.douban.co
    

    安装setuptools软件包

    方法一:

    下载ez_setup.py
    wget --no-check-certificate https://bootstrap.pypa.io/ez_setup.py
    sudo python ez_setup.py --insecure
    
    执行安装
    python ez_setup.py --insecure
    

    方法二:

    
    (1)下载setuptools包
    # wget http://pypi.python.org/packages/source/s/setuptools/setuptools-2.0.tar.gz
    
    (2)解压setuptools包
    # tar zxvf setuptools-2.0.tar.gz
    # cd setuptools-2.0
    
    (3)编译setuptools
    # python setup.py build
    
    (4)开始执行setuptools安装
    # python setup.py install
    再次安装pip,并使用pip安装其他软件包:
    
    现在,setuptools已经安装好,我们再次进入pip-9.0.1目录,使用 “python setup.py install” 命令安装pip:
    
    # cd pip-9.0.1/
    # python setup.py install
    
    安装好pip之后,我们就可以直接使用pip安装其他软件包了:
    
    pip install nose
    pip install virtualenv
    pip install distribute
    

    相关文章

      网友评论

        本文标题:Centos 系统自带Python升级

        本文链接:https://www.haomeiwen.com/subject/cetptxtx.html