Muitas das tarefas de um administrador de sistemas são tarefas repetitivas, que podem ser automatizadas utilizando o serviço cron.
O cron pode ser utilizado mediante a criação de um ficheiro de configuração (crontab) e a execução do comando crontab. Cada utilizador do sistema pode ter um crontab diferente, devendo utilizar o comando crontab para o editar, apagar ou criar.
A sintaxe do comando crontab é a seguinte:
Por exemplo o comando
crontab -u joao crontab.joao
substitui o crontab do utilizador joão pelo ficheiro crontab.joao.
O ficheiro de crontab do utilizador deve ter o seguinte formato por linha:
minuto hora dia mes semana comando
Os campos têm o seguinte significado.
Campo | Propósito |
---|---|
minuto | minuto da hora 00 a 59 |
hora | hora do dia 00 a 23 |
dia | dia do mês 1 a 31 |
mes | mes do ano 1 a 12 (ou jan a dec) |
semana | dia da semana 0 a 7 (0=7=domingo) ou (sun, mon, tue, wed, thu, fri, sat) |
comando | comando a ser executado |
Os valores dos campos podem ser.
Valor | Significado |
---|---|
* | todos os valores possíveis |
valor | o valor exacto |
lista de valores | todos os valores especificados (ex. 1,2,5,8) |
intervalo de valores | todos os valores no intervalo (ex. 1-8) |
múltiplos | valores de n em n (ex. /5 de 5 em 5; 1-8/2 no intervalo de 2 em 2=1,3,5,7) |
Exemplos:
0 * * * * echo Cuckoo Cuckoo > /dev/console 2>&1
Todas as horas quando o minuto é 0 apresenta a mensagem na consola
0 8-20/2 * * * date
De duas em duas horas entre as 8 e as 20 quando o minuto é 0 corre o comando date
15 8 * 0-7,9-12 sun backup
Todos os domingos às 8h15m, excepto no mes de Agosto corre o comando backup
Para mas ajuda executar man 5 crontab
De seguida é apresentado um ficheiro hosts exemplo, todas as linhas devem ter o mesmo tamanho, e devem ser completadas com o símbolo |.
Ficheiro original (hosts) |
Ficheiro original (cria_header.sh) |
O script analisa_hosts.sh cria uma entrada no ficheiro output.
Ficheiro original (analisa_hosts.sh) |
O script analisa_hosts1.sh é uma alternativa para criar uma entrada no ficheiro output.
Ficheiro original (analisa_hosts1.sh) |
O ficheiro crontab.root contém um crontab para executar vários scripts, entre eles os de
verificação de máquinas.
Ficheiro original (crontab.root) |
Ultima alteração: às