Fazer com que os crons regulares parem por uma hora por dia - existe uma maneira melhor?

2

Eu tenho um cron job que precisa ser executado a cada 10 minutos, mas não deve ser executado por uma hora a cada noite (das 5 às 6h) enquanto o sistema está inativo para backup.

Pelo que entendi, a seguinte sintaxe deve funcionar em crontab :

*/10 0,1,2,3,4,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23 * * * <command>

Esta não é uma boa solução, existe uma maneira mais eficiente de expressar minhas necessidades ao cron?

Caso seja importante, o servidor está executando o RHEL 5.

    
por Bart B 09.02.2010 / 13:49

2 respostas

12

Cron no RHEL é compatível com listas, por isso você pode fazer isso:

*/10 0-4,6-23 * * *
    
por 09.02.2010 / 14:07
0

Use outro serviço para encerrar o serviço cron durante esse período. Talvez at ?

Embora a ideia de David pareça ... mais simples.

Programe o script de manutenção com o cron - deixe o cronograma de encerramento do script e, no final, reinicie-o novamente. Não importa quanto tempo demore seu script de manutenção, nenhum trabalho irá interferir. Assim que estiver pronto, tudo estará bem de novo e você pode nem ter perdido nada.

Para permitir o script de manutenção crasing, agende uma inicialização do serviço cron com até + x horas.

    
por 09.02.2010 / 14:11

Tags