我尝试在无法控制 ssh-config 文件的共享服务器上运行 rsync 以防止由于连接断开而导致管道损坏错误。
这是我用来备份的代码片段
rsync -avz --blocking-io --delete-after --exclude 'mail*' /home user@remote:./backup/monthly/
Run Code Online (Sandbox Code Playgroud)
使用它可以正常工作约 10 分钟。,管道损坏错误似乎告诉我我失去了连接......可能是因为 rsync 通过 SSH 在空闲状态下运行,所以 SSH 认为我在 rsync 运行时没有做任何事情。
我试过使用和不使用 --blocking-io 但连接仍然下降。在没有访问 ssh-config 文件的情况下,他们有什么技巧可以让 SSH 会话保持活动状态直到 rsync 完成?
这可以在您运行 OpenSSH 的情况下发挥作用。
编辑您的~/.ssh/config文件并添加以下内容,以仅为您的用户以及连接到的所有主机激活保持活动系统。
如果您只想对一台主机执行此操作,请*使用您选择的主机名进行切换。
Host *
ServerAliveInterval 300
ServerAliveCountMax 2
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10922 次 |
| 最近记录: |