[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: crontab não executa comando [RESOLVIDO]



Obrigado a todos.
Os problemas eram 2 e nesses casos a gente sempre apanha um pouco.
O primeiro problema eu já havia resolvido quando iniciei essa thread, era relacionado ao SELinux e eu o desativei e o cron passou a ser executado.
Nas tentativas antes de descobrir esse problema o administrador da própria empresa fez alterações no arquivo /etc/crontab e nessa alteração ele colocou o usuário na linha adicionada.
Resolvi dando um "crontab -r" e excluindo as linhas do /etc/crontab, foi nesse momento que percebi o erro nesse arquivo pois as dicas dos colegas aqui me fizeram atentar para do nome do usuário nesse arquivo.

Obrigado.


De: Eden Caldas <edencaldas@gmail.com>
Para: Paulino Kenji Sato <pksato@gmail.com>
Cc: Debian-User <debian-user-portuguese@lists.debian.org>
Enviadas: Quinta-feira, 6 de Outubro de 2011 18:12
Assunto: Re: crontab não executa comando

Não coloca o nome do usuário dentro do crontab do root, como já disseram.

Outra coisa. Se liga que o path do crontab é diferente do shell padrão em login. Talvez esses scripts php aí estejam rodando algo que precise do path completo.

Você poderia então criar um script com o path padrão e esses seus dois comandos aí.


Cria o script assim:

su -
echo '#!/bin/bash' > /root/script.sh
echo $PATH >> /root/script.sh
echo '/usr/bin/php /home/httpd/html/script1.php' >> /root/script.sh
echo '/usr/bin/php /home/httpd/html/script2.php' >> /root/script.sh
chmod +x /root/script.sh

Agenda o script criado no crontab:


crontab -e
0,30 * * * * /root/script.sh

Eden Caldas
Consultor de TI
eden@linuxfacil.srv.br
(81) 9653 7220
LINUX FÁCIL – Consultoria e Serviços em TI


Em 6 de outubro de 2011 16:45, Paulino Kenji Sato <pksato@gmail.com> escreveu:
Ola...

2011/10/6 Cleber Ianes <cleberianes@yahoo.com.br>:
> Saudações.
> Outro dia me foi solicitado para fazer um servidor centOS executar um
> determinado comando a cada 30 minutos.
Vai ver pq não e um debian. [:)]

> Logo pensei: "Eita dinheirinho fácil, 5 minutos faço isso!"
> Ledo engano.
> Como root executei o comando "crontab -e" e inseri as linhas:
>     */30   *       *       *       *       root /usr/bin/php
> /home/httpd/html/script1.php

Editou o crontab de que usuário (obviamente do root)?
o crontab do usuário tem o seguinte formato
min hora dia mes semana comando argumentos

Somente quando se usa o "system wide", ou seja os agendamentos que
estão no /etc/crontab ou em um dos arquivos em /etc/cron.d/  que se
usa o campo do usuário.
Mas, tem certeza que e necessário rodar um script em PHP como root?
Pensou nas implicações de segurança disso?

Recomendo que leia o manual do cron e do crontab(5) do sistema onde
esse script ira rodar (no debian existem ao menos 3 ferramentas de
crond).




Paulino


--
To UNSUBSCRIBE, email to debian-user-portuguese-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: http://lists.debian.org/CAMM-fMiAP27MCZ9OkoVcQNuú9_m4cLs54AfZtzwT67Xxg3w@mail.gmail.com





Reply to: