Cron não Funciona! [RESOLVIDO]

13. Re: Cron não Funciona! [RESOLVIDO]

Wellingthon Dias Queiroz - @tonyhts
tonyhts

(usa Arch Linux)

Enviado em 24/06/2015 - 14:45h


huhumm..
Man, coloca seu script numa pasta qualquer /home/userX, tira esse ponto do arquivo, da permissão pra ele novamente e testa.. Estamos quase lá...


  


14. Re: Cron não Funciona! [RESOLVIDO]

Douglas dos Santos
error13

(usa Ubuntu)

Enviado em 24/06/2015 - 14:56h

será @tonyhts
olha o resultado ai!:

root@srv-ftp:/# cat /var/teste_diarias_error.log 
/bin/sh: 1: /script/diarias.sh: not found
root@srv-ftp:/# ls -la | grep script/
root@srv-ftp:/# ls -la | grep script
drwx--x--x 2 root root 4096 Jun 24 12:25 script
root@srv-ftp:/# ls -la script/
total 12
drwx--x--x 2 root root 4096 Jun 24 12:25 .
drwxr-xr-x 23 root root 4096 Jun 22 17:35 ..
-rwx--x--x 1 root root 1254 Jun 24 14:47 diaras.sh
root@srv-ftp:/# cat /etc/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:/script

# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
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 )
55 14 * * * root /script/diarias.sh 2> /var/teste_diarias_error.log
43 14 * * * root /sbin/testecron.sh
#



15. Re: Cron não Funciona! [RESOLVIDO]

Wellingthon Dias Queiroz - @tonyhts
tonyhts

(usa Arch Linux)

Enviado em 24/06/2015 - 15:10h


PÔ! é o demonhuuu. rs

Suponho que vc esteja como root, certo?

Então tenta assim:

crontab -e 


e adiciona assim (sem o user mesmo) ::

55 14 * * *  /script/diarias.sh 2> /var/teste2_diarias_error.log 











16. Re: Cron não Funciona! [RESOLVIDO]

Douglas dos Santos
error13

(usa Ubuntu)

Enviado em 24/06/2015 - 16:01h

@tonyhts ta osso mesmo! kkkk
mesmo resultado!
root@srv-ftp:/# crontab -e
crontab: installing new crontab
root@srv-ftp:/# ls -l /var | grep teste
-rw-r--r-- 1 root root 42 Jun 24 15:58 teste_diarias_error.log
root@srv-ftp:/# cat /var/teste_diarias_error.log
/bin/sh: 1: /script/diarias.sh: not found








17. Teu script gera alguma saída?

Carlos Adean
C4rl

(usa CentOS)

Enviado em 24/06/2015 - 16:12h

É muito comum não funcionar quando alguma saída está sendo enviada para stderr ou stdout.

Vamos supor que você queira executar o script.sh a cada 1 minuto ininterruptamente. Segue abaixo o script e a linha que se adicionará ao crontab.

Criando o script.sh:
$ echo -e '#!/bin/bash\necho "Teste script.sh com saída para output\n $(date)"' > script.sh

Dando permissão de execução ao script.sh:
$ chmod +x script.sh

Agendando no cron:
$ crontab -e

*/1 * * * * bash $HOME/script.sh >> $HOME/script.out

Saída do log do cron:
Jun 24 16:09:01 lineacln010 CRON[3108]: (carlosadean) CMD (bash $HOME/script.sh >> $HOME/script.out)
Jun 24 16:10:01 lineacln010 CRON[3135]: (carlosadean) CMD (bash $HOME/script.sh >> $HOME/script.out)




18. Re: Cron não Funciona!

Wellingthon Dias Queiroz - @tonyhts
tonyhts

(usa Arch Linux)

Enviado em 24/06/2015 - 16:14h

Nusss

Vamos apelar.... o importante é funcionar, depois deixamos bonitinho.. rsrs


Tetantiva A:::

tenta assim no cron :
55 14 * * *  bash  /script/diarias.sh 2> /var/teste2_diarias_error.log 



Tetantiva B:::
troque a primeira linha do seu script de #!/bin/bash para #!/bin/sh e tira o bash do cron




19. Re: Cron não Funciona! [RESOLVIDO]

Douglas dos Santos
error13

(usa Ubuntu)

Enviado em 24/06/2015 - 16:17h

C4rl escreveu:

É muito comum não funcionar quando alguma saída está sendo enviada para stderr ou stdout...


e ai @C4rl quanto ao que voce falou acima de saida de comando eu ja tinha dito la atras que vi num link aki mesmo do forum, por isso inclusive coloquei o codigo do script acima no primeiro post, e tambem fiz um teste com script comum de "ls" e funcionou, porem quando pesso pra rodar o meu codigo como ta acima ele da "not found"
nao sei o que pode ser.




20. Re: Cron não Funciona! [RESOLVIDO]

Carlos Adean
C4rl

(usa CentOS)

Enviado em 24/06/2015 - 16:19h

error13 escreveu:

@tonyhts ta osso mesmo! kkkk
mesmo resultado!
root@srv-ftp:/# crontab -e
crontab: installing new crontab
root@srv-ftp:/# ls -l /var | grep teste
-rw-r--r-- 1 root root 42 Jun 24 15:58 teste_diarias_error.log
root@srv-ftp:/# cat /var/teste_diarias_error.log
/bin/sh: 1: /script/diarias.sh: not found




Amigo a mensagem é bem clara, informa que o sh não achou o arquivo "/script/diarias.sh" !!!

Onde exatamente está este script diarias.sh ? Informe o caminho completo para ele.





21. Re: Cron não Funciona! [RESOLVIDO]

Wellingthon Dias Queiroz - @tonyhts
tonyhts

(usa Arch Linux)

Enviado em 24/06/2015 - 16:19h


mais um duvida.

vc excluiu o log anterior antes da nova tentiva néh?
Nessas horas não raciocinamos direito. rs


22. Re: Cron não Funciona!

Carlos Adean
C4rl

(usa CentOS)

Enviado em 24/06/2015 - 16:21h

error13 escreveu:

C4rl escreveu:

É muito comum não funcionar quando alguma saída está sendo enviada para stderr ou stdout...


e ai @C4rl quanto ao que voce falou acima de saida de comando eu ja tinha dito la atras que vi num link aki mesmo do forum, por isso inclusive coloquei o codigo do script acima no primeiro post, e tambem fiz um teste com script comum de "ls" e funcionou, porem quando pesso pra rodar o meu codigo como ta acima ele da "not found"
nao sei o que pode ser.



Com qualquer usuário faça o exemplo que postei, pois funciona. Vai ajudar a esclarecer melhor onde você está errando.




23. Re: Cron não Funciona! [RESOLVIDO]

Douglas dos Santos
error13

(usa Ubuntu)

Enviado em 24/06/2015 - 16:22h

C4rl escreveu:

Amigo a mensagem é bem clara, informa que o sh não achou o arquivo "/script/diarias.sh" !!!

Onde exatamente está este script diarias.sh ? Informe o caminho completo para ele.




é então @C4rl éra isso q eu ava tentado falar acima! o arquivo esta la!!!
tanto no /sbin ou mesmo num diretorio apartado que eu criei /script com permissão de execução




24. Re: Cron não Funciona! [RESOLVIDO]

Carlos Adean
C4rl

(usa CentOS)

Enviado em 24/06/2015 - 16:30h

Cara fiz questão de fazer algo semelhante ao que você está fazendo e funciona sem problemas.

Uma pergunta, algum motivo especial para usar "sh" ao invés do "bash"? Então use "bash".

Segue....


root@lineacln010:~# mkdir /script
root@lineacln010:~# echo -e '#!/bin/bash\necho "Testando script diarias.sh com saída para output\n $(date)"' > /script/diarias.sh
root@lineacln010:~# chmod +x /script/diarias.sh
root@lineacln010:~# crontab -e
...
# m h dom mon dow command
*/1 * * * * bash /script/diarias.sh >> /script/diarias.log

root@lineacln010:~# tail /var/log/syslog
Jun 24 16:26:39 lineacln010 crontab[3490]: (root) REPLACE (root)
Jun 24 16:26:39 lineacln010 crontab[3490]: (root) END EDIT (root)
Jun 24 16:26:42 lineacln010 crontab[3526]: (root) LIST (root)
Jun 24 16:27:01 lineacln010 CRON[3540]: (carlosadean) CMD ($HOME/script.sh >> $HOME/script.out)
Jun 24 16:27:01 lineacln010 CRON[3541]: (root) CMD (bash /script/diarias.sh >> /script/diarias.log)

root@lineacln010:~# cat /script/diarias.log
Testando script diarias.sh com saída para output
Qua Jun 24 16:27:01 BRT 2015
Testando script diarias.sh com saída para output
Qua Jun 24 16:28:01 BRT 2015
Testando script diarias.sh com saída para output
Qua Jun 24 16:29:01 BRT 2015
Testando script diarias.sh com saída para output
Qua Jun 24 16:30:01 BRT 2015








Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts