Ткань может "достать", но не может "бежать"
Я использую python2.7 и ткань для подключения к серверу sftp.
Вот что я делаю:
from fabric.api import env, get, run
env.key_filename = '/path/to/keyfile'
env.host_string = 'host.string'
env.user = 'user'
С этой точки зрения, get('filename')
успешно загружает файл с сервера sftp. Но run('ls')
дает мне:
[host.string] run: ls
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/fabric/network.py", line 647, in host_prompting_wrapper
return func(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/fabric/operations.py", line 1054, in run
shell_escape=shell_escape)
File "/usr/local/lib/python2.7/dist-packages/fabric/operations.py", line 923, in _run_command
stderr=stderr, timeout=timeout)
File "/usr/local/lib/python2.7/dist-packages/fabric/operations.py", line 764, in _execute
channel.get_pty(width=cols, height=rows)
File "/usr/local/lib/python2.7/dist-packages/paramiko/channel.py", line 60, in _check
return func(self, *args, **kwds)
File "/usr/local/lib/python2.7/dist-packages/paramiko/channel.py", line 177, in get_pty
self._wait_for_event()
File "/usr/local/lib/python2.7/dist-packages/paramiko/channel.py", line 1086, in _wait_for_event
raise e
paramiko.ssh_exception.SSHException: Channel closed.
Когда я вручную захожу на сервер sftp, используя те же кредиты, я могу ls
просто хорошо.
Есть идеи? Благодарю.