ubuntu在线服务器python Package安装到离线服务器的过程
作者:不爱贞子爱爽子
1、在线服务器导出requirement.txt
pip freeze > requirement.txt
该文件生成完毕后,需要做些修改,去掉不需要的库,否则下载的时候会出错。
2、下载whl文件 -> packages
pip download -r requirement.txt -d packages
pip download -r requirement.txt -d packages -i https://pypi.tuna.tsinghua.edu.cn/simple/
下载完成后packages文件夹包含所有的whl文件。
3、离线服务器ubuntu20.04 查看是否包含python pip
这个版本的服务器已经安装python3.8.5,但是没有安装pip,从而导致安装whl文件失败。
没有python的则需要自行安装。
4、离线安装pip
安装pip的话需要提前安装setuptools,所以需要下载两个包。
------下载
setuptools下载地址:https://pypi.org/project/setuptools/
pip下载地址:https://pypi.org/project/pip/
需要注意对应的python版本
我下载的是setuptools==45.2.0 pip==23.1 他们都是要求python>=3.7,最开始我下载的是setuptools==67.6.1,但是出现了问题,最后我选择了45版本。
-----解压安装setuptools
tar -xvzf setuptools-45.2.0.tar.gz cd setuptools-45.2.0 python3 setup.py install
出现了问题 No module named 'distutils.core'
百度了一圈发现是少了插件,离线的话又需要重新下载安装
python3-distutils地址:https://pkgs.org/search/?q=python3-distutils 有时候需要人机检验,搜索完成后,选择服务器版本与python版本,大致对应即可
点击进入详细地址:https://ubuntu.pkgs.org/20.04/ubuntu-main-amd64/python3-distutils_3.8.2-1ubuntu1_all.deb.html
查看需要的依赖
还需要python3-lib2to3这个,因为python已经有了,直接点击进去也是选择对应版本即可。
插件下载地址是在download部分
直接打开http://archive.ubuntu.com/ubuntu/pool/main/p/python3-stdlib-extensions/python3-distutils_3.8.2-1ubuntu1_all.deb 这个链接开始下载python3-distutils_3.8.2
同理打开http://archive.ubuntu.com/ubuntu/pool/main/p/python3-stdlib-extensions/python3-lib2to3_3.8.2-1ubuntu1_all.deb 下载python3-lib2to3_3.8.2
下载完成后上传至同一目录
----安装setuptools依赖
sudo dpkg -i *.deb
安装完成后再安装setuptools,安装完成后import 看看有没有问题。
-----解压安装pip
setuptools安装成功后就可以安装pip了
tar -xvzf pip-23.1.tar.gz cd pip-23.1 python3 setup.py install
安装完成后执行pip list 查看成功与否
------安装所有whl文件
当离线服务器pip准备就绪后就可以安装了
pip install --no-index --find-links=packages -r requirement.txt
执行完毕后,pip list查看,如果没问题则转移成功。
到此这篇关于ubuntu在线服务器python Package安装到离线服务器的文章就介绍到这了,更多相关python Package安装到离线服务器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!