Busca


imprimir pdf

Tarefas automatizadas


Em linux, existe um sistema que permite tratar automaticamente das tarefas após terem sidas planificadas, determinando a frequência de execução e a data e a hora de lançamento da tarefa, este tipo de rotina é utilizado frequentemente para tarefas de administração de sistema, permitindo guardar e ter o seu sistema em dia. Por exemplo, efectuar cópias de backup periódicas, supervisionar o sistema, executar scripts personalizados, etc.

Existe um crontab por utilizador. Só o root pode consultar cada uma delas.

Cada linha do ficheiro /etc/crontab tem o formato:

minute hour day month dayofweek command

Cada linha deve ter obrigatoriamente 6 colunas :

* minuto - número inteiro entre 0 e 59
* hour - número inteiro entre 0 e 23
* day - número inteiro entre 1 e 31 (se o mês for especificado, o dia deve ser válido)
* month - número inteiro entre 1 e 12 (ou abreviatura do nome do mês)
* dayofweek - número inteiro entre 0 e 7, 0 ou 7 representa o Domingo (ou a abreviatura do dia da semana)
*command - o comando a executar. O comando pode ser um comando como ls /proc > > /tmp/proc ou o comando de execução de um script personalizado do qual é o autor.


Para os valores acima, um asterisco (*) pode ser utilizado para indicar todos os valores válidos. Por exemplo, um asterisco utilizado para o valor do dia significa uma execução do comando todos os dias (com respeito das restrições dos outros valores).

Um hífen (-) colocado entre dois números inteiros indica um intervalo de tempo. Por exemplo, 1-4 indica todos os minutos compreendidos entre 1 e 4.

Uma lista de valores separados por vírgulas (,) corresponde a uma lista de valores. Por exemplo, 0,10,20,30 indicam os minutos 0,10,20 e 30 (o que quer dizer todos os 10 minutos).

A barra oblíqua (/) pode ser utilizada para especificar valores escalonados. Para passar um número inteiro numa gama, faça-a seguir de/. Por exemplo, 0-59/2 permite designar todos os valores iguais dos minutos compreendidos entre 0 e 59. Estes valores escalonados podem igualmente ser utilizados com um asterisco. Por exemplo, o valor */3 pode ser utilizado no campo dos meses para passar um mês sobre três.

As linhas que começam pele símbolo (#) correspondem a comentários e não são tratadas.

Para relembrar estas tarefas não são acessíveis para as ofertas start e 1000gp.

Como executar um script automaticamente no servidor partilhado (em cron)


Primeiro, é necessário assegurar-se que o script funciona em modo shell, ou seja, que é capaz de executar-se a partir da linha de comando. Para isso, é necessário colocar na primeira linha #! /usr/local/bin/php se se trata de um script php, #! /usr/bin/perl se se trata de um certificado perl, ou #! /bin/bash para um script shell, depois utilizar o comando chmod 700 script.cgi sobre o script. Se tem o acesso Telnet/Ssh, pode testar a sua execução com ./script.cgi
Não se esqueça de utilizar o comando " cd /home/login " no início do seu script, ou de utilizar caminhos absolutos quando precisa o nome de um ficheiro (por exemplo /home/login/texte.txt em vez de texte.txt), porque o seu certificado será executado no directório

Uma vez que está certo do bom funcionamento do seu script em modo shell, pode activar tarefas CRON no seu alojamento GP ou PLAN. Para isso é necessário ir ao seu Manager OVH, na secção Alojamento, opção “Planificador de tarefas”.

Encontrará nesta rubrica a lista das suas tarefas planificadas, com possibilidade de modificar e controlar a sua execução. Clique “em Criação” para criar um novo CRON:

Indique então :

  • o lugar do script a executar (onde se encontra o ficheiro no seu FTP)
  • a linguagem utilizada para este script (PHP 4, PHP 5 ou outro)
  • uma descrição da sua tarefa (para informação no seu Manager)

Escolha depois a periodicidade de execução do seu CRON, o qual pode ser lançado todos os dias e uma vez por hora no máximo.

Confirme a planificação clicando no ícone “Validar”.