/usr/bin/ssh not found when rsync is executed within rsnapshot

Paul Slootman paul+rsync at wurtel.net
Mon Feb 10 02:44:58 MST 2014


On Mon 10 Feb 2014, Lorenz wrote:

> grep -v "#" /etc/rsnapshot | grep [a-z]
> i.e. the /etc/rsnapshot minus the comments and the empty lines:

I'd recommend using 'grep .' to find non-empty lines... shorter and more
accurate :-)

> rsync_long_args	-ev --rsync-path=/home/backupuser/rsync-wrapper.sh

-e is the short version of --rsh so I don't know what you're trying to
do here... use the 'v' command instead of (the default) ssh? Probably not.

> /usr/bin/rsync -av -ev --rsync-path=/home/backupuser/rsync-wrapper.sh \
>     --rsh="/usr/bin/ssh -i /home/backupuser/.ssh/id_rsa" backupuser at debx40:/ \
>     /media/extfp/Backup/rsnapshot/test/hourly.0/debx40/
> rsync: Failed to exec /usr/bin/ssh -i /home/backupuser/.ssh/id_rsa: No such file or directory (2)

Besides the extraneous -e option this should work.
The error message is a bit misleading though.

Make sure that there are no "wrong" whitespace characters in there.
I've fallen into the trap of copy&pasting commands / configs from
websites and having them fail mysteriously, until I noticed I could not
left-shift those lines in vim with << . Those leading spaces were not
spaces but "no-break spaces", hex value 0x80.

So check your config / scripts with "LANG=C cat -v /etc/rsnapshot" etc.

> What could be the reason? How could i debug this?

I often use "strace -f -e execve command ..." and / or
"strace -f -e execve command ..." in such cases to see what
it is really trying to run.

Paul


More information about the rsync mailing list