Skip to content

Como editar o arquivo Linux Crontab para agendar trabalhos

6 de abril de 2021

O que saber

  • Exibir o conteúdo do crontab com: crontab -l
  • Edite o crontab com: crontab -e
  • O tempo funciona com: minuto, hora, dia do mês, mês, dia da semana. Use um asterisco (*) para executar o cron todos os dias, horas, etc.

Este artigo explica como usar o cron, que é um daemon no Linux que executa processos em intervalos regulares. Ele verifica certas pastas em um sistema em busca de scripts para rodar em uma série de pastas, incluindo /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly e /etc/cron.monthly; há também um arquivo chamado / etc / crontab.

Colocar Scripts em Pastas Cron

Coloque os scripts nas pastas relevantes para que sejam executados em intervalos regulares. Por exemplo, abra uma janela de terminal e execute o seguinte comando ls: ls / etc / cron *

type = “code”> O comando lista os programas ou scripts que são executados de hora em hora, diariamente, semanalmente e mensalmente.

Lista cron do Linux

Essas pastas são vagas. Por exemplo, diariamente significa que o script é executado uma vez por dia, mas você não tem controle sobre o tempo em que o script é executado naquele dia. É aí que entra o arquivo crontab. Ao editar o arquivo crontab, você executa um script ou programa na data e hora exatas em que deseja que ele seja executado.

Permissões

O comando crontab requer que um usuário tenha permissão para editar um arquivo crontab. Existem dois arquivos que gerenciam as permissões do crontab: /etc/cron.allow e /etc/cron.deny.

  • Se o arquivo /etc/cron.allow existir, o usuário que deseja editar o arquivo crontab deve estar listado nesse arquivo.
  • Se o arquivo cron.allow não existir, mas houver um arquivo /etc/cron.deny, o usuário não deve existir nesse arquivo.
  • Se ambos os arquivos existirem, o arquivo /etc/cron.allow substitui o arquivo /etc/cron.deny.
  • Se nenhum arquivo existir, depende da configuração do sistema se um usuário pode editar o crontab.

O usuário root sempre pode editar o arquivo crontab. Você pode usar o comando su para alternar para o usuário root ou o comando sudo para executar o comando crontab.

Edite o arquivo Crontab

Cada usuário com as permissões apropriadas pode criar um arquivo crontab. O comando cron procura todos os arquivos crontab e é executado em cada arquivo. Para verificar se você tem um arquivo crontab, execute o seguinte comando: crontab -l

type = “code”> Se você não tiver um arquivo crontab, a mensagem sem crontab para aparecer, caso contrário, seu arquivo crontab será exibido. Esta funcionalidade difere de sistema para sistema. Às vezes, ele não exibe absolutamente nada, e outras vezes exibe Não edite esse arquivo.

Lista de crontab do Linux

Para criar ou editar um arquivo crontab, execute o seguinte comando: crontab -e

type = “code”> O arquivo que abre contém muitas informações, mas a parte principal é o exemplo antes do final da seção de comentários (os comentários são indicados por linhas que começam com #). # mh dom mon dow comando

type = “code”> 0 5 * * 1 tar -zcf /var/backups/home.tgz / home /

type = “código”>

Linux editar crontab

Existem seis informações para caber em cada linha do arquivo crontab:

  • O minuto do dia em que o comando deve ser executado (m).
  • A hora do dia em que o comando deve ser executado (h).
  • O dia do mês em que o comando deve ser executado (dom).
  • O mês em que o comando deve ser executado (seg).
  • O dia da semana em que o comando deve ser executado (dow).
  • O comando.

Para cada item (exceto para o comando), você pode especificar um caractere curinga. Veja o seguinte exemplo de linha crontab: 30 18 * * * tar -zcf /var/backups/home.tgz / home /

type = “code”> Aos 30 minutos, 18 horas e qualquer dia, mês e dia da semana, esta entrada do crontab compactará e tar o diretório inicial para a pasta / var / backups. Nos exemplos abaixo, substitua a palavra comando pelo comando que deseja executar. Para que um comando seja executado 30 minutos após cada hora, execute o seguinte comando: 30 * * * * command

type = “code”> Para que um comando seja executado a cada minuto após as 18h, execute o seguinte comando: * 18 * * * command

type = “code”> Você, portanto, deve ter cuidado ao configurar os comandos crontab. Por exemplo: * * * 1 * command

type = “code”> Este comando é executado a cada minuto de cada hora de cada dia de cada semana em janeiro. Para executar um comando às 5h do dia 1º de janeiro, digite o seguinte comando no arquivo crontab: 0 5 1 1 * comando

type = “código”>

Como remover um arquivo Crontab

Na maioria das vezes, você não vai querer remover o arquivo crontab. No entanto, você pode querer remover algumas linhas do arquivo crontab. Para remover o arquivo crontab do usuário, execute o seguinte comando: crontab -r

type = “code”> Uma maneira mais segura de fazer isso é executar o seguinte comando: crontab -i

type = “code”> O sistema operacional pede verificação antes de remover o arquivo crontab.