Execution de cron??? - Linux et OS Alternatifs
Marsh Posté le 04-02-2002 à 11:43:25
Ben ca depend, ou se trouve cfengine ?
Le plus simple est de specifier le chemin complet, du genre:
/usr/local/bin/cfengine -v
dans ta crontab, comme ca pas de probleme...
++
Marsh Posté le 04-02-2002 à 13:57:54
Cela ne marche pas, il y a un problème avec une variable d'environnement (CFINPUTS). Elle ne veut pas se remplir par le biais du cron.
Pourtant, en ligne de commandes, je la remplie puis je peux lancer cfengine sans problème !!!!!!!!
:pt1cable::pt1cable::pt1cable::pt1cable:
:pt1cable::pt1cable::pt1cable::pt1cable:
:pt1cable::pt1cable::pt1cable::pt1cable:
:pt1cable::pt1cable:
Marsh Posté le 04-02-2002 à 14:05:38
Bah ouais, 'faut faire gaffe au $PATH défini dans le cron. À mon avis, ya pas grand'chose dedans. En fait, la plupart des variables d'environnement ne sont pas là, comme par exemple les locales. Qu'est-ce que j'ai merdé à cause de ça.
Marsh Posté le 04-02-2002 à 14:13:10
Peux tu m'expliquer; dans mon $PATH je retrouve bien le chemin qui va bien ????????
Marsh Posté le 04-02-2002 à 14:16:22
Oui au debut de ton fichier crontab tu peux definir des variables d'environnement telles que le PATH (par ex: 'PATH=/usr/binusr/local/bin' et dans ton cas tu peux definir CFINPUTS en en-tete de ta crontab (CFINPUTS=machin_bidule)
Avec ca ca devrait rouler
++
Marsh Posté le 04-02-2002 à 14:20:22
Je te remercies, effectivement il faut la définir dans la crontab et non dans fichier de réferences.
:jap::jap::jap::jap::jap:
Marsh Posté le 04-02-2002 à 14:24:08
Non, le cron n'est pas un shell. Tes variables d'environnement ne se chargent sur ton shell que d'après les .bashrc et autre .profile. Aucun rapport avec cron. Pour en être convaincu, mets une ligne de ce type dans ton cron :
* * * * * echo $PATH > /tmp/machin.test
Comme ça, tu verras ce qu'il y a dans ta variable $PATH pendant un cron.
Marsh Posté le 04-02-2002 à 14:26:44
Tiens, extrait du man crontab :
Unlike other crond/crontabs, this crontab does not try to do everything under the sun. Frankly, a shell script is much more able to manipulate the environment then cron and I see no particular reason to use the user's shell (from his password entry) to run cron commands when this requires special casing of non-user crontabs, such as those for UUCP. When a crontab command is run, this crontab runs it with /bin/sh and sets up only three environment variables: USER, HOME, and SHELL.
Marsh Posté le 04-02-2002 à 15:36:08
Oui mais ensuite rien ne t'empeche de definir d'autres variables d'environnement(ds la crontab, donc valables pour toutes les taches), ou d'appeler un script qui definira des variables d'env (valables pr une seule tache)
++
[edtdd]--Message édité par pipomolo--[/edtdd]
Marsh Posté le 04-02-2002 à 16:56:28
Exactement, c'est comme ça que je fais quand j'en ai besoin.
Mais par défaut, le cron, il est à poil.
Marsh Posté le 04-02-2002 à 11:33:58
Bonjour à tous,
Voila j'aimerais créer un cron qui me permmette de lancer une appli.
VOila, le debut de mon cron :
cd /usr/local/share/cfengine/ -> cette tâche s'effectue sans problème.
cfengine -v; -> et la il me sors un command not found, alors que la commande existe bien, je peux l'executer manuellement.
Ma question est donc comment fait on pour lancer une appli par le biais d'un cron?????