A favor de Cron
- Uma entrada de linha simples / etc / crontab e seu trabalho está configurado para executar
A favor do systemd
- Ambiente de tempo de execução consistente com o mesmo conjunto de variáveis de ambiente. Isso resolve um problema comum com tarefas Cron: Elas são executadas bem em um ambiente e não no cron, porque diferentes PATH ou outros valores no ambiente.
- Melhor registro!
systemd
captura STDOUT e STDERR do seu trabalho e os armazena no diário do systemd. - Melhor status do trabalho. Você pode usar
systemctl status your-service
para verificar o status do que você executou. Fora dos logs de combing, o cron não oferece uma maneira estruturada de consultar o status do serviço. - Melhor status do timer. Use
systemctl list-timers
para obter um resumo dos cronômetros ativados e ver quando eles foram executados pela última vez e quando serão executados na próxima vez.
Em resumo
Os temporizadores Systemd têm alguma sobrecarga para aprender e configurar, mas fornecem vários benefícios. Há alguns pacotes como systemd-cron
e systemd-cron-next
que permitem que você tenha cron
entradas convertidas em systemd-timers
, para tentar fornecer a melhor solução dos dois mundos