CentOS 6.5升级Python 3.7.3 版本、修复yum和安装模块

系统服务   Python升级  

CentOS python版本是V2.6.6,升级3.7.3。

  • 下载 安装包
    wget http://www.python.org/ftp/python/3.4.3/Python-3.7.3.tgz

  • 解压安装包
    tar -zxvf Python-3.7.3.tgz  

  • 进入解压后目录
    cd Python-3.4.3   

  • 编译安装
    ./configure --prefix=/usr/local/python37 --enable-optimizations
    make && make install

  • ModuleNotFoundError: No module named '_ctypes'的解决办法

yum install libffi-devel -y  
make install  
  • 此时已完成新版本的安装,但由于老版本还在系统中,所以需要将原来/usr/bin/python链接改为新的连接
    a.先修改老的连接,执行
    mv /usr/bin/python /usr/bin/python2.6
    b.再建立新连接
    ln -s /usr/local/python3.3/bin/python3.3 /usr/bin/python
  • 查询python版本
    python

解决升级后YUM无法使用

  • 打开/usr/bin/yum
    vim /usr/bin/yum
    将#!/usr/bin/python 修改为 #!/usr/bin/python2.6,保存退出
  • 测试是否修复
    yum list

安装3.7.10出现Caused by SSLError(“Can‘t connect to HTTPS URL because the SSL module is not available.“)

  • 安装openssl
wget https://www.openssl.org/source/openssl-1.1.1n.tar.gz --no-check-certificate  
tar -zxf openssl-1.1.1n.tar.gz  
cd openssl-1.1.1n  
./config --prefix=/usr/local/openssl-1.1.1n
make -j 4 && make install  
  • 重新编译python3.7.10
tar xf Python-3.10.7.tar.xz  
./configure --prefix=/usr/local/python310 --with-openssl=/usr/local/openssl-1.1.1n --with-openssl-rpath=auto
make && make install  

使用easy_install和 pip 安装模块

  • 一些依赖
    yum install mysql-devel zlib-devel gcc python-devel gcc libffi-devel python-devel openssl-devel readline-devel patch `
  • A: yum 安装 easy_install
    yum install python-setuptools

  • B: 通过ezsetup.py安装easyinstall
    wget --no-check-certificate https://bootstrap.pypa.io/ez_setup.py
    python ez_setup.py --insecure

  • 举个例子:安装模块paramiko,以下两种方法都可以
    easy_install paramiko
    pip install paramiko

  • 安装带setup.py的多文件模块包,下载后,解压,进入目录
    python setup.py install

Centos 7 安装pip

yum install python-pip mysql-devel gcc libffi-devel python-devel openssl-devel -y

pip install MySQL-python==1.2.5  
pip install kafka-python==1.3.2