Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 通过Robotframework SSH执行命令时出现权限问题_Python_Ssh_Cygwin_Robotframework_Paramiko - Fatal编程技术网

Python 通过Robotframework SSH执行命令时出现权限问题

Python 通过Robotframework SSH执行命令时出现权限问题,python,ssh,cygwin,robotframework,paramiko,Python,Ssh,Cygwin,Robotframework,Paramiko,我正在尝试执行命令,使用robotframeworkssh在远程机器中创建数据库,这将抛出一个特权错误。但若我尝试在PUTTY应用程序上运行相同的命令,或者使用Paramiko库,它将无缝工作。如何解决此问题 首先,我尝试通过putty应用程序直接执行命令,它执行正确。但当我使用SSHLibrary在pythonshell中执行时,它将抛出以下错误 from SSHLibrary import SSHLibrary # library from Robotframework ob=SSHLibr

我正在尝试执行命令,使用robotframeworkssh在远程机器中创建数据库,这将抛出一个特权错误。但若我尝试在PUTTY应用程序上运行相同的命令,或者使用Paramiko库,它将无缝工作。如何解决此问题

首先,我尝试通过putty应用程序直接执行命令,它执行正确。但当我使用SSHLibrary在pythonshell中执行时,它将抛出以下错误

from SSHLibrary import SSHLibrary # library from Robotframework
ob=SSHLibrary()
ob.open_connection("192.168.5.10")
ob.login("Administrator","Password")
print ob.execute_command("db2 create db test7")
输出将为:

u'SQL1092N  The requested command or operation failed because the user ID 
does \r\r\nnot have the authority to perform the requested command or 
operation.  User \r\r\nID: "LOCAL SERVICE".\r\r'
如果我直接使用paramiko库执行上述命令,它将成功创建数据库 这是工作代码:

import paramiko
c=paramiko.Transport(('192.168.5.10',22))
c.connect(username='Administrator',password='Password')
sess=c.open_channel(kind='session')
sess.exec_command('db2 create db test7')
print sess.recv(4096)
输出将是:

DB20000I  The CREATE DATABASE command completed successfully.
尽管SSHLibrary在内部依赖于paramiko库本身,但它无法执行该命令。但若我直接使用paramiko库,它将像putty应用程序一样正确执行。我想知道机器人图书馆怎么不工作。有人请帮我解决这个问题


注意:远程计算机是安装了cygwin以启用SSH的windows

我相信区别在于其他人有“终端会话”,而SSHLibrary没有,Cygwin在没有终端会话的情况下使用错误的用户运行命令。@AnttiHaapala是否有任何解决方案??IDK。我从来没有使用过Robot框架,Cygwin SSH上次使用IIRC是在十多年前。我有个预感^@AnttiHaapala非常感谢你给我留下关于这次会议的提示