无非就是离线安装, 步骤比较繁琐, 记录一下.

需求很简单, 一个离线安装的 Python, 能跑 tornado 和 paramiko

1. 离线安装 Python 2.7

tar axf Python-2.7..tgz

cd Python-2.7.

./configure --prefix=/home/doge/opt

make

make install

2. 安装 setuptools

tar axf setuptools-28.8.0.tar.gz

cd setuptools-28.8.0

../opt/bin/python setup.py install

3. 安装 pip

tar axf pip-9.0..tar.gz

cd pip-9.0.

../opt/bin/python setup.py install

4. 安装 paramiko

#. 安装 pyasn1

./opt/bin/easy_install pyasn1-0.1.-py2..egg 

#. 安装 ipaddress

./opt/bin/pip install ipaddress-1.0.-py2-none-any.whl

#. 安装 enum34

./opt/bin/pip install enum34-1.1.-py2-none-any.whl 

#. 安装 six

./opt/bin/pip install six-1.10.-py2.py3-none-any.whl

#. 安装 idna

./opt/bin/pip install idna-2.1-py2.py3-none-any.whl

#6. 安装 pycparser

tar axf pycparser-2.17.tar.gz

cd pycparser-2.17

../opt/bin/python setup.py install
#7. 安装 cffi

./opt/bin/pip install cffi-1.9.1-cp27-cp27m-manylinux1_x86_64.whl
#8. 安装 cryptography

tar axf cryptography-1.6.tar.gz

cd cryptography-1.6

../opt/bin/python setup.py install

#9. 安装 paramiko

./opt/bin/pip install paramiko-2.0.-py2.py3-none-any.whl

5. 安装 tornado

#. 安装 backports_abc

tar axf backports_abc-0.5.tar.gz

cd backports_abc-0.5

../opt/bin/python setup.py install

#. 安装 backports.ssl_match_hostname

tar axf backports.ssl_match_hostname-3.5.0.1.tar.gz

cd backports.ssl_match_hostname-3.5.0.1

../opt/bin/python setup.py install

#. 安装 certifi

./opt/bin/pip install certifi-2016.9.-py2.py3-none-any.whl

#. 安装 ordereddict

tar axf ordereddict-1.1.tar.gz

cd ordereddict-1.1

../opt/bin/python setup.py install

#. 安装 six

./opt/bin/pip install six-1.10.-py2.py3-none-any.whl

#. 安装 singledispatch

tar axf singledispatch-3.4.0.3.tar.gz

cd singledispatch-3.4.0.3

../opt/bin/python setup.py install

#. 安装 tornado

tar axf tornado-4.4..tar.gz

cd tornado-4.4.

../opt/bin/python setup.py install

6. 总结

有 .whl 或 .egg 的, 就不要使用 .tgz, cffi 就很难在离线状态下从源码编译成功.

7. 脚本

#!/bin/bash
mkdir doge && cd doge || exit -
wget http://10.34.58.43:8080/install.tar
tar xf install.tar && rm -f install.tar
tar axf Python-2.7..tgz
cd Python-2.7. && ./configure --prefix=/home/doge/opt && make && make install && cd .. || exit -1
tar axf setuptools-28.8.0.tar.gz
cd setuptools-28.8.0 && ../opt/bin/python setup.py install && cd .. || exit -1
tar axf pip-9.0..tar.gz
cd pip-9.0. && ../opt/bin/python setup.py install && cd .. || exit -
./opt/bin/easy_install pyasn1-0.1.-py2..egg
./opt/bin/pip install ipaddress-1.0.-py2-none-any.whl
./opt/bin/pip install enum34-1.1.-py2-none-any.whl
./opt/bin/pip install six-1.10.-py2.py3-none-any.whl
./opt/bin/pip install idna-2.1-py2.py3-none-any.whl

tar axf pycparser-2.17.tar.gz
  cd pycparser-2.17 && ../opt/bin/python setup.py install && cd .. || exit -1
  ./opt/bin/pip install cffi-1.9.1-cp27-cp27m-manylinux1_x86_64.whl

tar axf cryptography-1.6.tar.gz
cd cryptography-1.6 && ../opt/bin/python setup.py install && cd .. || exit -
./opt/bin/pip install paramiko-2.0.-py2.py3-none-any.whl
tar axf backports_abc-0.5.tar.gz
cd backports_abc-0.5 && ../opt/bin/python setup.py install && cd .. || exit -
tar axf backports.ssl_match_hostname-3.5.0.1.tar.gz
cd backports.ssl_match_hostname-3.5.0.1 && ../opt/bin/python setup.py install && cd .. || exit -
./opt/bin/pip install certifi-2016.9.-py2.py3-none-any.whl
tar axf ordereddict-1.1.tar.gz
cd ordereddict-1.1 && ../opt/bin/python setup.py install && cd .. || exit -
./opt/bin/pip install six-1.10.-py2.py3-none-any.whl
tar axf singledispatch-3.4.0.3.tar.gz
cd singledispatch-3.4.0.3 && ../opt/bin/python setup.py install && cd .. || exit -
tar axf tornado-4.4..tar.gz
cd tornado-4.4. && ../opt/bin/python setup.py install && cd .. || exit -

离线安装 Python 2.7, paramiko 和 tornado的更多相关文章

  1. 离线安装 python 第三方库

     离线安装 python 第三方库 首先你需要在联网的服务器上已经安装了一个第三方库,比如是paramiko,也就是说你已经执行了 pip install paramiko    ,小提示: 如果在安 ...

  2. 安装python 的 包 paramiko

    安装python 的 包 paramiko 安装 依赖 yum -y install gcc python-devel 获取安装 pycryptowget https://pypi.python.or ...

  3. 【Python使用】使用pip安装卸载Python包(含离线安装Python包)未完成???

    pip 是 Python 包管理工具,该工具提供了对Python包的查找.下载.安装.卸载的功能.Python 2.7.9 + 或 Python 3.4+ 以上版本都自带 pip 工具. pip使用( ...

  4. [开发技巧]·如何让离线安装Python包

    [开发技巧]·如何让离线安装Python包 1.问题描述 PyPI(Python Package Index)是python官方的第三方库的仓库,所有人都可以下载第三方库或上传自己开发的库到PyPI. ...

  5. 如何离线安装python的whl库

    对于使用公司内网环境办公的人来说,可能无法使用pip install 命令安装python的whl库.对于这种情况,我们可以用以下的方法安装一个whl库. 1 下载whl文件,下载时注意,whl文件的 ...

  6. pip离线安装python包

    1 首先在一台能上网的机器上得到python包 1) 新建一个空目录,如 /home/ubuntu/zcy/ss,用来存储下载下来的所需安装包 2)下载安装包:pip install --downlo ...

  7. Windows离线安装Python第三方库的方法

    在window中,离线安装第三方模块, 1.下载第三方库的压缩文件,解压,将解压后的文件放到Python安装目录下的Lib\site_packages中 2. 将Python添加到环境变量里 3.进入 ...

  8. 离线安装python的ibm_db模块

    目前手头的项目是一个UI自动化框架,其中有些模块的功能需要与DB2数据库交互,于是百度了一下python操作DB2的模块是 ibm_db. 然而我的工作机器是一台windows堡垒机,不能联网,固不能 ...

  9. pyenv离线安装python各版本

    1.问题描述: 可能是国内的网络原因,在线用pyenv安装python老是定住没反应 [root@zabbix ~]# pyenv install Downloading Python-.tar.xz ...

随机推荐

  1. vue.js 第三课

    1.构造器 constructor 2.属性和方法 properties methods 3.实例生命周期 instance_lifecycle   1.vue.js都是通过 var vm=new V ...

  2. java-读取javabean中所有属性和属性的类型

    /** * java读取文件中的属性类型 * @param model * @return * @throws Exception */ public static Map<String,Str ...

  3. C#-WebForm-Request、Response、QueryString、Repeater删

    知识点: Request - 获取请求对象 专门用来接传递过来的值 Request["key"](李献策lxc) 1.获取地址栏传递过来的值 get 2.获取表单传递过来的参数值 ...

  4. java面向对象---对象容器

    泛型类--ArrayList<>; 2.对象数组中的每个元素都是对象的管理者而并非对象本身!!!!! 3.java类的基本数据类型 基本数据类型 包装类 byte Byte short S ...

  5. bzoj 1070 [SCOI2007]修车

    最小费用最大流. 将每个技术人员拆成车数个点,技术人员i的第j个点代表技术人员i修的倒数第j辆车. 源点向所有技术人员点连一条容量为1费用为0的边. 所有技术人员点向所有车点连边:技术人员i的第j个点 ...

  6. 基于Vue2.0+Vue-router构建一个简单的单页应用

    爱编程爱分享,原创文章,转载请注明出处,谢谢!http://www.cnblogs.com/fozero/p/6185492.html 一.介绍 vue.js 是 目前 最火的前端框架,vue.js ...

  7. ECC-Elliptic Curves Cryptography,椭圆曲线密码编码学

    ECC ECC-Elliptic Curves Cryptography,椭圆曲线密码编码学,是目前已知的公钥体制中,对每比特所提供加密强度最高的一种体制.在软件注册保护方面起到很大的作用,一般的序列 ...

  8. Date类

    Date类 构造方法: Date():根据当前的默认毫秒值创建对象 Date(long date):根据给定的默认毫秒值创建对象 成员方法: public long getTime():获取时间,以毫 ...

  9. Swift中的类型转换

    写在前面:1,类型转换的两种方式 2,as!和as?的用法 3,类型判断中 is和===的用法 类型转换方式一,利用类型的构造器进行转换 let str = " var i = Int(st ...

  10. php事务

    <?php set_time_limit(); function sel($time,$number,$count){ ){ sel($time,$number,$count); return ...