CronJob para copiar um diretório em um servidor remoto

1

Eu preciso criar um Cronb que será executado diariamente no meu servidor e será enviado para um servidor remoto com um nome de usuário e senha. Ele irá copiar um diretório no servidor e copiá-lo em um diretório no meu servidor. Então eu quero que os arquivos sejam apagados no servidor remoto.

Alguém pode me ajudar com isso?

    
por Juan Ducos 12.05.2016 / 19:27

2 respostas

1

Use o seguinte comando para editar seu cron job:

crontab -e

Em seguida, adicione o seguinte ao final:

0 0 * * * lftp -u username,password -e "your command;quit" ftp.site.com

Obviamente, você deve instalar o pacote lftp antecipadamente.

    
por Mahdi 12.05.2016 / 19:36
1

Use crontab -e para abrir seu arquivo crontab. Em seguida, adicione:

0 3 * * * rsync -raz --remove-source-files 'user:password@remotehost:/directory/to/copy' '/local/destination/directory/'

Isto diz ao cron para executar este comando todos os dias às 3:00. Ajuste os primeiros 5 parâmetros ( 0 3 * * * ) conforme necessário para ajustar o tempo de execução e com que frequência ele é executado

O comando rsync faz o seguinte:

  1. -r : recursivamente, ou seja, obtém tudo no diretório de origem e nos diretórios sob ele
  2. -a : archive, isto é, mantenha o máximo possível de informações de origem sobre o arquivo
  3. -z : comprima os dados na fonte antes de enviá-la
  4. --remove-source-files : Remova os arquivos no sistema de origem (o sistema remoto, neste caso), depois de concluído
por Mitch 12.05.2016 / 19:39