![问题 1:](https://linux22.com/image/724648/%E9%97%AE%E9%A2%98%201%3A.png)
我想将 rync 运行到具有未清理 shell 的远程服务器。如果有人尝试通过 ssh shell 连接它,它会显示一些警告。由于这个问题,我无法复制文件。
protocol version mismatch -- is your shell clean?
(see the rsync man page for an explanation)
rsync error: protocol incompatibility (code 2) at compat.c(178) [sender=3.1.2]
问题 1:
有什么办法可以在未清理的 shell 上运行 rsync 吗?
然后我尝试使用干净的 shell。我删除了所有警告消息,然后使用 rsh 命令进行验证。
rsh -i key -p 2022 remotehost@user > output
没有数据且其大小为 0。
然后我尝试进行同步,现在出现以下错误。
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(235) [sender=3.1.2]
问题2:
清理之后,仍然出现错误,是什么原因呢?
rsync 命令
rsync -avz --progress -e "ssh -p 2022 -i mykey.pem" /tmp/test/ [email protected]:/tmp/
谁可以帮我这个事?
我之前忘了提这件事了。我已经启用了 SSH 会话记录。
答案1
为什么你首先提到命令“rsh”,然后又提到命令“ssh”?这有什么原因吗?
此命令不应该生成一个空文件,它应该启动一个交互式 shell 并等待输入。
ssh -i key -p 2022 remotehost@user > 输出
您的登录 shell 似乎立即终止,消息支持这一点0 bytes received
。您在从 shell 中删除输出时是否在某处放置了“退出”?