Bonjour,
C’est mon premier post ici, si j’ai oublié un truc ne m’en voulez pas trop
je me casse la tête depuis un certain temps, pour ne pas dire un temps certain, sur la planification d’un tache crontab.
En gros, la mise à jour de mes dyndns OVH.
ça fonctionnait nickl sur Jessie, mais depuis que je suis passé sur Stretch c’est le calvaire, déjà w3m qui était sur Jessie n’est plus sur Stretch, j’ai du faire avec lynx, mais là, c’est vraiment un truc bizarre qui m’arrive.
Je précise que tout fonctionne nickel si lancé dans un Shell à la main (avec le compte pi ou root, c’est pareil).
j’ai identifié la ligne qui me bloque et qui semblerait-il ne remonte rien via crontab (alors qu’à la main, vous pouvez la tester chez vous ça tourne, pensez à créer l’arborescence pour le fichier ip_new).
/usr/bin/lynx --source www.monip.org | sed -nre ‹ s/^.* (([0-9]{1,3}.){3}[0-9]{1,3}).*$/\1/p › >> /scripts/cache/ip_new
Normalement vous obtenez votre IP Publique. maintenant quand le fais un crontab -e, je créé un petit test.sh (sous oublier #!/bin/sh au début ), je colle la query du dessus dedans, et je balance son exécution dans crontab (toute les minutes je sais, le temps de debugguer le truc) :
*/1 * * * * /bin/bash /scripts/test.sh 2>/home/pi/cron_test.log
à chaque exécution, il n’écrit rien, le cron_test.log reste vide, le fichier ip_new est vide aussi (preuve qu’il y accede, il efface la donnée que je pourrais y mettre manuellement).
un cat /var/log/syslog|grep cron me dit que ça s’execute pourtant, le Cron tourne et lance le script.
j’ai un peu tout essayé, mettre les chemins complets, utiliser pi ou root, mettre des droits plutôt très permissifs, rien n’y fait, toujours pareil.
Si quelqu’un a une idée je prend