Tôi khá bối rối về lý do tại sao rsync yêu cầu cờ --rsync-path ngay cả khi rsync từ xa nằm trong đường dẫn.
Xem xét:
$ rsync -avze 'ssh -p 22' --delete public/ pmatos@domain.com:~/public_html
bash: /usr/local/bin/rsync: No such file or directory
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: remote command not found (code 127) at io.c(601) [sender=3.0.7]
sau đó tôi đã thử thêm --rsync-path
$ rsync -avze 'ssh -p 22' --rsync-path=/usr/bin/rsync  --delete public/ pmatos@domain.com:~/public_html
sending incremental file list
...
Vì vậy, rsync đầu tiên không thành công vì nó đã tìm kiếm rsync trong / usr / local / bin nhưng ngay khi tôi vượt qua đường dẫn rõ ràng cho rsync bằng cách sử dụng --rsync-path, thì nó hoạt động.
Tại sao lại thế này? (dòng lệnh này là dòng được phát hành bởi triển khai cào trong bạch tuộc)
$ cat ~/.bashrc | grep PATHtrả lại không có gì.
                which rsyncnhững gì bạn nhận được?
                $ ssh pmatos@domain.com which rsynctrở về/usr/bin/rsync
                aliasphù hợp với rsync --rsync-path(hoặc một số trình bao bọc cục bộ khác)?