【发布时间】:2021-03-10 21:02:47
【问题描述】:
我正在尝试使用 Paramiko 连接远程服务器并将一些文件发送到其他远程服务器。我尝试了下面的代码,但是没有用。我检查了所有连接,用户名和密码参数,它们没有任何问题。我要传输的文件也存在于正确路径的第一个远程服务器中。
我不将文件下载到本地计算机并上传到第二台服务器的原因是,两个远程服务器之间的连接速度要快得多。
我尝试过的事情:
-
我将 paramiko 日志级别设置为调试,但找不到任何有用的信息。
-
我尝试了相同的
scp命令,从命令行从第一台服务器到第二台服务器,效果很好。 -
我尝试在
stdin.flush()行之后通过data = stdout.readlines()登录,但没有记录任何内容。
import paramiko
s = paramiko.SSHClient()
s.set_missing_host_key_policy(paramiko.AutoAddPolicy())
s.connect("10.10.10.10", 22, username='oracle', password='oracle', timeout=4)
stdin, stdout, stderr = s.exec_command(
"scp /home/oracle/myFile.txt oracle@10.10.10.20:/home/oracle/myFile.txt")
stdin.write('password\n')
stdin.flush()
s.close()
【问题讨论】: