Linux in Brazil

Documentação original
e de qualidade
em bom português

O texto abaixo foi publicado no BR-Linux antes de 2005, e está mantido aqui por razões históricas. Veja o material atualizado diariamente do BR-Linux em http://br-linux.org
Dúvidas comuns | Perguntar no Fórum | Notícias | Campeões de audiência | Mais documentos | Enviar texto | Contato
 
Destaques de hoje:
  • Delírios: Hans Reiser, assassino confesso, quer novo julgamento - acusa advogado de defesa de conspirar contra ele, entre outras peculiaridades
  • Coleção de dicas práticas para administradores de sistemas
  • Flash 10 em 64 bits: alfa, e só para Linux
  • Pague 2, leve 1, doe 1: Consumidores dos EUA e Europa já podem doar XO a país emergente
  • O cron é um recurso padrão do Unix que permite o agendamento de tarefas para serem executadas em um momento específico, ou em intervalos regulares. Você pode programar as tabelas do cron para:

    A administração do cron para usuários pode envolver alguns cuidados adicionais, que uma boa leitura na documentação do seu sistema. Mas o leitor Marcelo Araujo (msaraujo@tro.matrix.com.br) resolveu facilitar a nossa vida, enviando algumas dicas sobre a inclusão de tarefas nas tabelas do cron. O texto a seguir é todo do Marcelo, e em caso de dúvida você pode usar o nosso Fórum.

    Entendendo o crontab

    Veja este exemplo de linha do crontab:

    0,15,30,45 * * * * /bin/netstat -a |  /bin/mail root
    

    Essa linha de comando ira fazer que a cada 15 minutos, o netstat -a seja executado e o resultado do mesmo vá para o mail root.

    O formato da linha de definição de tarefa do cron é:

    minuto hora dia-do-mês mês dia-semana comando
    

    Agora, como fazer para editar as suas crontabs? É simples... Em primeiro lugar decida qual editor de texto que você quer usar. Eu prefiro o pico com a opção -w (para evitar wordwraps). Portanto, terei que usar o comando export EDITOR="pico -w"

    Para entrar no modo de edição da crontab, após selecionar o editor de texto, basta digitar crontab -e e editar linhas como as do exemplo:

    SHELL=/bin/bash
    PATH=/sbin:/bin:/usr/sbin:/usr/bin
    MAILTO=root
    0,15,30,45 * * * * /bin/netstat -a | /bin/mail root
    15 21 * * * /usr/bin/updated
    # isto é um comentário
    

    As três primeiras linhas definem a shell que vai ser usada pelos scripts, o path de procura de comandos, e o usuário que vai receber mails em caso de erros. A quarta linha define que aos 0, 15, 30 e 45 minutos de todas as horas, em todos os dias do mês, todos os meses e todos os dias da semana, vai ser executado o comando /bin/netstat -a | /bin/mail root. A quinta linha define que às 21:15 de todos os dias será executado o /usr/bin/updated.

    Você pode adicionar e remover entradas no cron à vontade. Linhas que começarem com um sinal de "#" não são consideradas, e você pode usá-las para desativar temporariamente comandos, ou para acrescentar comentários.

    Para listar o conteúdo de sua crontab, use crontab -l. Para removê-la completamente, use crontab -u. Para maiores informações sobre o cron, use man 8 cron, man 1 crontab e man 5 crontab

    [ << CD Recorder ] [ ComVC do UOL >> ]
    o