python项目离线环境配置指南
参考文献:
http://blog.csdn.net/candcplusplus/article/details/52156324
https://www.cnblogs.com/michael-xiang/p/5690746.html
一、说明
本文主要介绍两类软件的批量离线安装方式,一类是使用sudo apt-get install安装的软件,一类是使用pip install安装的python库。
环境:
Ubantu 16.03
两台主机,一台联网,一台断网
二、apt install 类软件
在Ubantu中使用apt install 安装软件时,所需要的文件和所有的依赖文件都会在 /var/cache/apt/archives/ 目录下缓存下来,所以只需要将其复制到断网主机上,然后改一下索引位置就能批量安装所有的软件。
具体步骤如下:
1. 在联网主机上下载所需软件
# 清空缓存目录
sudo rm -rf /var/cache/apt/archives/* # 下载所需软件
sudo apt-get install python-pip
sudo apt-get install python-dev
sudo apt-get install python-imaging
2. 拷贝文件
将 /var/cache/apt/archives/ 目录下的所有文件,除了lock文件,拷贝到U盘debs目录下,下面是我的样例。
    
3. 在离线主机上保存文件
sudo mkdir /var/debs # 创建空目录
sudo cp -r /U盘/路径/debs/* /var/debs/ # 将文件拷贝到该目录下
4. 生成索引
sudo touch /var/debs/Packages.gz
sudo chmod -R 777 /var/debs/ # 设置修改权限
sudo dpkg-scanpackages debs /dev/null | gzip > /var/debs/Packages.gz # 创建索引
5. 在 /etc/apt/sources.list 中添加本地目录
sudo gedit /etc/apt/sources.list
将原来的内容全部注释,在末尾加行代码:
deb file:/var debs/
注意var和debs之间是空格
6. 更新索引
sudo apt-get update
7.安装软件
sudo apt-get install python-pip
sudo apt-get install python-dev
sudo apt-get install python-imaging
三、pip install类库
这里先用之前的方法安装好pip。
1. 在联网主机上找一目录,准备保存所需文件
我直接创建了一个 /home/python 目录,然后在里面创建一个packages目录。
2. 安装所需库
pip install scapy
pip install scapy-http
pip install py2neo
pip install numpy
pip install pandas
pip install scikit-image
pip install tensorflow
3. 打包已安装的库
pip freeze > /home/python/requirements.txt
pip install --download /home/python/packages -r /home/python/requirements.txt
注意,执行完第一行命令之后产生的 requirements.txt 文件需要删除一些配置,否则第二行无法正常执行。
我的初始 requirements.txt 文件如下:
absl-py==0.1.9
adium-theme-ubuntu==0.3.4
backports.functools-lru-cache==1.4
backports.weakref==1.0.post1
bleach==1.5.0
cycler==0.10.0
decorator==4.2.1
enum34==1.1.6
funcsigs==1.0.2
futures==3.2.0
html5lib==0.9999999
Markdown==2.6.11
matplotlib==2.1.2
mock==2.0.0
networkx==2.1
numpy==1.14.0
pandas==0.22.0
pbr==3.1.1
Pillow==5.0.0
protobuf==3.5.1
py2neo==3.1.2
pyparsing==2.2.0
python-dateutil==2.6.1
pytz==2017.3
PyWavelets==0.5.2
scapy==2.3.3
scapy-http==1.8
scikit-image==0.13.1
scipy==1.0.0
six==1.11.0
subprocess32==3.2.7
tensorflow==1.5.0
tensorflow-tensorboard==1.5.0
unity-lens-photos==1.0
Werkzeug==0.14.1
删除报错部分之后如下:
backports.functools-lru-cache==1.4
backports.weakref==1.0.post1
bleach==1.5.0
cycler==0.10.0
decorator==4.2.1
enum34==1.1.6
funcsigs==1.0.2
futures==3.2.0
html5lib==0.9999999
Markdown==2.6.11
matplotlib==2.1.2
mock==2.0.0
networkx==2.1
numpy==1.14.0
pandas==0.22.0
pbr==3.1.1
Pillow==5.0.0
protobuf==3.5.1
py2neo==3.1.2
pyparsing==2.2.0
python-dateutil==2.6.1
pytz==2017.3
PyWavelets==0.5.2
scapy==2.3.3
scapy-http==1.8
scikit-image==0.13.1
scipy==1.0.0
six==1.11.0
subprocess32==3.2.7
tensorflow==1.5.0
tensorflow-tensorboard==1.5.0
Werkzeug==0.14.1
4. 拷贝到离线主机
将/home/python这个拷贝到离线主机下,路径也是/home/python
5. 离线安装所有打包好的库
pip install --no-index --find-links=/home/python/packages -r /home/python/requirements.txt
python项目离线环境配置指南的更多相关文章
- Windows下OpenFOAM开发及使用环境配置指南 (2)【转载】
		
转载自:http://openfoam.blog.sohu.com/158751915.html *************************************************** ...
 - mac电脑使用,开发环境配置指南
		
mac电脑使用,开发环境配置指南 前端工具链,mac下都很好用 用brew来装软件 用brew cask来装应用 Introduction · macOS Setup Guidehttp://sour ...
 - python+selenium的环境配置
		
以前写过关于python和selenium加myeclipse的环境配置,但是myeclipse启动时过于费时,虽然myeclipse有很好的提示功能,但是作为初学者,我还是直接用python的idl ...
 - Python selenium chrome 环境配置
		
Python selenium chrome 环境配置 一.参考文章: 1. 记录一下python easy_install和pip安装地址和方法 http://heipark.iteye.com/b ...
 - Windows下OpenFOAM开发及使用环境配置指南 (1)【转载】
		
转载自:http://openfoam.blog.sohu.com/158614863.html *************************************************** ...
 - Python Flask 多环境配置
		
Python里取配置文件的时候,之前是使用的ini文件和python里configparser 模块: 可参考:https://www.cnblogs.com/feeland/p/4514771.ht ...
 - 免安装方式的Python之VSCode环境配置
		
概述 本文旨在介绍免安装方式,在VSCode中搭建Python(3.73)的配置环境.至于Python是什么.它能做些什么,诸如此类的介绍均不在此文中介绍,相信能看此文的人,多多少少都会有些了解. V ...
 - python+django+pycharm 环境配置 (window7)
		
一.python环境配置 登录python官网,下载windows版的python,本项目使用32位的python2.7.6,下载地址: http://www.python.org/ftp/pytho ...
 - Python 爬虫2——环境配置
		
关于环境配置的操作,其实非常简单,假如不使用第三方的框架的话,只需要安装Python即可完成后续的操作. 一.Python的安装和配置: windows系统的安装配置过程如下,假如是Mac系统,可参考 ...
 
随机推荐
- day1-课堂笔记
			
venv 执行方法: 1,pycharm执行 2,cmd命令窗口执行:python D:\PyCharmProjects\MyProject\day1.py 回车 java原理: HW.jav ...
 - RMAN删除备份
			
删除备份--DELETE命令 用于删除RMAN备份记录及相应的物理文件.当使用RMAN执行备份操作时,会在RMAN资料库(RMAN Repository)中生成RMAN备份记录,默认情况下RMAN备份 ...
 - 使用Tensoflow实现梯度下降算法的一次线性拟合
			
# Author Qian Chenglong import tensorflow as tf import numpy as np #生成100个随机数据点 x_date=np.random.ran ...
 - APR Recipe
			
1, pt fix 后生成的 icctcl,回到 icc source 后,如果需要eco_route,建议先关掉 timing_driven,因为 icc 与 pt 看到的 timing 情况一般 ...
 - PAT B1050 螺旋矩阵 (25 分)
			
本题要求将给定的 N 个正整数按非递增的顺序,填入“螺旋矩阵”.所谓“螺旋矩阵”,是指从左上角第 1 个格子开始,按顺时针螺旋方向填充.要求矩阵的规模为 m 行 n 列,满足条件:m×n 等于 N:m ...
 - Python2.7-dbm、gdbm、dbhash、bsddb、dumbdb
			
dbm.gdbm.dbhash.bsddb.dumbdb模块,都是操作数据库文件的模块,打开后都会返回对应数据库类型对象,类似字典,有许多操作和字典操作相同,键和值都是以字符串形式保存.dbm 是简单 ...
 - Oracle 批量修改某个用户下表的表空间
			
说明:一般来说要修改表的表空间需要同时修改表的表空间和其对应的索引表空间,并且在修改含有BOLB字段的表的表空间时又不一样,具体请参考末尾的链接 思路:拼凑一个满足条件的批处理查询语句,将查询的结果复 ...
 - 从裸机编程到嵌入式Linux编程思想的转变------分而治之:驱动和应用程序
			
笔者学习嵌入式Linux也有一段时间了,很奇怪的是很多书讲驱动编程方面的知识,也有很多书将ARM9方面的知识,但是从以前51形式的(对寄存器直接操作,初始化芯片的功能模块)编程方法,和思维模式,变换为 ...
 - [Lydsy1805月赛]口算训练 BZOJ5358
			
分析: 没想到这道题还能二分查找... 这题主席树的话,裸的很显然...我们将每一个数分解质因数,之后建一个可持久化权值线段树维护[L,R]区间内的每一种质因子的个数,分解质因数的话,可以选择用线筛, ...
 - 20155229《网络对抗技术》Exp4:恶意代码分析
			
实验内容 使用schtasks指令监控系统运行 schtasks指令:允许管理员在本地或远程系统上创建计划任务. SCHTASKS /Create [/S system [/U username [/ ...