python的paramiko模块报错解

发布时间:2019-08-28 09:11:06编辑:auto阅读(1909)

    写了一个Python脚本内容如下:

    #-*- coding:utf-8 -*-
    __author__ = 'kai'
    import paramiko
    import sys,os
    
    host = sys.argv[1]
    user = 'zk'
    password = '123'
    
    cmd = sys.argv[2]
    
    s = paramiko.SSHClient()        #绑定实例
    s.load_system_host_keys()       #加载本机HOST主机文件
    s.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    
    s.connect(host,22,user,password,timeout=5)   #连接远程主机
    stdin,stdout,stderr = s.exec_command(cmd)               #执行命令
    
    cmd_result = stdout.read(),stderr.read()                #读取命令结果
    
    for line in cmd_result:
            print line,
    
    s.close()

    主要是练习用的,执行之后报错:

    #python paramkio.py localhost df
    No handlers could be found for logger "paramiko.transport"
    Traceback (most recent call last):
      File "paramkio.py", line 16, in <module>
        s.connect(host,22,user,password,timeout=5)   #连接远程主机
      File "build/bdist.linux-x86_64/egg/paramiko/client.py", line 296, in connect
      File "build/bdist.linux-x86_64/egg/paramiko/transport.py", line 458, in start_client
    paramiko.SSHException: Incompatible ssh peer (no acceptable kex algorithm)

    产生的原因是因为安装的paramiko模块版本太低

    查看当前的paramiko版本:pip freeze

    lxml==3.4.2

    MySQL-python==1.2.5

    ndg-httpsclient==0.3.2

    oauthlib==0.6.1

    oneconf==0.3.7

    PAM==0.4.2

    paramiko==1.7.6

    Pillow==2.7.0

    piston-mini-client==0.7.5

    pyasn1==0.1.7

    pyasn1-modules==0.0.5

    pycrypto==2.6.1

    pycups==1.9.72

    然后直接升级模块版本就行了:pip install paramiko --upgrade


    paramiko==1.15.2


    重新执行脚本后:

    # python paramkio.py localhost df
    文件系统          1K-块    已用     可用 已用% 挂载点
    udev            1004980       0  1004980    0% /dev
    tmpfs            203228    5300   197928    3% /run
    /dev/sda1      18447100 3839844 13647156   22% /
    tmpfs           1016124     156  1015968    1% /dev/shm
    tmpfs              5120       4     5116    1% /run/lock
    tmpfs           1016124       0  1016124    0% /sys/fs/cgroup
    cgmfs               100       0      100    0% /run/cgmanager/fs
    tmpfs            203228      40   203188    1% /run/user/1000
    /dev/sr0        1123872 1123872        0  100% /media/zk/Ubuntu 15.04 amd64


    搞定

关键字