rsync requiere rsync-path cuando rsync remoto está en ruta

11

Estoy bastante confundido en cuanto a por qué rsync requiere --rsync-path flag incluso cuando rsync remoto está en ruta.

Considerar:

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

entonces intenté agregar --rsync-path

$ rsync -avze 'ssh -p 22' --rsync-path=/usr/bin/rsync  --delete public/ [email protected]:~/public_html
sending incremental file list
...

Entonces, el primer rsync no tuvo éxito porque estaba buscando rsync en / usr / local / bin pero tan pronto como paso la ruta obvia para rsync usando --rsync-path, entonces funciona.

¿Por qué es esto? (esta línea de comando es la emitida por rake deploy en octopress)

Paulo Matos
fuente
¿Tiene algún comando forzado en el extremo de destino? ¿Algo en el .bashrc o .profile que pueda establecer una variable de entorno local?
SmallClanger
$ cat ~/.bashrc | grep PATHno devuelve nada
Paulo Matos
Si solo te sientes y corres, which rsync¿qué obtienes?
SmallClanger
2
$ ssh [email protected] which rsyncregresa/usr/bin/rsync
Paulo Matos
Extraño. Aferrándose a las pajitas, ahora: ¿Tal vez su rsync local está aliaseditado rsync --rsync-path(o algún otro contenedor local)?
SmallClanger

Respuestas:

2

Mi memoria ahora es bastante borrosa, pero la razón por la que esto sucedía fue que usé GNU stow en rsync en algún momento y creé algunos enlaces simbólicos que confundían rsyncla ubicación. Esto se solucionó después de muchos tirones de pelo. Ahora soy mucho más ligero en el cabello pero por otro lado tengo un trabajo rsync. Eso debe ser una victoria si me preguntas.

Paulo Matos
fuente