Intenção de crontab cron.d vs root

1

Em uma incrível demonstração de pedantismo, um colega de trabalho e eu temos argumentado por dias literais sobre o uso pretendido dos vários lugares para uma crontab para viver.

No centro da questão, há um script de backup que usamos para enviar arquivos aos nossos clientes de seus dados. Alguns querem que semanalmente e outros queiram exatamente em determinado dia de cada mês - então nosso crontab atual é bastante longo. O utilitário em si não é nada exótico, apenas um pequeno script de nó que é acionado periodicamente com diferentes conjuntos de id de clientes passados para ele.

Com todos eles sendo funcionalmente iguais, qual é o local mais correto para um utilitário colocar seu crontab?

  • Na tabela pessoal de usuários raiz ( sudo crontab -e )
  • Em /etc/crontab ou /etc/cron.d

TL: DR; Qual é o uso pretendido dos vários locais cron? E onde deve o cronograma para um utilitário que precisa ser executado sem interação humana?

    
por John Jones 09.03.2017 / 02:34

2 respostas

2

Como este é um trabalho que é uma função do sistema, eu diria que use um crontab do sistema. Quanto a qual, eu não acho que há realmente qualquer distinção e eu não vi nenhuma direção, mesmo o FSH tem pouco a dizer. Em um sistema CentOS 7 eu tenho que entregar man crontab (5) diz

Jobs in /etc/cron.d/
The jobs in cron.d and /etc/crontab are system jobs, which are used usually for more than one user, thus, additionaly the username is needed. MAILTO on the first line is optional.

Eu usaria /etc/cron.d

    
por 09.03.2017 / 07:49
0
Eu pessoalmente prefiro fazer coisas como is the English way respondidas, mas no interesse da justiça e tal eu me sinto obrigado a compartilhar que eu importunei Paul Vixie (uma autoridade tão alta quanto eu pude pensar) sobre isso. Sua resposta foi que isso pertence ao crontab pessoal da raiz.

Me: - system cron (/etc/crontab or abstractions of it) vs root's personal crontab.

P Vixie: ah. in that case, put it in root's personal crontab, and try to use the system crontab for just OS things (that is, don't modify it at all.)

    
por 10.03.2017 / 22:31

Tags