Como utilizar o Crontab no Linux: Guia Completo para Iniciantes e Avançados
Se você trabalha com servidores ou automação no Linux, dominar o Crontab é praticamente obrigatório. Ele funciona como um “agendador de tarefas”, permitindo que scripts e comandos sejam executados automaticamente em horários definidos.
Neste artigo, você vai aprender desde o básico até exemplos práticos para usar o Crontab no dia a dia.
📌 O que é o Crontab?
O Crontab (cron table) é um arquivo que contém uma lista de tarefas programadas para execução automática pelo serviço cron do Linux.
Com ele, você pode automatizar tarefas como:
- Backups automáticos
- Limpeza de arquivos temporários
- Execução de scripts PHP ou Python
- Atualizações de sistema
- Envio de relatórios
⚙️ Como acessar o Crontab
Para editar o Crontab do usuário atual, utilize:
crontab -e
Na primeira execução, você poderá escolher um editor, como:
- nano (mais fácil)
- vim (mais avançado)
🧠 Estrutura de um comando no Crontab
Cada linha do Crontab segue este formato:
* * * * * comando
📊 Significado dos campos:
| Campo | Valor permitido | Descrição |
|---|---|---|
| Minuto | 0–59 | Quando executar |
| Hora | 0–23 | Hora do dia |
| Dia do mês | 1–31 | Dia do mês |
| Mês | 1–12 | Mês do ano |
| Dia da semana | 0–7 | Dia da semana (0 e 7 = domingo) |
🧪 Exemplos práticos
✅ Executar um script todos os dias às 2h da manhã
0 2 * * * /home/user/script.sh
✅ Executar a cada 5 minutos
*/5 * * * * /home/user/script.sh
✅ Executar toda segunda-feira às 8h
0 8 * * 1 /home/user/script.sh
✅ Executar no primeiro dia de cada mês
0 0 1 * * /home/user/script.sh
📁 Executando scripts PHP com Crontab
Se você tem um sistema web (como WordPress ou PHP puro), pode executar scripts assim:
/usr/bin/php /var/www/html/script.php
📤 Redirecionando saída (logs)
Para evitar erros silenciosos, você pode salvar logs:
0 2 * * * /home/user/script.sh >> /home/user/log.txt 2>&1
>>adiciona ao arquivo2>&1captura erros também
🔐 Boas práticas
- Sempre use caminhos absolutos
- Teste o script antes de automatizar
- Evite executar tarefas pesadas com muita frequência
- Use logs para monitoramento
🧹 Listar e remover tarefas
Listar tarefas existentes:
crontab -l
Remover todas as tarefas:
crontab -r
🚨 Problemas comuns
❌ Script não executa
Possíveis causas:
- Permissão negada → use
chmod +x - Caminho errado
- Variáveis de ambiente não carregadas
❌ Comando funciona no terminal mas não no Crontab
O Crontab usa um ambiente limitado. Solução:
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Adicione no topo do arquivo.
🔄 Crontab do sistema vs usuário
Além do Crontab do usuário, existe o arquivo global:
/etc/crontab
Ele permite definir também o usuário que executará o comando.
💡 Dica bônus: Ferramenta para gerar Crontab
Use sites como:
- crontab.guru
Eles ajudam a montar expressões facilmente.
📚 Conclusão
O Crontab é uma ferramenta poderosa para automação no Linux. Com poucos comandos, você consegue economizar tempo e evitar tarefas repetitivas.
Se você trabalha com servidores, desenvolvimento ou infraestrutura, aprender Crontab é um grande diferencial.
🚀 Gostou do conteúdo?
Se este artigo te ajudou, compartilhe e acompanhe o blog para mais dicas sobre Linux, servidores e tecnologia!