[环境部署]Linux安装Python和pip

    科技2024-03-17  87

    centos6

    提前准备

    更换pip源

    国外pip源可能无法访问或速度极慢,建议提前更换pip源,避免后续产生的问题

    譬如在获取pip2时会无法访问国外pip源

    vim /etc/pip.conf

    [global] index-url=http://mirrors.aliyun.com/pypi/simple/ [install] trusted-host=mirrors.aliyun.com

    安装zlib库

    由于centos6u10没有预装zlib库,已知存在的问题

    1、在安装完python2继续获取pip2时,会报

    zipimport.ZipImportError: can't decompress data; zlib not available

    此时需安装zlib库,并重新编译安装python2

    2、在安装python3时,没有zlib库的话也会报上面的错误

    yum -y install zlib*

    备注

    有的伙伴安装时可能会一帆风顺,有的伙伴安装时可能碰到的问题更多,具体问题具体百度,一般都有解决方案

    安装Python2.7

    下载Python2.7源码包(需要更新版本可直接访问官网)

    wget https://www.python.org/ftp/python/2.7.18/Python-2.7.18.tar.xz

    解压

    xz -d Python-2.7.18.tar.xz

    tar xf Python-2.7.18.tar

    配置、编译、安装

    cd Python-2.7.18

    ./configure --prefix=/usr/local/python27

    make && make install

    建立软连接

    首先备份原先的python,我系统自带了Python2.6

    那么我要做的是

    1. 检查python和python2.6是否为同一个文件【经检查,是,MD5值一致】

    2. 修改python2软连到python2.6,因已存在python2软连,故用 -f 强制修改

    ln -fs /usr/bin/python2.6 /usr/bin/python2

    3. 删除原先的python二进制文件

    rm /usr/bin/python

    4. 直接新建一个python2.7的软连接

    ln -s /usr/local/python27/bin/python /usr/bin/python

    5. 执行python看下进入命令行交互之后的python版本,或者python -V 查看版本

    获取pip

    curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

    python ./get-pip.py

    pip建立软连接

    ln -s /usr/local/python27/bin/pip /usr/bin/pip

    由于删除了原先的/usr/bin/python二进制文件,并创建了/usr/bin/python软连接,2.6 -> 2.7,导致yum不可用(yum是依赖python2.6的)

    所以需要修改yum的解释器

    vim /usr/bin/yum

    将顶部的 #!/usr/bin/python 修改为 #!/usr/bin/python2 或 #!/usr/bin/python2.6 均可

    其他依赖python2.6的系统工具同理

    安装Python3.9

    下载Python3.9源码包(需要更新版本可直接访问官网)

    wget https://www.python.org/ftp/python/3.9.0/Python-3.9.0.tar.xz

    解压

    xz -d Python-3.9.0.tar.xz

    tar xf Python-3.9.0.tar

    配置、编译、安装

    cd Python-3.9.0

    ./configure --prefix=/usr/local/python39

    make && make install

    看到大致如下输出,基本安装完成

    建立软连接

    ln -s /usr/local/python39/bin/python3 /usr/bin/python3

    ln -s /usr/local/python39/bin/pip3 /usr/bin/pip3

     

    Processed: 0.008, SQL: 8