Use a função mirror e um cron para acioná-lo repetidamente.
Coloque isso em um script (por exemplo, ~/push_to_server.sh
):
cd [PATH_THAT_YOU_WANT_TO_COPY]
lftp -c "open [HOST] -u [USER],[PASSWORD]; mirror -R [PATH_ON_SERVER]"
Você quer procurar as funções '-e' e '-P' do lftp mirror em seu manual ( man lftp
) e pode usá-las junto com -R
.
Agora você ativa esse script a cada poucos minutos com o cron. Execute crontab -e
e adicione:
*/5 * * * * ~/push_to_server.sh
Isso iniciará o script a cada 5 minutos (leia man 5 crontab
para entender o que o 5 e os asteriscos estão realmente fazendo antes de alterá-los). Certifique-se de apontar para o caminho real do script, caso você o tenha movido ou esteja executando o crontab como um usuário diferente.
Se a sua sincronização de ftp demorar mais que 5 minutos (nos horários de pico), você terá que alterar o cron. Leia man 5 crontab
para aprender como fazer isso.