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  ![[:cupra] [:cupra]](https://forum-images.hardware.fr/images/perso/cupra.gif) 
  
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  )
 ) ![[:ddr555] [:ddr555]](https://forum-images.hardware.fr/images/perso/ddr555.gif) 
 
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  ![[:cupra] [:cupra]](https://forum-images.hardware.fr/images/perso/cupra.gif) 
 
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 :   | 
 
 
 
 
 
 ![[:dehors] [:dehors]](https://forum-images.hardware.fr/images/perso/dehors.gif)
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 ??  | 
 
 ![[:tetardking] [:tetardking]](https://forum-images.hardware.fr/images/perso/tetardking.gif) 
  
(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 ![[:ddr555] [:ddr555]](https://forum-images.hardware.fr/images/perso/ddr555.gif)
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 :
 bin>
bin> 
- 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/bin
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...