在Windows和Linux上安装paramiko模块

一、paramiko模块有什么用?

paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。由于使用的是python这样的能够跨平台运行的语言,所以所有python支持的平台,如Linux,Solaris,BSD,MacOSX,Windows等,paramiko都可以支持,因此,如果需要使用SSH从一个平台连接到另外一个平台,进行一系列的操作时,比如:批量执行命令,批量上传文件等操作,paramiko是最佳工具之一。

目前新的版本,官网在此:

https://github.com/paramiko/paramiko

旧版本在此:

要安装新版本paramiko模块需要做以下准备:

1.Python2.5+版本(Linux,Unix,Windows都可以),这里就直接安装Python2.7下载地址:

2.PyCrypto2.1+模块(PyCrypto是使用Python编写的加密工具包)下载地址:https://www.dlitz.net/software/pycrypto/

3.easy_install工具(是Python安装模块的一个工具,像yum,可以自动解决依赖)

下载地址:

如果大家感觉安装paramiko还是略有麻烦的话,当使用到paramiko提供的方便时便会觉得这是十分值得的。

二、Linux上安装paramiko(以CentOS5.832位为例)

1.查看Python的版本,是否满足要求

[root@server1 ~]# python -VPython 2.4.3[root@server1 ~]#

Windows上亦是此命令,注意是大写V

是2.4.3版本,需要升级

2.下载安装python2.7

源码安装Python2.7如果没有gcc没有安装,请先安装好gcc

root@server2 ~]# wget [root@server2 ~]# tar jxf Python-2.7.5.tar.bz2[root@server2 ~]# cd Python-2.7.5[root@server2 Python-2.7.5]# ./configure –prefix=/usr/local/python2.7[root@server2 Python-2.7.5]# make && make install[root@server2 Python-2.7.5]# echo “PATH=/usr/local/python2.7/bin:$PATH” >> /etc/profile[root@server2 Python-2.7.5]# source /etc/profile[root@server2 Python-2.7.5]# python -VPython 2.7.5[root@server2 Python-2.7.5]# pythonPython 2.7.5 (default, Aug 16 2013, 07:56:41)[GCC 4.1.2 20080704 (Red Hat 4.1.2-52)] on linux2Type “help”, “copyright”, “credits” or “license” for more information.>>>

至此Python2.7安装成功

3.安装easy_install工具

下载该脚本

[root@server2 ~]# wget [root@server2 ~]# python ez_setup.pyDownloading Processing setuptools-0.6c11-py2.7.eggCopying setuptools-0.6c11-py2.7.egg to /usr/local/python2.7/lib/python2.7/site-packagesAdding setuptools 0.6c11 to easy-install.pth fileInstalling easy_install script to /usr/local/python2.7/binInstalling easy_install-2.7 script to /usr/local/python2.7/binInstalled /usr/local/python2.7/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.eggProcessing dependencies for setuptools==0.6c11Finished processing dependencies for setuptools==0.6c11

只需要执行以上命令,即可安装好easy_install工具

4.安装paramiko模块

使用以下命令,即可安装好paramiko模块

[root@server2 ~]# easy_install paramiko

进入Python导入paramiko一下试试

[root@server2 ~]# pythonPython 2.7.5 (default, Aug 16 2013, 07:56:41)[GCC 4.1.2 20080704 (Red Hat 4.1.2-52)] on linux2Type “help”, “copyright”, “credits” or “license” for more information.>>> import paramiko/usr/local/python2.7/lib/python2.7/site-packages/pycrypto-2.6-py2.7-linux-i686.egg/Crypto/Util/number.py:57: PowmInsecureWarning: Not using mpz_powm_sec. You should rebuild using libgmp >= 5 to avoid timing attack vulnerability.>>>

导入模块时,如果遇到以上问题,可能是由于gmp版本比较低造成的,gmp是啥,香港空间,看官网的解释:GMPisafreelibraryforarbitraryprecisionarithmetic,operatingonsignedintegers,rationalnumbers,andfloatingpointnumbers.看样子是跟精度有关系

可以用以下方法解决:先卸载低版本

root@server2 ~]# rpm -qa | grep gmpgmp-devel-4.1.4-10.el5gmp-4.1.4-10.el5[root@server2 ~]# rpm -e gmp-devel-4.1.4-10.el5.i386[root@server2 ~]# rpm -e gcc-gfortran-4.1.2-52.el5.i386[root@server2 ~]# rpm -e gmp-4.1.4-10.el5[root@server2 ~]# ldconfig[root@server2 ~]#

然后安装高版本的gmp

[root@server2 ~]# wget [root@server2 ~]# tar jxf gmp-5.1.2.tar.bz2[root@server2 ~]# cd gmp-5.1.2[root@server2 gmp-5.1.2]# ./configure && make && make install[root@server2 gmp-5.1.2]# echo “/usr/local/lib” >> /etc/ld.so.conf[root@server2 gmp-5.1.2]# ldconfig

再次尝试导入paramiko模块:

[root@server2 gmp-5.1.2]# pythonPython 2.7.5 (default, Aug 16 2013, 07:56:41)[GCC 4.1.2 20080704 (Red Hat 4.1.2-52)] on linux2Type “help”, “copyright”, “credits” or “license” for more information.>>> import paramiko>>> dir(paramiko)[‘AUTH_FAILED’, ‘AUTH_PARTIALLY_SUCCESSFUL’, ‘AUTH_SUCCESSFUL’, ‘Agent’, ‘AgentKey’, ‘AuthHandler’, ‘AuthenticationException’, ‘AutoAddPolicy’, ‘BadAuthenticationType’, ‘BadHostKeyException’, ‘BaseSFTP’, ‘BufferedFile’, ‘Channel’, ‘ChannelException’, ‘ChannelFile’, ‘DSSKey’, ‘HostKeys’, ‘InteractiveQuery’, ‘Message’, ‘MissingHostKeyPolicy’, ‘OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED’, ‘OPEN_FAILED_CONNECT_FAILED’, ‘OPEN_FAILED_RESOURCE_SHORTAGE’, ‘OPEN_FAILED_UNKNOWN_CHANNEL_TYPE’, ‘OPEN_SUCCEEDED’, ‘PKey’, ‘Packetizer’, ‘PasswordRequiredException’, ‘ProxyCommand’, ‘ProxyCommandFailure’, ‘RSAKey’, ‘RejectPolicy’, ‘SFTP’, ‘SFTPAttributes’, ‘SFTPClient’, ‘SFTPError’, ‘SFTPFile’, ‘SFTPHandle’, ‘SFTPServer’, ‘SFTPServerInterface’, ‘SFTP_BAD_MESSAGE’, ‘SFTP_CONNECTION_LOST’, ‘SFTP_EOF’, ‘SFTP_FAILURE’, ‘SFTP_NO_CONNECTION’, ‘SFTP_NO_SUCH_FILE’, ‘SFTP_OK’, ‘SFTP_OP_UNSUPPORTED’, ‘SFTP_PERMISSION_DENIED’, ‘SSHClient’, ‘SSHConfig’, ‘SSHException’, ‘SecurityOptions’, ‘ServerInterface’, ‘SubsystemHandler’, ‘Transport’, ‘WarningPolicy’, ‘__all__’, ‘__author__’, ‘__builtins__’, ‘__doc__’, ‘__file__’, ‘__license__’, ‘__loader__’, ‘__name__’, ‘__package__’, ‘__path__’, ‘__version__’, ‘agent’, ‘auth_handler’, ‘ber’, ‘buffered_pipe’, ‘channel’, ‘client’, ‘common’, ‘compress’, ‘config’, ‘dsskey’, ‘file’, ‘hostkeys’, ‘io_sleep’, ‘kex_gex’, ‘kex_group1’, ‘message’, ‘packet’, ‘pipe’, ‘pkey’, ‘primes’, ‘proxy’, ‘resource’, ‘rsakey’, ‘server’, ‘sftp’, ‘sftp_attr’, ‘sftp_client’, ‘sftp_file’, ‘sftp_handle’, ‘sftp_server’, ‘sftp_si’, ‘ssh_exception’, ‘sys’, ‘transport’, ‘util’]>>>

一切正常,至此paramiko模块在Linux上安装完成

三、Windows732上安装paramiko模块

1.下载安装python2.7

用下载工具下载这2个文件默认安装即可,默认安装路径C:\Python27,就不演示安装过程了。

转动心中的期待,血在澎湃,吃苦流汗算什么。

在Windows和Linux上安装paramiko模块

相关文章:

你感兴趣的文章:

标签云: