(12) crontab

9

Click here to load reader

Transcript of (12) crontab

Page 1: (12) crontab

ADMINISTRAÇÃO DE REDES I ­ LINUXAgendamento de Tarefas com o Cron

Frederico MadeiraLPIC­1, LPIC­2, [email protected]

Page 2: (12) crontab

Características

- O Cron é um daemon utilizado para executar tarefas agendadas no sistema operacional.

- Controla agendamento através do arquivo /etc/crontab

- Agendamento dos usuários fica em /var/spool/cron

- Regras podem ser agendadas para execução em tempos específicos: minuto, hora, dia do mês, mês, dia da semana, ou ainda, em uma combinação destes

Cron

Page 3: (12) crontab

Campos do Crontab

- para especificar range de valores (1-3)

, para especificar valores (1,2,4)

*/n para especificar intervalo (a cada n)

Cron

Page 4: (12) crontab

Cron

Ex:

Conteúdo do arquivo /etc/crontab

Page 5: (12) crontab

O script run-parts executa todos os scripts shell contidos nos diretórios especificados e coma frequência especificada:

cron.hourly/ --> O script será rodado a cada hora

cron.daily/ --> O script será rodado a cada dia

cron.weekly/ --> O script será rodado uma vez por semana

cron.monthly/ --> O script será rodado uma vez por mês

Cron

Page 6: (12) crontab

O comando tail -f /var/log/cron exibe os eventos executados

Não é necessário reiniciar o serviço

Controle de acesso:

/etc/cron.allow – Se existir, apenas esses usuários poderão usar o cron

( o root sempre poderá)

/etc/cron.deny – Se o anterior não existir, os usuários listados aqui não

poderão usar o cron

* Caso nenhum dos dois exista, apenas o root poderá agendar tarefas

O padrão é a existência do cron.deny em branco.

Cron

Page 7: (12) crontab

Agendamentos para usuários não-privilegiados

- Usuários não privilegiados do sistema, não possuem acesso ao /etc/crontab

- Através do comando crontab o usuário pode criar agendamentos

(serão executados com a permissão do usuário que está agendando

- Armazenados em /var/spool/cron

Opções do comando crontab:

-u: especifica o usuário que deseja-se consultar.

Se for omitido, será considerado o usuário que o está executando.

-e: Edita os agendamentos do usuário

-l: Lista os agendamentos do usuário

-r: Remove o arquivo crontab atual do usuário

Ex:

[root@localhost ~]# crontab -l -u fred

01 * * * * /usr/sbin/ntpdate ntp.servidor.com.br

Cron

Page 8: (12) crontab

Atividades

1. Faça um agendamento de forma que seja criado no diretório tmp um arquivo que contenha o status da memória a cada minuto.

2. Faça um agendamento que as 20:05 reinicie o servidor web

3. Faça um agendamento de forma que seja criado no diretório tmp um arquivo que contenha o status do uso do disco a cada 2 horas. Agende na cron do usuário.

4. Faça um agendamento de forma que seja executado o comando updatedb diariamente.

Cron

Page 9: (12) crontab

ADMINISTRAÇÃO DE REDES I ­ LINUXAgendamento de Tarefas com o Cron

Frederico MadeiraLPIC­1, LPIC­2, [email protected]