Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/282.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
使用pxssh(python的ssh模块)时出现读取非阻塞错误_Python_Ssh - Fatal编程技术网

使用pxssh(python的ssh模块)时出现读取非阻塞错误

使用pxssh(python的ssh模块)时出现读取非阻塞错误,python,ssh,Python,Ssh,我尝试在远程机器上使用pxssh模块,使用python脚本执行ssh 以下是我用于相同目的的代码行: s = pxssh.pxssh() s.login (hostip,'root',auto_prompt_reset=False) 但这给了我以下超时错误 Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/local/lib/py

我尝试在远程机器上使用pxssh模块,使用python脚本执行ssh

以下是我用于相同目的的代码行:

    s = pxssh.pxssh()
    s.login (hostip,'root',auto_prompt_reset=False)
但这给了我以下超时错误

  Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.6/dist-packages/pxssh.py", line 243, in login
    if not self.synch_original_prompt():
  File "/usr/local/lib/python2.6/dist-packages/pxssh.py", line 134, in synch_original_prompt
    self.read_nonblocking(size=10000,timeout=1) # GAS: Clear out the cache before getting the prompt
  File "/usr/local/lib/python2.6/dist-packages/pexpect.py", line 824, in read_nonblocking
    raise TIMEOUT ('Timeout exceeded in read_nonblocking().')
pexpect.TIME

OUT: Timeout exceeded in read_nonblocking().
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/usr/local/lib/python2.6/dist-packages/pxsh.py”,第243行,登录
如果不是self.synch_original_prompt():
文件“/usr/local/lib/python2.6/dist packages/pxsh.py”,第134行,在同步提示下
self.read_nonblocking(大小=10000,超时=1)#GAS:在得到提示之前清除缓存
文件“/usr/local/lib/python2.6/dist packages/pexpect.py”,第824行,以只读非阻塞方式
raise TIMEOUT('在read_nonblocking()中超过超时。')
预期时间
OUT:在read_nonblocking()中超过超时。

我更改了python库,改为使用paramiko,它更稳定,不会出现上述错误。

我也遇到了同样的问题。这篇文章()提供了解决方案

“我刚刚添加了一个self.sendline()和一个time.sleep(0.5),就在 在synch\u original\u prompt()中首次读取\u nonblocking()调用“


这为我解决了问题。

您是否尝试了中介绍的解决方法(包括稍微更改pxssh代码?)