IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration système Discussion :

Wget n'écoute pas cron :(


Sujet :

Administration système

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 114
    Points : 73
    Points
    73
    Par défaut Wget n'écoute pas cron :(
    Bonsoir,

    J'ai un problème assez incroyable me direz-vous car lorsque j'exécute un wget dans un fichier directement au clavier ou indirectement avec une crontab, le résultat n'est pas le même : le 1er fonctionne mais pas le second

    Je m'explique
    Dans un fichier script.sh, j'ai par exemple ceci :Lorsque je tape dans mon terminal la commande :
    sh script.sh
    ...j'obtiens le téléchargement de la cible (ici, c'est index.html). Mais, si j'entre cette même commande via une crontab -e, c'est-à-dire :
    * * * * * /etc/script.sh
    ...et bien tout ce que contient mon script est exécuté normalement, sauf là où y'a la commande wget

    ...et c'est pas faute d'avoir fait des tests !
    J'ai aussi tenté via un chmod 777 script.sh de mettre tous les droits mais cela n'a rien changé.

    Surtout n'hésitez pas à proposer vos plants, cela m'aiderait beaucoup

    Bonne soirée et merci encore.

    Edit. : pour information, je précise que je travaille sous OpenBSD 3.8 et que j'utilise wget-1.10 (avec gettext-0.10.40p3 et libiconv-1.9.2p1)

  2. #2
    Membre éprouvé Avatar de gnto
    Homme Profil pro
    Ingénieur système logiciel
    Inscrit en
    Janvier 2006
    Messages
    923
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur système logiciel
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2006
    Messages : 923
    Points : 1 210
    Points
    1 210
    Par défaut
    quel est la commande exécuté avant wget ?

  3. #3
    Responsable technique

    Avatar de Anomaly
    Homme Profil pro
    Directeur
    Inscrit en
    Juin 2003
    Messages
    10 335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Directeur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 335
    Points : 130 271
    Points
    130 271
    Billets dans le blog
    1
    Par défaut
    Vérifie aussi ton PATH, il se peut que le PATH ne soit pas celui de ton profil bash quand il est exécuté par cron et wget ne serait donc peut-être pas trouvé... Essaye en mettant le chemin d'accès complet vers wget.
    Responsable technique forum & site

    Si ce message (ou un autre) vous a aidé et/ou vous semble pertinent, votez pour lui avec

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 114
    Points : 73
    Points
    73
    Par défaut
    Merci pour la rapidité de votre aide, et pour votre aide surtout
    quel est la commande exécuté avant wget ?
    En fait j'ai dans un gros script un tas de lignes, mais qui n'ont aucune importance, vraiment. Aussi pour ne pas encombrer innutilement ce sujet j'ai préféré ne pas les copier. Pour preuve, j'ai fais il y a quelques minutes un test (assez ridicule mais pédagogique) avec l'exemple cité plus haut : un script d'une ligne... d'une commande, dont le but et des dl index.html (la 1ère page de google). Et c'est exactement pareil, -> si j'execute ça sur mon shell ça fonctionne (je vois même les détails du téléchargement). En revanche il ne se passe rien lorsque j'essaye d'en faire autant chaque minute via cron.

    Vérifie aussi ton PATH, il se peut que le PATH ne soit pas celui de ton profil bash quand il est exécuté par cron et wget ne serait donc peut-être pas trouvé...
    Ah bon ? En tout cas ce dont je suis sûr, c'est que mon démon cron fonctionne, je l'ai d'ailleurs utilisé pour certains autres scripts et aucun souci.

    Si cela peut être utile, voici ce que je lis en haut, juste avant mes lignes cron :
    SHELL=/bin/sh
    PATH=/bin:/sbin:/usr/bin:/usr/sbin
    HOME=/var/log
    Essaye en mettant le chemin d'accès complet vers wget.
    C'est parti, j'essaye ça

    Edit. : je viens de tester en précisant dans le fichier de test scripts.sh ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /usr/local/bin/wget http://google.com
    ...mais cela ne change rien
    ALler j'y retourne.

  5. #5
    Membre éprouvé Avatar de gnto
    Homme Profil pro
    Ingénieur système logiciel
    Inscrit en
    Janvier 2006
    Messages
    923
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur système logiciel
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2006
    Messages : 923
    Points : 1 210
    Points
    1 210
    Par défaut
    a tout hasard, les permissions d'execution de wget sont correct ?

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 114
    Points : 73
    Points
    73
    Par défaut
    Bravo !! C'était effectivement la solution Anomaly

    J'avais cru comprendre mais en fait, ce que tu proposais, c'était d'ajouter le chemin de l'exécutable parmis ceux dans PATH. J'ai donc ajouté ça :

    PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin

    ...et là, ça fonctionne !!!

    Bonne continuation et merci pour votre aide.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. EventListener n'écoute pas
    Par astonman59 dans le forum ActionScript 1 & ActionScript 2
    Réponses: 0
    Dernier message: 23/04/2009, 23h36
  2. listener qui n'écoute pas
    Par sydius dans le forum Composants
    Réponses: 18
    Dernier message: 18/06/2008, 16h20
  3. addEventistener qui écoute pas mon click :(
    Par kimo0n dans le forum ActionScript 3
    Réponses: 2
    Dernier message: 02/05/2008, 18h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo