Formas de pagamento Abuse

Cron em Linux: o que é?

26.02.2023, 13:13

O Cron é um utilitário para agendar tarefas no sistema operativo Linux. Permite-lhe executar scripts ou comandos automaticamente em determinadas alturas, intervalos ou eventos.

Como o utilizar?

Para utilizar o Cron, é necessário criar um ficheiro crontab que contém uma lista de tarefas e intervalos de tempo em que estas devem ser executadas. Cada tarefa no crontab é uma cadeia de caracteres que consiste em cinco campos separados por espaços:

*     *     *     *     *  command_to_execute
-     -     -     -     -
|     |     |     |     |
|     |     |     |     +----- day of the week (0 - 6) (Sunday = 0 or 7)
|     |     |     +------- month (1 - 12)
|     |     +--------- day of the month (1 - 31)
|     +----------- hour (0 - 23)
+------------- minutes (0 - 59)

O * representa qualquer valor, por exemplo, se o campo minutos contiver um *, a tarefa será executada a cada minuto. Se quiser definir um valor específico para um campo, por exemplo, todos os dias às 3 da manhã, deve escrever 0 3 * * * * *.

Para criar ou modificar um ficheiro crontab, utilize o comando crontab -e. Cada utilizador pode ter o seu próprio ficheiro crontab, bem como o ficheiro de sistema /etc/crontab, que contém tarefas que são executadas como utilizador root.

Existe um comando cronjob que permite executar tarefas dentro de contentores Docker. Funciona de forma semelhante ao crontab, mas as tarefas podem ser executadas dentro do contentor em vez do sistema anfitrião.

Usando o Cron: um algoritmo passo a passo

Para começar a usar o Cron no Linux, siga estes passos:

1. abra um terminal e digite o comando crontab -e. Isto irá abrir o ficheiro crontab para o utilizador atual.

2. Adicione uma tarefa ao ficheiro crontab de acordo com o formato do campo descrito acima. Por exemplo, se quiser executar o script every_hour.sh a cada hora, adicione a linha 0 * * * * * * * /path/to/every_hour.sh.

3. Salve suas alterações e feche o arquivo.

4. Verifique se a tarefa foi adicionada ao crontab usando o comando crontab -l. Ele exibirá uma lista de todas as tarefas adicionadas ao crontab.

5. Verifique se a tarefa está a ser executada conforme programado utilizando o comando tail -f /var/log/syslog. Verá a saída relacionada com a execução da tarefa.

6. Se quiser remover uma tarefa da crontab, use o comando crontab -r.

Há alguns pontos importantes a ter em conta:

  • você pode adicionar tanto scripts quanto comandos ao crontab. Mas se quiser executar um script, certifique-se de que ele tem permissões de execução(chmod +x /caminho/para/script.sh).
  • se quiser que a tarefa seja executada com direitos de utilizador root, utilize o comando sudo crontab -e para abrir o ficheiro crontab para o utilizador root.
  • certifique-se de que os comandos e scripts que executa estão na localização correta e têm as permissões de leitura e execução corretas.

Note que a hora especificada no crontab corresponderá à hora do servidor que está a executar o Cron. Se estiver a utilizar um servidor remoto, certifique-se de que a hora no servidor está configurada corretamente.