rsync usando login keygen no script bash

1

Por isso, configurei um login ssh sem senha para um servidor. Eu posso executar o rsync a partir da linha de comando, e ele funciona lindamente, e não me pede uma senha:

rsync -avz -e ssh myDir [email protected]:/place/myDir

No entanto, quando coloco isso em um script bash e executo o script, ele para para me pedir uma senha.

#!/bin/bash

rsync -avz -e ssh myDir [email protected]:/place/myDir

Por que isso está acontecendo? O que devo procurar para impedir isso?

    
por MirroredFate 08.10.2014 / 20:01

3 respostas

2

Pode ser necessário adicionar o caminho ao seu arquivo de identidade assim:

rsync -avz -e "ssh -i /home/user/.ssh/id_rsa" myDir [email protected]:/place/myDir
    
por 08.10.2014 / 20:25
1

Você precisa fornecer seu agente ssh. Eu uso chaveiro para isso.

link

    
por 08.10.2014 / 20:06
0

Eu gosto de configurar o ssh em um arquivo de configuração - ~ / .ssh / config

Parece que isso

Host xxx-master
HostName X.X.X.X
User user
IdentityFile ~/.ssh/xxx_id_rsa
ControlMaster yes
ControlPath ~/.ssh/xxx_ctrl_path

Host xxx
HostName X.X.X.X
User user
ControlPath ~/.ssh/xxx_ctrl_path

Então eu ssh xxx-master e ele me pede a senha. Enquanto eu continuo logado no xxx-master, posso ssh xxx sem uma frase secreta.

Isso é melhor que o agente ssh? Eu não sei. Eu uso esse método porque eu não descobri o ssh-agent.

    
por 09.10.2014 / 01:22

Tags