Especificando um shell alternativo com rsync

0

Estou usando o rsync para sincronizar arquivos entre dois computadores. Em uma máquina, meu shell padrão é configurado para fish, o que quebra o rsync ("incompatibilidade de versão do protocolo - o shell está limpo?").

Existe uma maneira de dizer ao rsync para usar / bin / sh em vez do shell de login padrão?

    
por Drew DeVault 22.11.2013 / 21:55

1 resposta

1

Eu vejo isso na minha página man do rsync :

DIAGNOSTICS

rsync occasionally produces error messages that may seem a little cryptic. The one that seems to cause the most confusion is "protocol version mismatch -- is your shell clean?".

This message is usually caused by your startup scripts or remote shell facility producing unwanted garbage on the stream that rsync is using for its transport. The way to diagnose this problem is to run your remote shell like this:

ssh remotehost /bin/true > out.dat

then look at out.dat. If everything is working correctly then out.dat should be a zero length file. If you are getting the above error from rsync then you will probably find that out.dat contains some text or data. Look at the contents and try to work out what is producing it. The most common cause is incorrectly configured shell startup scripts (such as .cshrc or .profile) that contain output statements for non-interactive logins.

    
por 22.11.2013 / 22:08