agendar tarefas crontab [RESOLVIDO]

1. agendar tarefas crontab [RESOLVIDO]

Welton Cordeiro
weltonpba

(usa Debian)

Enviado em 16/10/2009 - 15:37h

Galera to apanhando demais do CRONTAB, estou tentando colocar, o script do sarg, que gera os logs do dia (Sarg.sh)poxa ja olhei varios tutos na net, já fiz diversas cosias mas não conssigo colocar ele pra rodar...

se eu coloco por exemplo:
"Detalhe: estou logado como root"

#testando crontab
30 22 * * * echo "Não entre em pânico" > /etc/teste.txt

Funciona Perfeitamente, mas ja eu coloco:

30 22 * * * sarg.sh
ou
30 22 * * * /sbin/sarg.sh
ou
30 22 * * * root sarg.sh
ou
30 22 * * * root /sbin/sarg.sh

Não funcionan nem a tapa!

meu script do sarg.sh

#!/bin/bash

INICIO=$(date --date "0 days ago" +%d/%m/%Y)
FIM=$(date --date"0 day ago" +%d/%m/%Y)
sarg -f /etc/squid/sarg.conf -d $INICIO-$FIM -i -x -z

Uso Ubunto 8.04 modo texto!


  


2. Re: agendar tarefas crontab [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 16/10/2009 - 15:47h

Vc colocou permissão d execução no seu script? Se não, coloque:

# chmod a+x sarg.sh


3. Re: agendar tarefas crontab [RESOLVIDO]

Welton Cordeiro
weltonpba

(usa Debian)

Enviado em 16/10/2009 - 15:54h

coloquei sim, eu uso ele diariamente manual, funciona perfeito, mas quando coloco no crontab não funciona


4. Re: agendar tarefas crontab [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 16/10/2009 - 16:00h

Hum... tenta fazer assim então: coloque o seu script dentro d um diretório (supondo q seja /scripts) e coloque assim:

30 22 * * * /usr/bin/run-parts /scripts

Assim vai executar todos os scripts q estão dentro desse diretório.


5. Re: agendar tarefas crontab [RESOLVIDO]

Julian Castaman
maninhx

(usa Slackware)

Enviado em 16/10/2009 - 17:10h

tentou

30 22 * * * /sbin/sarg.sh start


6. Re: agendar tarefas crontab [RESOLVIDO]

Genesco Sousa
gesousa

(usa Ubuntu)

Enviado em 16/10/2009 - 17:46h

o erro é comum e recorrente aqui...

Funções do script como printf, echo, date, utilizam a saída no terminal para ler os comandos, ao contrario do terminal ou cron trabalha exclusivamente em segundo plano, sendo assim estes comandos não funciona.

A solução é simples, apenas redireciona os script para algum terminal ...

sarg.sh > /dev/tty1


7. Re: agendar tarefas crontab [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 16/10/2009 - 22:04h

O gesousa falou uma coisa q é fato. Fazendo isso vc consegue executar.


8. Re: agendar tarefas crontab [RESOLVIDO]

Welton Cordeiro
weltonpba

(usa Debian)

Enviado em 17/10/2009 - 09:26h

Galera coloquei como gesousa sugeriu e não rodou

17 09 * * * /sbin/sarg.sh > /dev/tty1
ou
17 09 * * * sarg.sh > /dev/tty1

vou tentar colocar passo a passo como eu coloco no cron pq eu devo estar fazendo algo errado não tem logica hehehe





9. Re: agendar tarefas crontab [RESOLVIDO]

Welton Cordeiro
weltonpba

(usa Debian)

Enviado em 17/10/2009 - 09:32h

crontab -e "abri cron"
17 13 * * * /sbin/sarg.sh > /dev/tty1
------------------------------------------
crtl + o "Salva"
crtl + x "Sai do crontab"
crontab -l "lista o que eu acabei de colocar"



10. Re: agendar tarefas crontab [RESOLVIDO]

Welton Cordeiro
weltonpba

(usa Debian)

Enviado em 17/10/2009 - 10:14h

Galera to postando meu syslog não sei si pode ajudar na solução mas ta ae

SYSLOG:

root@ubuntu:/var/log# mcedit syslog
syslog [----] 51 L:[ 84+10 94/105] *(6269/6978b)= I 73 0x49
Oct 17 09:40:02 ubuntu /USR/SBIN/CRON[4054]: (root) CMD (sarg.sh)
Oct 17 09:40:02 ubuntu /USR/SBIN/CRON[4057]: (root) CMD (/sbin/sarg.sh > /dev/tt
Oct 17 09:45:02 ubuntu /USR/SBIN/CRON[4064]: (root) CMD (sarg.sh)
Oct 17 09:47:24 ubuntu crontab[4070]: (root) BEGIN EDIT (root)
Oct 17 09:47:55 ubuntu crontab[4070]: (root) REPLACE (root)
Oct 17 09:47:55 ubuntu crontab[4070]: (root) END EDIT (root)
Oct 17 09:47:57 ubuntu crontab[4073]: (root) LIST (root)
Oct 17 09:48:01 ubuntu /usr/sbin/cron[4331]: (root) RELOAD (crontabs/root)
Oct 17 09:48:32 ubuntu crontab[4074]: (root) BEGIN EDIT (root)
Oct 17 09:48:55 ubuntu crontab[4074]: (root) REPLACE (root)
Oct 17 09:48:55 ubuntu crontab[4074]: (root) END EDIT (root)
Oct 17 09:48:57 ubuntu crontab[4077]: (root) LIST (root)
Oct 17 09:49:01 ubuntu /usr/sbin/cron[4331]: (root) RELOAD (crontabs/root)
Oct 17 09:50:02 ubuntu /USR/SBIN/CRON[4082]: (root) CMD (sarg.sh)
Oct 17 09:50:02 ubuntu /USR/SBIN/CRON[4085]: (root) CMD (sarg.sh > /dev/tty1so)
Oct 17 09:55:02 ubuntu /USR/SBIN/CRON[4095]: (root) CMD (sarg.sh)
Oct 17 09:56:46 ubuntu squid[4309]: WARNING: Reply from unknown nameserver [201.
Oct 17 10:00:02 ubuntu /USR/SBIN/CRON[4106]: (root) CMD (sarg.sh)
Oct 17 10:00:02 ubuntu /USR/SBIN/CRON[4110]: (root) CMD (sarg.sh)
Oct 17 10:05:02 ubuntu /USR/SBIN/CRON[4129]: (root) CMD (sarg.sh)
Oct 17 10:10:02 ubuntu /USR/SBIN/CRON[4155]: (root) CMD (sarg.sh)


11. Re: agendar tarefas crontab [RESOLVIDO]

Daniel Miyagi
j4p0n3g0

(usa Debian)

Enviado em 17/10/2009 - 16:09h

coloca esse executável dentro da pasta /etc/cron.daily e já era ...


12. Re: agendar tarefas crontab [RESOLVIDO]

Welton Cordeiro
weltonpba

(usa Debian)

Enviado em 19/10/2009 - 07:08h

pior que ja coloquei nas duas pastas:

cron.hourly: de hora em hora
cron.daily: de dia em dia

e não funciona



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts