CRONTAB - [RESOLVIDO]

1. CRONTAB - [RESOLVIDO]

fabio carnut
fscarnut

(usa Red Hat)

Enviado em 08/08/2013 - 16:24h

boa tarde,

Gostaria da ajuda dos amigos, possuo um script que derruba os usuários parados depois de um determinado tempo, quando executado no prompt do root funciona normal, mais quando coloco para execução via crontab o mesmo não funciona, alguem poderia me ajudar? segue abaixo a permissão do arquivo e o crontab, desde já obrigado

permissão do arquivo

-rwxrwxrwx 1 root root 551 Ago 7 08:16 derruba

crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr1/online
MAILTO=root
HOME=/

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
30 18 * * 1 root sh /usr1/online/bases1.bkp
30 18 * * 2 root sh /usr1/online/bases2.bkp
30 18 * * 3 root sh /usr1/online/bases3.bkp
30 18 * * 4 root sh /usr1/online/bases4.bkp
30 18 * * 5 root sh /usr1/online/bases5.bkp
30 18 * * 6 root sh /usr1/online/bases6.bkp
00 23 * * * root sh /usr1/online/fimbase
30 05 * * * root sh /usr1/online/inibase
0-59 * * * * root sh /usr1/online/derruba

todos esses funcionam, exceto o ultimo.


FSCARNUT


  


2. Re: CRONTAB - [RESOLVIDO]

Alexandre Gonçalves Monteiro da Silva
alexandregms

(usa Ubuntu)

Enviado em 09/08/2013 - 10:19h

Qual o critério de agendamento que vc pretende?

Se vc quiser que o crontab execute a cada 10 minutos com os parâmetros que vc utilizou, pode fazer da seguinte forma:


0-59/10 * * * * root sh /usr1/online/derruba



3. Re: CRONTAB - [RESOLVIDO]

fabio carnut
fscarnut

(usa Red Hat)

Enviado em 09/08/2013 - 11:07h

alexandregms escreveu:

Qual o critério de agendamento que vc pretende?

Se vc quiser que o crontab execute a cada 10 minutos com os parâmetros que vc utilizou, pode fazer da seguinte forma:


0-59/10 * * * * root sh /usr1/online/derruba


Amigo,

Fiz um teste para saber se o crontab estava executando esta linha, colocando ao final o comando

date >> /usr1/online/fabio.log

e ele de minuto em minuto esta colocando a data nesse arquivo, so nao executa o script abaixo que derrubaria os usuarios com mais de 10 minutos parados.

Se eu do prompt do root digitar este arquivo ele derruba, so nao derruba pelo crontab.



# QUANDO EXECUTADO DERRUBA TODOS OS USUARIOS QUE ESTIVEREM PARADOS
# A MAIS DE 10 MINUTOS, EXCETO OS USUARIOS ABAIXO:
TEMPO=10
set `/usr/bin/who -u| awk '{ print \$1, \$5, \$6 ;}'| egrep -v "\. |old"|tr -d ":"`
for i in ${*}; do
[ "$2" = "" ] && break
if [ $1 != "root" ] && [ $1 != "cpd" ] && [ $1 != "pecas" ] && [ $1 != "contador" ]
then
if [ $2 -gt $TEMPO ]
then
echo "$1 - $3 "
/usr/bin/kill -9 $3
fi
fi
shift ; shift ; shift
done
date >> /usr1/online/fabio.log



4. Re: CRONTAB - [RESOLVIDO]

Paulo
paulo1205

(usa Ubuntu)

Enviado em 09/08/2013 - 15:36h

Veja se não é o mesmo caso deste tópico: http://www.vivaolinux.com.br/topico/Shell-Script/Cron-nao-roda-script-Corretamente


5. Re: CRONTAB - [RESOLVIDO]

Alexandre Gonçalves Monteiro da Silva
alexandregms

(usa Ubuntu)

Enviado em 10/08/2013 - 23:42h

Se a dica do paulo1205 não der resultado, tente debugar o script utilizando o "-x" como parâmetro para o "sh".
Desta forma vc capta na hora o momento do erro.


6. Re: CRONTAB - [RESOLVIDO]

fabio carnut
fscarnut

(usa Red Hat)

Enviado em 15/08/2013 - 09:36h

alexandregms escreveu:

Se a dica do paulo1205 não der resultado, tente debugar o script utilizando o "-x" como parâmetro para o "sh".
Desta forma vc capta na hora o momento do erro.


Amigos,

Fiz uma tentativa de outro tipo e deu certo para o root, coloquei o meu script para rodar dentro do .bash_profile do usuario, quando uso qualquer usuário diferente do root não funciona, desse modo para mim vai funcionar melhor só preciso que o script rode nos usuários normais, o que eu estou fazendo de errado? segue abaixo o script executado pelo root e pelo cpd.

pelo root

login as: root
root@129.12.13.1's password:
Last login: Thu Aug 15 08:47:19 2013 from luiz-flavio
gervu - 1757
nfpecas - 2330
recepcao - 2199
nfos - 3822
vendas - 2020
financas - 31064
vendas - 30966
pecas - 2103
atacado - 2394
recepcao - 2466
vendas - 2574
atacado - 3004
pecas - 3182
vendas - 2758
central - 3399
vendas - 3895
recepcao - 32762
vendas - 3507
oficina - 3628
nfbalcao - 3682
gervn - 1488
premium - 4082
novos - 4084
gervu - 4173
[root@DELL-PML ~]#


pelo ususario CPD

Red Hat Enterprise Linux Server release 6.4 (Santiago)
Kernel 2.6.32-358.el6.x86_64 on an x86_64
òlogin: cpd
Password:
Last login: Thu Aug 15 09:04:39 from Fabio-Carnut
premium - 2142
-bash: kill: (2142) - Operação não permitida
usados - 2284
-bash: kill: (2284) - Operação não permitida
atacado - 30263
-bash: kill: (30263) - Operação não permitida
vendas - 2020
-bash: kill: (2020) - Operação não permitida
atacado - 30851
-bash: kill: (30851) - Operação não permitida
gerencia - 30865
-bash: kill: (30865) - Operação não permitida
financas - 31064
-bash: kill: (31064) - Operação não permitida
vendas - 30966
-bash: kill: (30966) - Operação não permitida
atacado - 2394
-bash: kill: (2394) - Operação não permitida
recepcao - 2466
-bash: kill: (2466) - Operação não permitida

existe solução?????

Obrigado,

FSCARNUT







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts