在脚本中使用 SCP 命令随机“连接被拒绝”

在脚本中使用 SCP 命令随机“连接被拒绝”

我正在使用 SCP 将文件从云中的 VPS 备份到我的 PC。在备份脚本的早期版本中,有一个 SCP 命令可以备份服务器根目录中的所有内容。这工作完美无缺..

然而,随着服务器的增长,它开始变大,因此我正在更改脚本以在特定目录(大约十几个)上运行 SCP 命令。现在,一些单独的 SCP 命令随机失败,并显示“连接被拒绝”。但脚本中的下一个 SCP 命令有效...我在每个 SCP 命令之间添加了 5 秒的延迟,以防某处出现一些限制,但这还不够。

可能是什么原因造成的?我可以检查什么?

netstat脚本运行后在服务器上显示来自我的 IP 的多个 ssh 连接(当然包括要发出的连接netstat,但这只是其中之一?)。

如果重要的话,服务器运行的是 Ubuntu Server 16.04,而我的电脑运行的是 Ubuntu 14.04。

答案1

很可能您的 VPS 提供商(或您自己的服务器)限制了 ssh 连接的速率。一旦超过速率限制,您的连接将被拒绝。

[更新]

如果此限制在您的 VPS 提供商方面,您可以通过ssh -L 2222:localhost:22 user@vps在脚本持续时间内建立到您的服务器的 ssh 隧道(即 )来克服它,然后仅通过此隧道进行 scp-ing(即通过localhost:2222我提供的隧道) 。

相关内容