Como criar e gerenciar trabalhos de cron no Linux

Como criar e gerenciar trabalhos de cron no Linux

O Cron é uma das ferramentas mais úteis do Linux e um favorito do desenvolvedor, porque permite que você execute comandos automatizados em períodos, datas e intervalos específicos usando scripts de uso geral e específicos de tarefas. Dada essa descrição, você pode imaginar como os administradores do sistema o usam para automatizar tarefas de backup, limpeza de diretórios, notificações etc.

Os trabalhos de Cron são executados em segundo plano e constantemente verifica o /etc/crontab arquivo e o /etc/cron.*/ e /var/spool/cron/ diretórios. Os arquivos Cron não devem ser editados diretamente e cada usuário tem um crontab exclusivo.

Como então você deve criar e editar trabalhos de cron? Com comandos Crontab. O Crontab é o método que você usa para criar, editar, instalar, desinstalar e listar trabalhos de cron.

O comando para criar e editar trabalhos de cron é o mesmo e simples. E o que é ainda mais legal é que você não precisa reiniciar Cron depois de criar novos arquivos ou editar os existentes.

$ CRONTAB -E 

Sintaxe Cron

Assim como é com qualquer idioma, trabalhando com Cron é muito mais fácil quando você entende sua sintaxe e há 2 formatos que você deve saber:

A b c d e nome de usuário/caminho/para/comando arg1 arg2 ou a b c d e nome de usuário/root/backup.sh 

Explicação da sintaxe cron acima:

  • A: minutos faixa: 0 - 59
  • B: Horário faixa: 0 - 23
  • C: Dias faixa: 0 - 31
  • D: meses faixa: 0 - 12
  • E: Dias da semana faixa: 0 - 7. A partir de segunda -feira, 0 ou 7 representa domingo
  • NOME DE USUÁRIO: Substitua isso por seu nome de usuário
  • /caminho/para/comando - O nome do script ou comando que você deseja agendar

Isso não é tudo. Cron usa 3 símbolos do operador que permitem especificar vários valores em um campo:

  1. Asterisco (*): Especifica todos os valores possíveis para um campo
  2. A vírgula (,): Especifica uma lista de valores
  3. Traço (-): Especifica uma gama de valores
  4. Separador (/): Especifica um valor de etapa

Agora que você conhece a sintaxe e os operadores de Cron, vamos ver alguns exemplos de Cron.

Exemplos de emprego de Cron

O primeiro passo para executar comandos CRON é instalar seu crontab com o comando:

# Crontab -e 

Correr /raiz/backup.sh no 3 horas da manhã diariamente:

0 3 * * * /root /backup.sh 

Correr roteiro.sh no 16:30 no segundo de cada mês:

30 16 2 * */caminho/para/script.sh

Correr /scripts/phpscript.php no 22:00 durante a semana:

0 22 * ​​* 1-5 /scripts /phpscript.php

Correr PerlScript.pl no 23 minutos Depois da meia -noite, 2h e 4h, todos os dias:

23 0-23/2 * * */caminho/para/perlScript.pl

Execute o comando Linux às 04:05 todos os domingos:

5 4 * * sol/caminho/para/linuxCommand

Opções de Cron

Listar os trabalhos de Cron.

# Crontab -l ou # Crontab -u UserName -l 

Exclua todos os trabalhos de Crontab.

# Crontab -r 

Exclua o trabalho de Cron para um usuário específico.

# Crontab -R -u Nome de usuário 

Strings em Crontab

As cordas estão entre as coisas favoritas do desenvolvedor, porque ajudam a economizar tempo, eliminando a redação repetitiva. Cron tem strings específicos que você pode usar para criar comandos mais rápido:

  1. @Hourly: Correr uma vez a cada hora eu.e. ““0 * * * *““
  2. @meia-noite: Correr uma vez todos os dias eu.e. ““0 0 * * *““
  3. @diário: o mesmo que meia -noite
  4. @semanalmente: Correr uma vez por semana, eu.e. ““0 0 * * 0““
  5. @por mês: Correr uma vez por mês eu.e. ““0 0 1 * *““
  6. @anualmente: Correr uma vez por ano eu.e. ““0 0 1 1 *““
  7. @anual: igual a @anualmente
  8. @reinício: Correr uma vez em todas as startups

Por exemplo, é assim que backup do seu sistema todos os dias:

@Daily/Path/to/backup/script.sh

Neste ponto, você tem tudo o que precisa para criar e gerenciar tarefas do sistema usando Cron. Agora você pode começar a configurar e manter vários ambientes usando comandos agendados.

Quanto você é usuário cron você? E há algum detalhe que você possa contribuir para o artigo? A caixa de discussão está abaixo.

Quando você entende o suficiente sobre como Crontab funciona, você pode usar esses utilitários de geradores de Crontab bacanas para gerar linhas Crontab gratuitamente.

Além disso, você pode ler o artigo do Ubuntu sobre como usar o Cron aqui. Tem recursos que você pode achar útil.