rsync requer rsync-path quando rsync remoto está no caminho

11

Estou bastante confuso sobre o motivo pelo qual o rsync requer o sinalizador --rsync-path, mesmo quando o rsync remoto está no caminho.

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]

então eu tentei adicionar --rsync-path

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

Portanto, o primeiro rsync não foi bem-sucedido porque estava procurando por rsync em / usr / local / bin, mas assim que eu passo pelo caminho óbvio para o rsync usando --rsync-path, ele funciona.

Por que é isso? (esta linha de comando é a emitida pelo rake deploy no octopress)

Paulo Matos
fonte
Você tem algum comando forçado no destino final? Alguma coisa no .bashrc ou .profile que possa definir uma variável de ambiente local?
SmallClanger 17/10/12
$ cat ~/.bashrc | grep PATHnão retorna nada.
Paulo Matos
Se você apenas derramar em si mesmo e executar which rsynco que recebe?
SmallClanger 17/10/12
2
$ ssh [email protected] which rsyncretorna/usr/bin/rsync
Paulo Matos
Esquisito. Agarrando em palhas, agora: é talvez o seu rsync local aliased para rsync --rsync-path(ou algum outro invólucro local)?
SmallClanger 17/10/12

Respostas:

2

Minha memória está agora bastante confusa nisso, mas a razão pela qual isso estava acontecendo era que eu usei o GNU stow no rsync em algum momento e criei alguns links simbólicos que confundiam rsynca localização do s. Isso foi resolvido depois de muito puxar o cabelo. Agora sou muito mais leve com os cabelos, mas por outro lado tenho um trabalho rsync. Isso deve ser uma vitória se você me perguntar.

Paulo Matos
fonte