|
Publicité | ||||||||||||||||||||||
|
|
#1 | ||||||
|
Membre Expert
![]() Inscription : avril 2006 Messages : 1 332 ![]() |
Bonjour à tous,
Donc voila, depuis deux semaines j'essaye de lancer un script tous les soirs à 00h30, à l'aide d'une tâche CRON. Man et google m'ont filé quelques tuyaux mais malgrès les tests, je n'ai encore trouvé aucune solution qui fonctionne. Chemin absolu du script: Code :
/web_applis/www/html/horus/batch/collecte_launcher.cron Code :
Code :
Les chemin sont corrects (/usr/bin/php -f /web_applis/www/html/horus/batch/getfile/getfile.php se lance en terminal sans problèmes) Les droits sont bons (terminal en webadmin et /./web_applis/www/html/horus/batch/collecte_launcher.cron lance le script). J'ai essayé plusieurs trucs: Code :
Quelqu'un pour me dépanner? Merci.
__________________
Stay in Bed .. Save Energy |
||||||
|
|
00
|
|
|
#2 |
![]() ![]() R&D en systemes informatiques bas niveau Unix/Linux Inscription : mai 2004 Messages : 5 129 ![]() |
Bonjour,
Tu as tres certainement un probleme d'environnement lors de l'appel a php : cela fonctionne bien dans un terminal car ton environnement est bien fait, mais comme cet environnement n'est pas chargé dans la crontab, l'execution ne se fait pas. Essaye de lancer ta commande dans un environnement vierge, ca devrait te permettre de trouver ce qui ne va pas. |
|
|
00
|
|
|
#3 |
|
Membre Expert
![]() Inscription : avril 2006 Messages : 1 332 ![]() |
Bonjour et merci mais, euh, un "environnement vierge"? Je trouve ça ou
Je m'étais dis que hors terminal les variables d'environnement système n'étaient peu être pas définies, c'est pour ça que dans mon script j'ai remplacé les "php monphp.php" par des "/usr/bin/php -f monphp.php". Cela dis, le problème persiste, et à part le chemin de php, je ne vois pas ce qui pourrait dépendre de l'environnement...
__________________
Stay in Bed .. Save Energy |
|
|
00
|
|
|
#4 | ||
|
Membre confirmé
![]() Cédric Inscription : novembre 2003 Messages : 308 ![]() |
Essayons petit à petit :
1- les logs ? y a t il des choses intéressantes dans /var/log/secure et /var/log/messages ? en rapport avec ton script cron ? 2- juste au cas ou : /web_applis/www/html/horus/batch/collecte_launcher.cron a bien les droits d'execution ? Si tu le lances manuellement, il fait bien ce que tu souhaites ? 3- debug Code :
Cela te permettra de savoir au moins si ton script se lance, et s'il s'arrête au millieu.
__________________
The Big Bang theory : In the beginning there was nothing, and it exploded. (Terry Pratchett) IT Quote : "Unix is user-friendly. It's just very selective about who its friends are." |
||
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() Inscription : avril 2006 Messages : 1 332 ![]() |
Salut, alors:
Dans /var/log/secure j'ai que des trucs qui se rapportent à mes ouvertures de session ssh, rien qui ressemble à du cron, ni qui corresponde à l'horaire en question; Dans /var/log/messages, que des ouvertures de session FTP et des redémarages du daemon syslog semble t'il. /./web_applis/www/html/horus/batch/collecte_launcher.cron lance le script (à partir d'un terminal utilisateur "webadmin"), donc les droits d'execution sont ok: Pour le debug, j'essaye ca, je post le result demain. Merci bien!
__________________
Stay in Bed .. Save Energy |
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() Inscription : avril 2006 Messages : 1 332 ![]() |
Ce matin, rien de neuf dans /var/log/message (enfin si après que j'ai lancé le script à la main
C'est donc bien ma tache cron qui déconne. Un problème de syntaxe? doit on mettre le nom de l'utilisateur devant le script à lancer? Et pour le script en lui même, doit on mettre son chemin d'accès (/web_applis/...) ou sa commande d'execution (/./weba_applis/...). Ya tout et rien sur google
__________________
Stay in Bed .. Save Energy |
|
|
00
|
|
|
#7 |
![]() ![]() R&D en systemes informatiques bas niveau Unix/Linux Inscription : mai 2004 Messages : 5 129 ![]() |
Bonjour,
Pour l'environnement vierge, tu peux par exemple creer un utilisateur test sans option particuliere, puis te logguer via "su - test" |
|
|
00
|
|
|
#8 | |||
|
Membre confirmé
![]() Cédric Inscription : novembre 2003 Messages : 308 ![]() |
Citation:
On a donc la source du problème. Pas si tu créé ceci depuis l'utilisateur en question, je ne pense pas. Personnellement, je créer un fichier (en tant que root) : /etc/cron.d/mon_cron Qui contiendrait exactement ceci : Code :
ça fait quoi si tu fais : juste au cas ou... pour vérifier. PS : Je crois qu'il y a une méthode pour forcer l'exécution d'un cron job particulier... non, parce que si tu es obligé d'attendre minuit et demi à chaque fois... ça doit être lassant comme tests
__________________
The Big Bang theory : In the beginning there was nothing, and it exploded. (Terry Pratchett) IT Quote : "Unix is user-friendly. It's just very selective about who its friends are." |
|||
|
|
00
|
|
|
#9 |
|
Membre Expert
![]() Inscription : avril 2006 Messages : 1 332 ![]() |
Bonjour,
Bonne nouvelle, ce matin je constate que le script se lance bien pendant la nuit! Reste à savoir pourquoi... le cron (terminal webadmin: crontab -e): Code :
30 0 * * * /web_applis/www/html/horus/batch/collecte_launcher.cron >> /web_applis/log/cron/collecte/cron_collecte.log Pourtant j'aurai juré avoir testé ça au moins 2 ou 3 fois, sans résultats. J'ai également redémarré cron.d, ce que je n'avait pas fait auparvant, pensant que ca n'était pas nécessaire (à juste titre?). Enfin merci du coup de main!
__________________
Stay in Bed .. Save Energy |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com