wind1211 发表于 2014-08-07 18:16

使用paramiko模块远程ssh访问HP VLS带库系统报错

本帖最后由 wind1211 于 2014-08-07 18:20 编辑

hi all,
我的代码如下:
import paramiko
import time
import sys
def ssh2(ip,username,passwd,cmd):
    #print ip+","+username+","+passwd+","+cmd.rstrip()
    try:
      ssh = paramiko.SSHClient()
      ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
      ssh.connect(ip,22,username,passwd,timeout=8)
      stdin,stdout,stderr = ssh.exec_command(cmd)
      cmd_output = stdout.read()
      ssh.close()
    except:
      print "connect to "+ip+"failed"
    return cmd_output
#HP VLS Tape drive sys
def _vlsinst():
    vls_cmd = 'getChassis'
    vls_buff = ssh2(ip,username,passwd,vls_cmd)
    print(vls_buff)


if __name__=='__main__':
    ip = '10.133.162.112'
    username = 'administrator'
    passwd = 'admin'
    _vlsinst()

使用python 2.6的环境执行后,提示如下:
# python CollHPVLS9200.py
Username could not be determined

使用如下命令验证,是能够远程登录的:
# ssh administrator@10.133.162.112
administrator@10.133.162.112's password:
Last login: Wed Aug6 23:52:19 2014 from 11.203.2.87
Heap Size 512mB found in Vtl.prop
System ( java -Xmx512m -XX:+SuppressFatalErrorMessage -cp /S2100/lib/java/s2xcli.jar com.sepaton.s2xmgr.cli.acorn-clishell -jx /S2100/bin/jexec -u administrator -o /var/log/cli_administrator.log -c continueOnError -c connect)

administrator@vls9200-3>exit
Connection to 10.133.162.112 closed.

各位大神,有何建议?

mstools 发表于 2014-08-08 10:26

局部变量读不到,,
if __name__=='__main__':
global ip, username, passwd
添加这一行应该就可以了.
页: [1]
查看完整版本: 使用paramiko模块远程ssh访问HP VLS带库系统报错