Repetição da senha enquanto os arquivos rsync-ing?

1

Estou usando um script para fazer o download de arquivos em duas etapas:

  1. Primeiro, estou baixando um arquivo contendo uma lista de arquivos de um servidor para minha máquina host usando rsync .
  2. Então, estou usando rsync para baixar os arquivos reais (bastante) fornecidos na lista do servidor para o meu computador host.

O problema é que o script está solicitando a senha regularmente, por exemplo, ele continua pedindo a senha da minha conta no servidor. Os arquivos estão sendo baixados sem qualquer problema, então estou supondo que o loop for está causando o problema, já que ele está solicitando a senha durante o download de todos os arquivos da lista do servidor.

Se eu estiver correto, então o que poderia ser uma solução possível para que o script peça a senha apenas uma vez? se eu estiver errado, por favor, corrija-me.

OBSERVAÇÃO: BTW, autenticação baseada em chave não é permitida.

#!/bin/bash

rsync --partial -z --remove-source-files server:~/list ~/.

for i in $(cat ~/list)
do
  rsync --partial -z server:/some/location/$i ~/someplace/$i
done
    
por heemayl 06.12.2014 / 03:33

1 resposta

1

Sua teoria parece certa para mim. Cada vez que o loop for for executado quando você invocar rsync , ele será reconectado ao servidor e fará com que você seja solicitado novamente.

Em vez de percorrer o arquivo, ~/list usando for , você poderia fornecer essa lista diretamente para rsync usando a opção --files-from= .

Exemplo

$ rsync --partial -z --files-from=/some/list server:/some/location/ ~/someplace/
    
por 06.12.2014 / 03:50