离线环境升级python及安装模块

  之前介绍的的Zabbix脚本是用python3写的,但是centos7默认安装的是python2.7.5,所以我们需要升级到python3。

  因为服务器是内网环境,不能访问外网,所以本文就对离线环境下(无网络)升级python及安装模块进行介绍。

Centos7升级python3

安装python3

  先介绍参考文档,centos7将python默认版本升级。

  1. 下载python-3.7.1安装包并使用xFTP上传到服务器。

  2. 解压,tar -zxvf Python-3.7.1.tgz

  3. 进入解压目录: cd Python-3.7.1

  4. 创建安装目录: mkdir /usr/local/python3.7.1

  5. 编译: ./configure --prefix=/usr/local/python3.7.1

  6. 安装: make && make install

  7. 备份旧链接,新建软链接: mv /usr/bin/python /usr/bin/python2.7.5

    ln -s /usr/local/python3.7.1/bin/python3.7 /usr/bin/python

  安装完后可以介入命令 python -V,查看是否操作成功。

修改其他受影响的文件

  因为系统默认使用python2.7.5,而python2和python3是由很大不同的,所以我们要修改受影响的配置文件。

  1. 修改yum的配置文件

  1.1 vim /usr/bin/yum

  1.2 将文件头部的 #!/usr/bin/python 改成#!/usr/bin/python2.7.5

  1.3 vim /usr/libexec/urlgrabber-ext-down

  1.4 将文件头部的 #!/usr/bin/python 改成#!/usr/bin/python2.7.5

安装过程中报错处理

  上述是正常安装的步骤,但是在安装过程中,因为缺少网络环境,所以难免会碰到缺少依赖包导致的报错。

  1. zipimport.ZipImportError: can't decompress data

  参考文档如下:Python安装常见问题(1):zipimport.ZipImportError: can't decompress data

  安装zlib相关依赖包,修改python安装配置文件,重新安装。

  2. ModuleNotFoundError: No module named '_ctypes'

  参考文档如下:关于在centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'的解决办法

  安装python3.7版本需要一个新的包libffi-devel,安装此包之后再次进行编译安装即可。

使用中碰到的问题及处理方案

  python安装好后,我们就上手使用了,但是使用过程中又碰到了一些新的问题。

方向键和删除键无法使用

  参考文档如下: python3方向键和删除键无法使用

  安装readline-devel包,后重新编译安装。

PIP不能使用 

  Python不能使用PIP,因为SSL版本可能是1.0.1,python3.7版本最低支持1.0.2,需要升级ssl。

  解决方案:安装ssl-dev(不用修改配置档),建立PIP软链接!

  参考文档如下:

  1. Python3 ssl模块不可用的问题

  2. Linux学习-linux系统下python升级到python3.6步骤详解,以及遇到的问题解决

  3. python安装完毕后,提示找不到ssl模块的解决步骤

 

  综上,在升级python3之前,我们要先安装zlib相关依赖包,libffi-devel包,readline-devel包,ssl-dev等。否则,会在安装过程或者使用中碰到问题,重复编译安装~

 

无外网环境安装python包

  参考文档如下:

  1. 无外网下安装python包

  2. 无网络环境用pip安装python类包

  3. python安装包的离线安装方法

  

  本文使用了两种安装方法:

  1. 安装stomp时通过python setup.py install安装。

  2. 安装kafka时通过pip install kafka_python-1.4.4-py2.py3-none-any.whl安装。

  可以在PyPI下载安装包。

转载于:https://www.cnblogs.com/lq67/p/11446604.html

你可能感兴趣的:(python,大数据,开发工具)