我正在考虑使用 rsync 在 2 台 OSX 机器 (MBP) 之间同步文件。
通过自制软件在两个 MBP 上安装最新的 rsync(我检查过 3.1.3)后,我尝试在旧的 MBP 上执行以下命令:
rsync -vahEPzXe ssh foo [email protected]:~/.
但它返回:
rsync: on remote machine: -vlogDtpXrze.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]
然后我放弃了 -X 选项,它起作用了。
rsync -vahEPze ssh foo [email protected]:~/.
...
sent 1.29G bytes received 197.52K bytes 12.62M bytes/sec
total size is 1.66G speedup is 1.28
我使用标签来管理文件,如果没有 -X 选项,它们不会被保留,所以现在我有麻烦了。
谁能帮我解决这个问题或建议任何其他同步标签信息的方法?
谢谢!
这听起来像是在运行不支持的内置 rsync (v2.6.9)
-X
(它确实支持传输扩展属性,但使用不同且不兼容的格式)。您可以强制它在远程端使用 v3 之类的东西--rsync-path=/usr/local/bin/rsync
(或远程计算机上 v3 的任何正确文件路径)。