grsync 不会在 rsync 命令中重现引号,因此永远不会要求输入密码

grsync 不会在 rsync 命令中重现引号,因此永远不会要求输入密码

当运行 grsync 将本地文件传输到远程服务器时,程序只是静静地待在那里什么也不做。不幸的是,它从不要求我输入远程系统密码。

操作系统是 Ubuntu 18.04.4 LTS。grsync 是 1.2.6。

当从提示符运行 rsync 时(通过使用 grsync 的 alt-r“rsync 命令行”,并将指示的命令复制到终端窗口中的提示符),显示的即时错误(即没有超时)是:

ssh: connect to host remotehost-name port 22: Connection refused
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: unexplained error (code 255) at io.c(235) [sender=3.1.2]

奇怪的是,我没有指示 rsync 使用端口 22。事实上,这是我的 grsync 命令:

rsync -r -t -v --progress --delete -z -s -e ssh -p 7822 --exclude .* /local-path/local-directory/ login@remote-server:path/directory

据我所知,rsync 应该使用端口 7822,如命令中所示。进一步检查后,我发现 grsync 未正确生成 rsync 命令。根据我设置 grsync 的具体方式,它应该生成一个包含以下内容的命令引号, 像这样:

rsync -r -t -v --progress --delete -z -s -e "ssh -p 7822" --exclude ".*" /local-path/local-directory/ login@remote-server:path/directory

此命令在提示符下运行时会导致密码请求。

为什么 grsync 不包含引号?在 grsync 的“高级选项”选项卡中,我已经添加了引号!在那里,我写了以下内容:

-e "ssh -p 7822" --exclude ".*" 

问题是什么?如何解决?

相关内容