## 离线安装Python3

1.安装依赖环境

```sh

yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel

```

2.下载安装包

可以选择官网直接下载或者wget命令下载

* 官网(<https://www.python.org/)下载,点击downloads>

* wget:

wget https://www.python.org/ftp/python/3.10.1/Python-3.10.1.tgz

3.解压

```sh

mkdir -p /usr/local/python3.10

tar -zxvf Python-3.9.0.tgz

```

4.编译安装

```sh

cd Python-3.10.1

./configure --prefix=/usr/local/python3.10

make && make install

```

5.配置环境变量

```sh

vi /etc/profile

export PYTHON_HOME=/usr/local/python3.10

export PATH=${PYTHON_HOME}/bin:$PATH

source /etc/profile

```

创建软连接

查看python指向:

```sh

ls -l /usr/bin | grep python

```

创建/usr/bin/python3

```sh

ln -s /usr/local/bin/python3.10/bin/python3 /usr/bin/python3 # 创建python3软连接

rm /usr/bin/python

ln -s /usr/bin/python3 /usr/bin/python

```

## 离线安装、迁移第三方模块

1.第三方模块下载

* 第三方模块下载可以直接下载whl文件,直接使用pip3 install

* 可在联网机器下载,迁移到离线服务器安装

下面主要介绍在在联网机器下载,迁移到离线服务器安装方式

如果新安装某一个模块,可以直接下载下来

```sh

pip3 download xxx -d /tmp/packages/

```

默认情况download是最新版本模块,但需要下载指定模块版本,例如:

```sh

pip3 download kafka-python==2.0.2 -d /tmp/packages/

```

* 查看已安装模块

```sh

pip3 list

Package Version

------------------ ---------

certifi 2021.10.8

charset-normalizer 2.0.9

idna 3.3

kafka-python 2.0.2

pip 21.2.4

pydruid 0.6.2

requests 2.26.0

setuptools 58.1.0

urllib3 1.26.7

```

* 将pip3 list的信息生成文档

```sh

pip3 freeze > requirements.txt

```

* 将requirement.txt文档中列出的模块信息下载到指定目录

```sh

# 第一种方式,推荐使用

pip3 download -r requirements.txt -d /tmp/packages/

# 第二种方式

pip3 install --download /tmp/packages -r requirements.txt

```

* 将下载好的模块copy到离线服务器

```sh

#是什么格式就安装什么格式的文件

pip3 install xxx.tar.gz

pip3 install xxx.whl

pip3 install xxx.xx

```

批量安装多个包和依赖包,所有文件放到一个目录中,进入这个目录执行命令

```sh

pip3 install ./*

```

issues:

issue1:pip3 安装依赖 ModuleNotFoundError: No module named '_ctypes'

解决方案

1.安装libffi-devel

```sh

yum install libffi-devel

```

2.重新编译安装

```sh

./configure --prefix=/usr/local/python3 --enable-optimizations

make && make install

```

---

issue2:No matching distribution found for request

```sh

Collecting request

Could not fetch URL https://pypi.python.org/simple/request/: There was a problem confirming the ssl certificate: [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:719) - skipping

Could not find a version that satisfies the requirement request (from versions: )

No matching distribution found for request

```

分析:网络原因导致

解决方案

```sh

pip3 install requests -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

```

issue3:pip3 install xxx.tar.gz 报连接错误

```sh

tar -zxvf xxx.tar.gz

cd xxx

python3 setup.py install

```


微信扫码关注

及时收看更多精彩内容

在这里插入图片描述

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐