Recently, I haven't been able to transfer files between two shell accounts using rsync and scp. Today, I decided to tackle the problem. When I issue rsync from one server, I get the following error message:
unexpected tag 94
From the other server, I get the following error message:
protocol version mismatch - is your shell clean?
Very particular problems indeed. I search on the web but got no viable results. But I remembered recently that I had installed the TimeOutNotify.sh (GPL) script. After removing the script from my startup file, the transfer worked just fine.
I guess my startup scripts needs to be a little smarter. Only run the TimeOutNotify.sh script when I log in, but not when rsync and scp log in. But I have no clue how to do that yet . . . anyone?
Ok, I figured it out. To determine if the shell is interactive, you can check the $- variable. If the content of the variable includes the character 'i', then the shell is interactive. See the following example:
interactive=`echo $- | grep -c "i"`
I bumped into this problem again today. I got the "protocol version mismatch" error again. But luckily this time, I knew exactly what I did to cause it. I place "echo" calls inside my ".cshrc". Apparently, rsync can't handle any outputs to stdout. I guess I'll have to use the interactive flag all over.
Did your message disappear? Read the Forums FAQ.
TrackBack only accepted from WebSite-X Suite web sites. Do not submit TrackBacks from other sites.
Title: rsync with server on non-standard SSH port
Title: RelayTransfer.sh (GPL)
Spam Control | * indicates required field
Messages, files, and images copyright by respective owners.
83 Users Online
Copyright © 2004 - 2021. All Rights Reserved.