一、简单介绍

最近需要用Python模拟登录远程服务器并自动执行一些代码,需要安装一个叫paramiko的模块。

paramiko官方介绍遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。但是安装paramiko需要先安装一个依赖包叫PyCrypto的模块。PyCrypto是python编写的加密工具包,支持的各种加密算法(主要有:MD2 128 bits;MD4 128 bits;MD5 128 bits;RIPEMD 160 bits;SHA1 160 bits;SHA256 256 bits;AES 16, 24, or 32 bytes/16 bytes;ARC2 Variable/8 bytes;Blowfish Variable/8 bytes;CAST Variable/8 bytes;DES 8 bytes/8 bytes ;DES3 (Triple DES) 16 bytes/8 bytes;IDEA 16 bytes/8 bytes ;RC5 Variable/8 bytes等等。)

由于安装PyCrypto需要依赖gcc库编译,本文主要解决的问题其实就是安装PyCrypto过程中遇到的问题。另外本文仅针对在Mac 10.8系统下,python 版本是2.7。

二、安装PyCrypto

安装pycrypto有两种方式:一种是直接通过pip install方式,前提是已经安装了easy install工具,我们只要直接执行pip install pycrypto就可以了。第二中方式就是直接下载pycrypto包,解压后 进入setup.py文件目录,执行python setup.py install命令,注意考虑到权限问题,应该以管理员权限运行。

但是问题出在安装时候报错,提示找不到gcc编译库,这是由于你没有将gcc编译路径加入到环境变量中去,它不知道用哪个gcc编译库:

所以我们手动添加一下,在terminial执行以下两行命令:

export CC=llvm-gcc-4.2
export CXX=llvm-g++-4.2

但是有时候我们系统里面如果没有gcc编译库,那就得自己到google code上搜索一个安装一下上面那个方法才能奏效,(googlec编译器下载地址 https://github.com/kennethreitz/osx-gcc-installer/downloads。)

另一种简便方法:

如果我们系统里面安装了xcode的话,那可以下载clang包,比较完整的gcc编译库比较笨重,clang是一个轻量级的C\C++\OC的编译包。Python2.0后是支持的。

首先打开xcode,进入Xcode-->偏好设置-->下载

有一个叫command line tools的组件,如果还没有下载,那就点击下载。

下载完成后,再次设置环境变量:

export CC=clang
export CXX=llvm-g++-4.2

这样在执行pip install pycrypto 就没有问题了。

三、安装paramiko

直接运行pip install paramiko 或者下载paramiko包,用python setup.py install安装,这里就不详述了。(下载地址:https://github.com/paramiko/paramiko)

Mac OSX 安装Python的paramiko模块经验总结的更多相关文章

  1. Mac OS X 下安装python的MySQLdb模块

    参考资料: mac os x下python安装MySQLdb模块   http://www.codeif.com/post/1073/ MAC OSX使用Python安装模块有关问题  http:// ...

  2. 在 mac 系统上安装 python 的 MySQLdb 模块

    在 mac 系统上安装 python 的 MySQLdb 模块 特别说明:本文主要参考了Mac系统怎么安装MySQLdb(MySQL-Python) 第 1 步:下载 MySQL-python-1.2 ...

  3. Python之paramiko模块

    今天我们来了解一下python的paramiko模块 paramiko是python基于SSH用于远程服务器并执行相应的操作. 我们先在windows下安装paramiko 1.cmd下用pip安装p ...

  4. 使用python的Paramiko模块登陆SSH

    使用python的Paramiko模块登陆SSH paramiko是用Python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接. python的paramiko模块 ...

  5. Python之paramiko模块和SQL连接API

    堡垒机前戏 开发堡垒机之前,先来学习Python的paramiko模块,该模块机遇SSH用于连接远程服务器并执行相关操作 SSHClient 用于连接远程服务器并执行基本命令 基于用户名密码连接: i ...

  6. 安装python的pip模块

    安装python的pip模块 网址https://pypi.python.org/pypi/pip 选择,点击下载 将文件解压到C:\Users\Administrator\AppData\Local ...

  7. Mac OSX 安装qemu

    参考: Installing QEMU on OS X Homebrew Mac OSX 安装qemu 1.Install Homebrew: /usr/bin/ruby -e "$(cur ...

  8. 利用python 下paramiko模块无密码登录

    利用python 下paramiko模块无密码登录   上次我个大家介绍了利用paramiko这个模块,可以模拟ssh登陆远程服务器,并且可以返回执行的命令结果,这次给大家介绍下如何利用已经建立的密钥 ...

  9. (转)python的paramiko模块

    python的paramiko模块  原文:http://www.cnblogs.com/breezey/p/6663546.html     paramiko是用python语言写的一个模块,遵循S ...

随机推荐

  1. MyDetailedOS

    http://njumdl.sinaapp.com/ https://github.com/mudongliang

  2. careercup-C和C++ 13.7

    13.7 写一个函数,其中一个参数是指向Node结构的指针,返回传入数据结构的一份完全拷贝. Node结构包含两个指针,指向另外两个Node. C++实现代码: typedef map<Node ...

  3. php正则测试demo、动态函数

    <?php error_reporting (E_ALL); ini_set ('display_errors', 'on');?><meta http-equiv="Co ...

  4. Mysql命令行连接

    mysql在线参考手册地址: http://dev.mysql.com/doc/refman/5.1/zh/tutorial.html#connecting-disconnecting 在linux平 ...

  5. JavaScript中的各种宽高以及位置总结

    JavaScript中的各种宽高以及位置总结 在javascript中操作dom节点让其运动的时候,常常会涉及到各种宽高以及位置坐标等概念,如果不能很好地理解这些属性所代表的意义,就不能理解js的运动 ...

  6. opencv里面CV_32FC1家族

    因为总是接触过这样一些#define里面的东西但是总也不知道是干什么用的.而且每看一次梦比一次. 对于这些东西到底是什么的简写根本就不能理解. 原意是跑一下这个例程的: cvRectangle( my ...

  7. 数字转化成字符串C语言

    #include <stdio.h> void Myitoa(int,char *); int getnumberLength(int); int main(){ ]; ; Myitoa( ...

  8. Linux shell之数组

    引言 在Linux平台上工作,我们经常需要使用shell来编写一些有用.有意义的脚本程序.有时,会经常使用shell数组.那么,shell中的数组是怎么表现的呢,又是怎么定义的呢?接下来逐一的进行讲解 ...

  9. posix thread互斥量

    互斥量 互斥量(Mutex)是“mutual exclusion”的缩写.互斥量是实现线程同步,和保护同时写共享数据的主要方法.使用互斥量的典型顺序如下:1. 创建和初始一个互斥量 2. 多个线程尝试 ...

  10. asp.net中常用的几种身份验证方式

    转载:http://www.cnblogs.com/dinglang/archive/2012/06/03/2532664.html   前言 在B/S系统开发中,经常需要使用"身份验证&q ...