Service Configuration
medium

Service Configuration Question #019e3a4f

Question Statement
Service Configuration
#cron
#scheduling
#job
#systemd
Medium

O que pode ser usado para criar um job que será executado em horários/datas específicos ou em um cronograma repetitivo?

A

Job

B

CalenderJob

C

BatchJob

D

CronJob

Correct

Official Explanation / Community Explanations

A resposta correta é CronJob. No Linux, CronJob (ou simplesmente cron) é o mecanismo padrão para agendar tarefas para execução em horários, datas específicas ou em um cronograma repetitivo. O daemon cron lê arquivos de configuração (crontabs) que definem jobs com sintaxe de tempo precisa (minuto, hora, dia do mês, mês, dia da semana).

Como funciona:

  • Usuários podem criar crontabs pessoais usando crontab -e.
  • Jobs de cron do sistema são colocados em /etc/crontab ou diretórios como /etc/cron.d/, /etc/cron.hourly/, /etc/cron.daily/, etc.
  • O daemon cron (crond) verifica esses arquivos a cada minuto e executa os jobs correspondentes.
  • Sistemas modernos podem usar timers do systemd como alternativa, mas o cron continua sendo o agendador tradicional e amplamente utilizado.

Por que as outras opções estão incorretas:

  • Job é um termo genérico e não uma ferramenta de agendamento específica do Linux. Pode se referir a qualquer tarefa ou processo em segundo plano.
  • CalenderJob não é um utilitário padrão do Linux; pode ser um erro de digitação ou confusão com agendamento baseado em calendário, mas nenhum comando desse tipo existe.
  • BatchJob geralmente se refere a sistemas de processamento em lote (por exemplo, at para jobs únicos ou batch para agendamento com baixa carga), não a tarefas recorrentes agendadas. O comando at agenda jobs únicos, enquanto batch executa jobs quando a carga do sistema permite, mas nenhum deles lida com cronogramas repetitivos como o cron faz.

Portanto, apenas CronJob descreve corretamente a ferramenta para tarefas agendadas recorrentes no Linux.