Rsync 已安装但仍然出现错误命令未找到

Rsync 已安装但仍然出现错误命令未找到

我正在尝试使用非标准端口将本地文件夹同步到远程服务器,我的 rsync 命令如下:

rsync -avz ~/Research/Folder1/folder2 -e "ssh -p 3345" [email protected]:/home/reusr/folder1/folder2

我收到以下错误:

bash: rsync: command not found
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(226) [sender=3.1.3]

当我跑步时rsync --version我得到

rsync  version 3.1.3  protocol version 31

我不确定为什么command not found会发生该错误或后续错误。

我使用 OSX Maojave 作为本地机器,使用 Debian 服务器作为远程机器。

答案1

你本地的 rsync 需要从 SSH 启动远程 rsync在远程服务器上但无法找到它,因为它可能不在其路径上。

这就是“找不到命令”错误的来源(即,这表示您的本地 rsync 无法从远程计算机上的 SSH 会话中找到远程 rsync 可执行文件)。

您需要找到远程服务器上 rsync 的路径,并将其作为 rsync 参数的一部分。您需要添加的参数是:

--rsync-path=/path/to/remote/rsync

其中 /path/to/remote/rsync 是 rsync 命令在远程服务器上的位置。由于您的远程 rsync 服务器在 Debian 上运行,因此该位置可能是 /usr/bin/rsync

因此你的 rsync 命令变成:

rsync -avz ~/Research/Folder1/folder2 -e "ssh -p 3345" --rsync-path=/path/to/remote/rsync [email protected]:/home/reusr/folder1/folder2

答案2

确保rsync也安装在您尝试访问的远程计算机上。就我而言,我在安装它的本地计算机上遇到了此错误,因为rsync远程服务器上没有安装。

相关内容