Jestem dość zdezorientowany, dlaczego rsync wymaga flagi --rsync-path, nawet jeśli zdalny rsync znajduje się na ścieżce.
Rozważać:
$ 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]
potem próbowałem dodać --rsync-path
$ rsync -avze 'ssh -p 22' --rsync-path=/usr/bin/rsync --delete public/ pmatos@domain.com:~/public_html
sending incremental file list
...
Tak więc pierwszy rsync nie powiódł się, ponieważ szukał rsync w / usr / local / bin, ale jak tylko przejdę oczywistą ścieżkę do rsync za pomocą --rsync-path, to działa.
Dlaczego to? (ten wiersz poleceń jest tym, który został wydany przez rake wdrażania w ośmiornicy)
$ cat ~/.bashrc | grep PATH
nic nie zwraca.
which rsync
co dostajesz?
$ ssh pmatos@domain.com which rsync
powroty/usr/bin/rsync
alias
edytowany w rsync --rsync-path
(lub innym lokalnym opakowaniu)?