Назад | Перейти на главную страницу

rsync требует rsync-path, когда удаленный rsync находится в пути

Я не совсем понимаю, почему rsync требует флаг --rsync-path, даже если удаленный rsync находится в пути.

Рассматривать:

$ 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]

затем я попытался добавить --rsync-path

$ rsync -avze 'ssh -p 22' --rsync-path=/usr/bin/rsync  --delete public/ pmatos@domain.com:~/public_html
sending incremental file list
...

Итак, первый rsync не был успешным, потому что он искал rsync в / usr / local / bin, но как только я передаю очевидный путь для rsync с помощью --rsync-path, он работает.

Почему это? (эта командная строка - та, которую выдает rake deploy в Octopress)

Моя память сейчас довольно нечеткая, но причина, по которой это происходило, заключалась в том, что в какой-то момент я использовал GNU stow на rsync и создал несколько символических ссылок, которые сбивали с толку rsyncрасположение. Это было отсортировано после долгого выдергивания волос. Я стал намного светлее на волосах, но зато у меня есть рабочий rsync. Если вы спросите меня, это должно быть победой.