我正在尝试进行rsync网络复制。我正在使用自制软件的最新版本的rsync。源终端和目标终端都显示:
$ which rsync
/usr/local/bin/rsync
$ rsync --version
rsync version 3.1.3 protocol version 31
我可以成功地从scp
将文件从src转移到目的地:
scp /Users/me/file.txt me@host.local:/Users/me/
但是,如果我尝试使用rsync进行相同操作:
rsync -avihX --progress --stats /Users/me/file.txt me@host.local:/Users/me/
我收到以下错误:
rsync: on remote machine: -vlogDtpXre.iLsfxC: unknown option
rsync error: syntax or usage error (code 1) at /BuildRoot/Library/Caches/com.apple.xbs/Sources/rsync/rsync-52.200.1/rsync/main.c(1337) [server=2.6.9]
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版本不匹配,我都排除了这两种情况。
答案 0 :(得分:1)
消息的“ [server = 2.6.9]”部分表示您正在获得版本不匹配。我不确定确切如何将rsync
命令发送到远程端,但是它并不总是使用交互式获得的同一PATH
(以及版本)。尝试添加--rsync-path=/usr/local/bin/rsync
(或远程计算机上任何用于rsync v3.1.3的适当路径)以强制其使用正确的版本。