rsync: não é possível se livrar do prompt de senha

5

Estou tentando executar o rsync para copiar arquivos (Centos 5.2 - > Centos 5.2) e preciso executá-lo usando o nohup para que ele possa ser executado depois que eu desconectar minha sessão ssh. O problema é que não consigo fazer o rsync não solicitar um passowrd e não consigo fazer o nohup funcionar bem com o prompt de senha.

rsync -v -r -x --password-file=/root/password.txt /sourcedir/ [email protected]:/destdir

Eu tentei configurar a variável RSYNC_PASSWORD para a senha e criar um arquivo com a senha e usando --password-file, mas nesses casos eu ainda recebo o prompt pedindo a senha.

Como faço para rsync a senha que precisa para ele será executado feliz?

    
por DrStalker 06.07.2010 / 10:27

3 respostas

10

Você pode usar a autenticação de chave pública / pricativa.

Gere um par de chave pública / privada com

ssh-keygen -t rsa

copie dsa.pub para o arquivo .ssh / authorized_keys no seu diretório home no host de destino.

    
por 06.07.2010 / 10:38
6

O problema é que RSYNC_PASSWORD, bem como - arquivo de senha apenas, é aplicável ao conectar-se diretamente a um servidor rsyncd, não ao gerar o rsync usando um shell remoto, como o ssh. Suas escolhas são, dependendo dos dados que você está transferindo, para configurar chaves ssh sem senha ou começar a usar um daemon rsyncd.

(Observe que, se você se conectar diretamente a um rsyncd, seus dados serão transferidos sem criptografia.)

    
por 06.07.2010 / 12:28
3

Como alternativa, você pode usar a tela em vez de nohup. Funciona assim:

  • digite screen
  • você será presenteado com um novo terminal
  • inicie seu comando que levará uma eternidade, o comando rsync no seu caso.
  • desconecte-se do terminal de tela com ctrl-a , seguido por d
  • você pode sair agora ou fazer outras coisas, seu terminal de tela continuará fazendo suas coisas
  • você pode se reconectar a tela, digitando screen -r , esta alose funciona de outra conexão tty ou ssh ou qualquer outra coisa.
por 06.07.2010 / 11:32

Tags