Saya cukup bingung mengapa rsync memerlukan flag --rsync-path bahkan ketika remote rsync ada di path.
Mempertimbangkan:
$ rsync -avze 'ssh -p 22' --delete public/ [email protected]:~/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]
kemudian saya mencoba menambahkan --rsync-path
$ rsync -avze 'ssh -p 22' --rsync-path=/usr/bin/rsync --delete public/ [email protected]:~/public_html
sending incremental file list
...
Jadi, rsync pertama tidak berhasil karena sedang mencari rsync di / usr / local / bin tetapi segera setelah saya melewati jalan yang jelas untuk rsync menggunakan --rsync-path, maka ia berhasil.
Kenapa ini? (baris perintah ini adalah yang dikeluarkan oleh rake deploy di octopress)
$ cat ~/.bashrc | grep PATH
tidak mengembalikan apa pun.which rsync
apa yang Anda dapatkan?$ ssh [email protected] which rsync
kembali/usr/bin/rsync
alias
ed kersync --rsync-path
(atau beberapa bungkus lokal lainnya)?Jawaban:
Ingatan saya sekarang cukup kabur tentang ini tetapi alasan ini terjadi adalah karena saya menggunakan GNU stow on rsync di beberapa titik dan membuat beberapa symlink yang membingungkan
rsync
lokasi. Ini disortir setelah banyak menarik rambut. Saya sekarang jauh lebih ringan pada rambut tetapi di sisi lain saya punya pekerjaanrsync
. Itu pasti menang jika kau bertanya padaku.sumber