Você está na página 1de 3

INTRODUO

Suponha que voc seja dono de um servio de hospedagem de sites e diariamente precisa
disponibilizar, numa pasta acessvel por FTP, o arquivo de log de acessos de um cliente.
trabalhoso fazer isso manualmente e na pior das hipteses, voc pode esquecer.
Felizmente o Linux conta com o servio cron, que permite a realizao de tarefas
periodicamente e em dias e datas determinados por voc. O objetivo deste artigo mostrar
como fazer isso.

O QUE CRON
O cron pode ser interpretado como um servio do Linux que carregado durante o
processo de boot do sistema. Trata-se de uma ferramenta que permite programar a
execuo de comandos e processos de maneira repetitiva ou apenas uma nica vez.
No caso citado da introduo, voc poderia usar o cron para que o arquivo de log do
cliente fosse disponibilizado todos os dias s 12 horas, por exemplo. Isso possvel
porque o daemon (uma espcie de programa que executa tarefas em segundo plano) do
cron executa os comandos nas datas e horrios especificados. A cada minuto o cron
acionado para verificar se h tarefas a serem realizadas.
Para executar as tarefas, o cron usa uma espcie de tabela conhecida como crontab. O
arquivo crontab geralmente fica localizado no diretrio /etc, mas tambm pode estar em
um diretrio que cria um crontab para cada usurio do sistema, geralmente em
/var/spool/cron/.

COMO USAR O CRON


O primeiro passo abrir o crontab. Para isso, voc pode usar editores de textos como vi e
o emacs. Tambm possvel digitar o comando "crontab -e" para editar o arquivo exclusivo
de seu usurio. Neste caso, a edio feita como se voc estivesse usando o vi.
O crontab tem o seguinte formato:
[minutos] [horas] [dias do ms] [ms] [dias da semana] [usurio] [comando]

O preenchimento de cada campo feito da seguinte maneira:

Minutos: informe nmeros de 0 a 59;

Horas: informe nmeros de 0 a 23;

Dias do ms: informe nmeros de 1 a 31;

Ms: informe nmeros de 1 a 12;

Dias da semana: informe nmeros de 0 a 7;

Usurio: o usurio que vai executar o comando (no necessrio especific-lo


se o arquivo do prprio usurio for usado);

Comando: a tarefa que deve ser executada.

Repare que a ordem desses valores indica o nome correspondente do campo. Por
exemplo, no campo ms, 1 a 12 quer dizer de "Janeiro a Dezembro". No caso de dias da
semana, 0 a 6 quer dizer de "Domingo a Sbado". Note que o nmero 7 tambm pode ser
usado. Neste caso, assim como o nmero 0, o 7 equivale ao dia de "Domingo".
No lugar desses valores, voc pode informar * (asterisco) para especificar uma execuo
constante. Por exemplo, se o campo dias do ms conter *, o comando relacionado ser
executado todos os dias.
Voc tambm pode informar intervalos no preenchimento, separando os nmeros de incio
e fim atravs de - (hfen). Por exemplo, se no campo horas for informado 2-5, o comando
relacionado ser executado s 2, 3, 4 e 5 horas. E se o comando tiver que ser executado
s 2 horas, entre 15 e 18 horas e s 22 horas? Basta informar 2,15-18,22. Nestes casos,
voc separa os parmetros por vrgula.
Vamos a um exemplo:
# tarefa 1
30 22 2,10 * * echo "Porque ns amamos a liberdade"

Neste exemplo, a frase "Porque ns amamos a liberdade" exibida s 22 horas e 30

minutos, nos dias 2 e 10, em todos os meses e em todos os dias da semana. Repare na
linha "#tarefa 1". Trata-se de um comentrio. Digite # e tudo o que for digitado na linha no
ser considerado pelo cron. um recurso til para inserir descries quando se tem vrias
tarefas a serem executadas.

FINALIZANDO

Os recursos do cron no se limitam aos mostrados anteriormente. Voc pode ainda


agendar tarefas mais complexas e poupar muito trabalho nessas execues automticas.
possvel, por exemplo, configurar o cron para emitir-lhe um aviso de quando uma tarefa
executada. A dica para lidar com o cron test-lo. Experimente-o bastante. Mesmo que
voc seja apenas um usurio domstico, certamente encontrar alguma utilidade para o
cron

Você também pode gostar