CRON? [RESOLVIDO]

1. CRON? [RESOLVIDO]

Andre Fernando Dominguez
afdominguez

(usa Ubuntu)

Enviado em 09/01/2009 - 11:41h


Boa tarde pessoal.

Estou tendo dificuldades de entender o funcionamento do cron.

Oque é:
cron.d/
cron.daily/
cron.hourly/
cron.monthly/
cron.weekly/
crontab

Gostaria de saber como incluir um script para rodar todos os dias num determinado horario.
Li algumas dicas e artigos que diziam que o cron nao executa arquivos que tem saida para a tela, com o comando echo por exemplo. Gostaria de saber se é isso mesmo ou se interpretei errado.

Valew.


  


2. ...

William Forti Bueno
ventrue.w

(usa Debian)

Enviado em 09/01/2009 - 12:05h

As tarefas podem ser executadas em intervalos regulares.. Tem dois sistemas o cron de agendamento periodico e o at de agendamento unico.

at - eventu unico

sua sintaxe é simples e se vc quer adicionar um programa que nao necessite de parametros pode ate ser indicado pela linha de comando

# at -f /usr/bin/updatedb 10:01

para listar agendamentos utilize o comando: atq
O agendamento é indicado pela primeira coluna se houve necessidade de exclusão utilize:
# atrm numero_da_coluna

CRON - peridico

Grande parte das tarefas periodicas que devem ser realizadas em um equipamento ja vem pre agendadas e são controladas pelas definições do arquivo /etc/crontab

As definições mas importantes do arquivo acima indicam que nos horarios especificos cada diretorio deve ser acessado e cada script dentro dele deve ser executado.
Lendo o aquivo acima temos a estrutura abaixo..

cron.daily -----> diariamente as 6h25 da manha
cron.horly -----> De hora em hora, aos 17 minutos
cron.monthly ---> Mensalmente, no dia primeiro as 6h52 da manha
cron.weekly ----> Semanalmente, no domingo as 6h47 da manha

A estrutura do crontab é a seguinte

min hora dia mes mes dia sem usuario comando
52 6 1 * root run-parts --report /etc/cron.monthly

No sistema cron, são utilizados os primeiros cinco campos para indicar a data e a horario de execução. em seguida quem executara o comando e por ultimo o comando propriamente dito.

Cada campo possui uma faixa de valores aceitaeis

minuto de 0 a 59
hora de 0 a 23
dia do mes de 0 a 31
mes de 0 a 12
dia de semana de 0 a 7 (domingo assume tanto o valor de 0 como o de 7)







3. Re: CRON? [RESOLVIDO]

Andre Fernando Dominguez
afdominguez

(usa Ubuntu)

Enviado em 09/01/2009 - 14:34h

OK ventrue.w

Veja como esta o meu crontab

# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
26 * * * * root /etc/tt.sh
26 * * * * root sarg.sh
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#


sar.sh é um script que criei para gerar o relatorio do sarg, ele executa a seguinte linha de comando:
sarg -f /etc/squid/sarg.conf -i -x -z

O script sarg.sh esta na pasta /sbin quando executo a linha de comando como root ele funciona, quando executo o script ele tambem executa, mas nao esta executando na cron.
Oque pode ser?


4. Re: CRON? [RESOLVIDO]

Francisco Ambrozio
fco

(usa Slackware)

Enviado em 09/01/2009 - 20:09h

Uma pergunta beeeem básica, mas as vezes são as soluções simples que resolvem nossos problemas:

O crond está rodando?


5. Re: CRON? [RESOLVIDO]

Andre Fernando Dominguez
afdominguez

(usa Ubuntu)

Enviado em 12/01/2009 - 08:41h

Como disse sou novato aqui no linux, mas acredito que sim, pois restarto ele numa boa.
ele nao da erro na hora de re-startar


6. ??

William Forti Bueno
ventrue.w

(usa Debian)

Enviado em 12/01/2009 - 08:54h

Vc ja tentou ao invés de executar o script via cron, executar simplesmente o comando... ao invés de vc endereçar o script, de o comando direto que vc necessita... e veja como reage..


7. Re: CRON? [RESOLVIDO]

Andre Fernando Dominguez
afdominguez

(usa Ubuntu)

Enviado em 12/01/2009 - 08:58h

Sim....

Ja simplesmente chamei o script e ele executa normalmente, gera o relatorio, sem problemas.




8. ..

William Forti Bueno
ventrue.w

(usa Debian)

Enviado em 14/01/2009 - 15:55h

Vc deu permissão de execução para o script???



9. ...

William Forti Bueno
ventrue.w

(usa Debian)

Enviado em 14/01/2009 - 15:57h

tente indicar o caminho todo para ver se roda no cron....
/sbin/sarg.sh


10. ....

William Forti Bueno
ventrue.w

(usa Debian)

Enviado em 14/01/2009 - 16:03h

mas uma coisa, da uma olhada no /var/log/syslog procure por erros gerados pelo cron, para saber o que esta acontecendo...

Aproveite e veja como o amigo acima falow

Verifique se o crond, agendador de tarefas está rodando:
# ps aux | grep cron
caso ele não aparece na lista, o execute com o comando:
#crond


11. Re: CRON? [RESOLVIDO]

Andre Fernando Dominguez
afdominguez

(usa Ubuntu)

Enviado em 15/01/2009 - 08:51h

Quanto ao comando para verificar se cron esta rodando, acredito que sim, ai esta a resposta dele.

root 5903 0.0 0.0 3324 992 ? Ss Jan13 0:00 /usr/sbin/cron
1000 11790 0.0 0.0 3004 748 pts/0 R+ 07:42 0:00 grep cron

Quanto a estar com autorização para executar, ai estao ls -l do sar.sh:

-rwxr-xr-x 1 root root 258 2009-01-13 09:40 sarg.sh

Quanto a colocar o caminho todo dele, dentro do crontab, ja o fiz, mesmo assim, nao deu.

E agora pessoal, oque pode ser????


12. ....

William Forti Bueno
ventrue.w

(usa Debian)

Enviado em 15/01/2009 - 08:59h

Vc chegou a checar o /var/log/syslog para ver se o cron esta dando algum erro na hora da execução...???



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts