Script de shell que busca o arquivo com SCP [duplicado]

0

Eu quero construir um script de shell que seja executado diariamente e reproduza um arquivo de outro servidor usando o comando SCP.

O problema é que quando eu digito este comando no terminal, ele me pede senha.

a) Como um script de shells pode digitar a senha?

b) É realmente uma boa ideia armazenar a senha em um shell script?

Exemplo de comando:

scp -r myUser@myServer:/local/java/log/archive/2018/02/16/log.2018-02-16.gz ~/Temp/
    
por Solo 02.03.2018 / 10:10

1 resposta

5

Primeiro passo: definindo um acesso SSH sem senha (via ssh-keygen):

Execute ssh-keygen (você acaba com 2 arquivos: id_rsa e id_rsa.pub, um é sua chave pública .pub para compartilhar com o mundo, a outra é sua chave privada). Em seguida, execute ssh-copy-id myUser@myServer . Basta digitar sua senha quando solicitado e agora você é capaz de SSH sem ter que digitar sua senha para myUser @ myServer.

Segundo passo: scp diário automatizado:

Digite crontab -e , escolha seu editor favorito e adicione uma linha na parte inferior do arquivo: 0 0 * * * scp -r myUser@myServer:/local/java/log/archive/2018/02/16/log.2018-02-16.gz ~/Temp/ save and ... Voilà! (você pode usar uma entrada @daily scp (...) crontab, que é basicamente igual a 0 0 * * *)

Veja o Anacron ( Job scheduling usando o crontab, o que acontecerá quando o computador for desligado durante esse tempo? ) para gerenciar a tarefa do Cron quando seu computador está inativo.

    
por Simon Van Machin 02.03.2018 / 10:33