crontab et script sh... [gentoo] - Codes et scripts - Linux et OS Alternatifs
Marsh Posté le 16-06-2003 à 14:54:42
pk ne pas mettre ca dans cron.d ??
Marsh Posté le 16-06-2003 à 14:57:15
Ca c'est pas sympa de répondre à ma question par une autre question...
cron.d ? Je vais me documenter un peu car je ne connais pas...
Mais y a des chances que mon erreur disparaisse ??
Marsh Posté le 16-06-2003 à 15:16:52
senado a écrit : Ca c'est pas sympa de répondre à ma question par une autre question... |
bah j ai deja eu des pb en editant la crontab
pk je sais pas
en fait, le script n etait pas lance, mais si je l appelais depuis "cron.d", ca marchait
Marsh Posté le 16-06-2003 à 15:17:07
Mikala a écrit : en rajoutant derriere ? |
ca change pas ke ca marchera pas
Marsh Posté le 16-06-2003 à 15:19:57
Bah il n'aura plus de mail non ? )
sinon vaut mieux aller en root & faire un joli crontab -e
pour y coller son truc gerne
*/3 * * * * /root/ipcheck/ipcheck.sh > /dev/null 2>&1
Marsh Posté le 16-06-2003 à 15:22:22
Mikala a écrit : Bah il n'aura plus de mail non ? ) |
bah nan, il aura peut etre po de mail, mais son script sera kan meme po lance
Marsh Posté le 16-06-2003 à 15:23:44
je part du principe que son script est bien dans /root/ipcheck & qu'il a bien un chmod genre 711 dessus
Marsh Posté le 16-06-2003 à 15:26:02
Je me suis peut être mal exprimé, mais tout fonctionne correctement, le script est lancé et tourne sans problème. Mon problème est que la boite aux lettres du root est rempli de 600 ou 700 mails par jour... c'est plutot ça le problème...
Je veux bien essayer de rediriger vers /dev/null mais j'ai l'impression que je vais être obligé de le faire pour chaque ligne de mon crontab...car je crois que la première ligne merde elle aussi (alors qu'elle est là d'origine...) !
merci de votre aide en tout cas..
Marsh Posté le 16-06-2003 à 15:29:07
tomate77 a écrit : |
tiens d'ailleurs son script devrait plutot avoir celle gueule la
Code :
|
d'ailleurs il pourrait directement mettre le truc dans la crontab
genre un
*/3 * * * * /root/ipcheck/ipcheck.py -l -Z 1234 -w XXXXXX XXXXXX XXXXXXXXX.homelinux.net > /dev/null/ 2>&1
avec le script python executable bien sur
apres si il se sert de son modem/routeur en temps que modem simple , il peut directement se passer de la crontab & mettre ce script dans un /etc/ppp/ip-up.d/
ou il ne sera rappellé qu'a chaque déco
Marsh Posté le 16-06-2003 à 15:31:05
senado a écrit : Je me suis peut être mal exprimé, mais tout fonctionne correctement, le script est lancé et tourne sans problème. Mon problème est que la boite aux lettres du root est rempli de 600 ou 700 mails par jour... c'est plutot ça le problème... |
bah disons que si tu as une sortie a l'execution de tes scripts tu recevras un mail sauf si tu spécifies le contraire ;o) ( d'ou l'utilité du /dev/null
ensuite le root qui recoit les mails c'est mal )
vaut mieux faire un alias vers ton utilisateur principal .
Marsh Posté le 16-06-2003 à 15:34:13
La solution serait quand même de trouver le pourquoi de cette erreur plutot que de la rediriger... Mais je ne comprends pas d'ou elle vient...
Marsh Posté le 16-06-2003 à 15:39:42
senado a écrit : La solution serait quand même de trouver le pourquoi de cette erreur plutot que de la rediriger... Mais je ne comprends pas d'ou elle vient... |
c'est pas une erreur ...
c'est ton script que tu executes qui fais une sortie txt ...
bilan cron te mail le résultat .
si tu ne veux pas de mail de maniere général il te suffit de rajouter un MAILTO="" dans ton fichier de crontab .
Marsh Posté le 16-06-2003 à 15:40:41
Mikala a écrit : |
le mieux serait d utiliser ddclient ke tu peux mettre en daemon
Marsh Posté le 16-06-2003 à 15:41:19
je crois que cette ligne est une erreur :
/bin/sh: line 1: root: command not found
Je vais essayer le MAILTO :"" ...
Marsh Posté le 16-06-2003 à 15:42:12
tomate77 a écrit : |
le bien c' est d'etre chez nerim & d'avoir une ip fixe
Marsh Posté le 16-06-2003 à 15:43:23
Mikala a écrit : |
ou chez free
ps : je suis chez mamadou hein + ddclient powaaa (tout est rapporte ds les logs systemes )
Marsh Posté le 16-06-2003 à 15:45:25
tomate77 a écrit : |
Je ne crois pas que ddclient marche avec mon modem/routeur/switch Zyxel Prestige 600.
Pour le script Python, il est vraiment trop long pour le mettre ici... Mais il n'est pas en cause... (si tu en as besoin à titre perso mp moi...)
Marsh Posté le 16-06-2003 à 15:45:55
tomate77 a écrit : |
free c'est pour les djeuns
nerim c'est pour les autres (les gens bien ,pas vrai jowile , joce & co )
Marsh Posté le 16-06-2003 à 15:47:23
senado a écrit : |
tu as essayé d'appelle directement ton script python dans la crontab _du_ root ?
(& pas dans ton truc général qui précise l'utilisateur a lancer )
Marsh Posté le 16-06-2003 à 15:47:25
senado a écrit : |
ddclient utilise ifconfig
Marsh Posté le 16-06-2003 à 15:47:44
Mikala a écrit : |
Marsh Posté le 16-06-2003 à 15:48:37
tomate77 a écrit : |
& ifconfig il fait comment pour choper l'ip vu qu'il n'aura pas de ppp+ ? )
juste pour savoir hein
Marsh Posté le 16-06-2003 à 15:49:40
Mikala a écrit : |
bah il te demande si c ppp+ ou autre chose
Marsh Posté le 16-06-2003 à 15:51:51
tomate77 a écrit : |
Non ifconfig connait pas l'adresse externe du modem/routeur...
Marsh Posté le 16-06-2003 à 15:53:20
tomate77 a écrit : |
le monsieur a dit qu'il avait un routeur ;o)
donc que c'est le routeur qui maintient la connexion, le nux derriere il ne voit que eth0 & co
& ifconfig ne lui filera jamais l'interface wan du routeur ( a moins bien sur qu'il fasse du half bridge mais il ne l'a pas précisé donc )
Marsh Posté le 16-06-2003 à 15:54:05
Mikala a écrit : |
Marsh Posté le 16-06-2003 à 21:11:55
Certains clients DynDns savent aller prendre l'ip dans le routeur. En fait, ils savent extraire l'ip des pages web d'administration.
Marsh Posté le 16-06-2003 à 21:47:11
dd client fonctionne tres bien, mon routeur est lui même derriere un routeur, ca pose aucun probleme, et en plus il se lance automatiquement en client tout seul donc pas de pb de crontab
Marsh Posté le 17-06-2003 à 09:11:38
ki avait (encore) raison ??
Marsh Posté le 17-06-2003 à 10:07:03
tomate77 a écrit : ki avait (encore) raison ?? |
(note bien qu'il ne s'appuie pas sur ifconfig pour se faire & c'était juste le *petit* probleme qui avait été soulevé )
Marsh Posté le 17-06-2003 à 10:08:59
Mikala a écrit : |
oui mais j avais kan meme donne le bon nom de logiciel a utiliser
Marsh Posté le 17-06-2003 à 10:16:56
ReplyMarsh Posté le 18-06-2003 à 11:33:46
Bon j'ai trouvé mon erreur tout seul... faut pas mettre "root" dans les lignes de mon crontab... Le pire c'est que le fichier d'origine a été généré par l'install de Gentoo...
Par contre maintenant je reçois encore un mail, pour me faire part d'un warning dans mon script python...
J'ai essayé :
MAILTO ="" ça change rien
> /root/ipchek/cron.log 2>&1 ça rempli bien le fichier, mais toujours envoi de mail...
D'autres idées ? (l'idéal serait de corriger le warning du script, mais j'y connais rien en Python et le script fait quand même 5000 lignes...)
Marsh Posté le 18-06-2003 à 16:11:42
senado a écrit : Bon j'ai trouvé mon erreur tout seul... faut pas mettre "root" dans les lignes de mon crontab... Le pire c'est que le fichier d'origine a été généré par l'install de Gentoo... |
Tu as omis le > /dev/null/ avant le 2>&1 ;o)
Marsh Posté le 18-06-2003 à 17:07:39
bah non, plutot que de rediriger dans le vide, je préfère savoir ce qu'il se passe, donc j'ai redirigé dans /root/ipcheck/cron.log
Marsh Posté le 18-06-2003 à 17:12:21
si tu le mets _avant_ ton 2>&1 tu auras toujours tes logs dans le fichier & plus de mail a mon humble avis , tu ne pourrais pas tester simplement ?
Marsh Posté le 16-06-2003 à 14:37:28
Alors pour mettre à jour mon adresse IP sur dyndns.org, j'utilise un client qui :
- interroge mon modem/routeur pour connaitre l'IP externe;
- compare l'IP obtenue à une autre stockée dans un fichier;
- si les IP sont différentes, met à jour la nouvelle IP sur dyndns...
Donc très classique, l'IP est mise à jour tous les 24 heures à chaque fois qu'elle change. Par contre la vérification du changement (interrogation de mon modem) se fait toutes les 3 minutes par l'intermédiaire du crontab.
Voici mon crontab :
# check scripts in cron.hourly, cron.daily, cron.weekly and cron.monthly
# for vixie cron
# remember to give cron a sighup when updating this file
#
# $Header: /home/cvsroot/gentoo-x86/sys-apps/vcron/files/crontab,v 1.2 2002/04/27 21:46:45 bangert Exp $
#
#
*/15 * * * * root test -x /usr/sbin/run-crons && /usr/sbin/run-crons
0 * * * * root rm -f /var/spool/cron/lastrun/cron.hourly
0 0 * * * root rm -f /var/spool/cron/lastrun/cron.daily
0 0 * * 6 root rm -f /var/spool/cron/lastrun/cron.weekly
0 0 1 * * root rm -f /var/spool/cron/lastrun/cron.monthly
*/3 * * * * root sh /root/ipcheck/ipcheck.sh
Et voici le script ipcheck.sh (qui fonctionne quand je le lance manuellement, sans erreur de sortie...):
#!/bin/sh
cd /root/ipcheck
/usr/bin/python /root/ipcheck/ipcheck.py -l -Z 1234 -w XXXXXX XXXXXX XXXXXXXXX.homelinux.net
rm -f /root/dead.letter
En fait tout cela fonctionne très bien, sauf que le cron envoie un mail à root à chaque ligne du cron :
From: root@XXXXXXX.homelinux.net (Cron Daemon)
To: root@XXXXXXX.homelinux.net
Subject: Cron <root@optiplex> root sh /root/ipcheck/ipcheck.sh
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/root>
X-Cron-Env: <PATH=/usr/binbin>
X-Cron-Env: <LOGNAME=root>
Message-Id: <20030616123900.7DE54EB534@vanillefraise.homelinux.net>
Date: Mon, 16 Jun 2003 14:39:00 +0200 (CEST)
/bin/sh: line 1: root: command not found
Si quelqu'un pouvait me donner un coup de main, je vois pas l'erreur...
Les droits sur le scripts sont rwx pour root et vide pour les autres...