Como podemos copiar um arquivo de um servidor para outro no cron

3

Alguém pode me informar como podemos copiar um arquivo de um servidor para outro em um cron. Eu sei sobre scp , mas como nós o usamos em um cron, já que precisamos passar a senha.

Editado

Encontrei este link Espero que o script entre com um nome de usuário e senha

Alguém pode me ajudar a fazer assim. Eu sou extremamente novo no Ubuntu,

    
por Pramod 21.04.2014 / 12:52

1 resposta

2

Você tem duas opções principais:

  1. O ruim: use algo como pscp , que permite enviar a senha. De man pscp :

      -pw password
          Set  remote password to password. CAUTION: this will likely make
          the password visible to other users of the  local  machine  (via
          commands such as 'w').
    

    This will require you to have the password in the crontab file, which is a simple text file and that is not a good idea. On my Debian, with pscp 0.63, the password is actually masked in the output of w and ps &co but based on the man page quoted above, you cannot assume that will always be the case.

  2. O melhor: configurar ssh sem senha para o usuário que precisa executar o scp comando. Se você não quiser fazer isso para seu usuário normal, basta criar um novo usuário e executar o crontab como esse usuário.

Alternativamente, você pode configurá-lo ao contrário. Em vez de ter um usuário em machineA copiando um arquivo de machineB, solicite que um usuário em machineB copie o arquivo para machineA.

Sim, você pode fazer isso com um script expect , mas os mesmos problemas de segurança serão aplicados se você quiser incluir a senha no script.

    
por terdon 21.04.2014 / 13:48