Précédent   Forum des professionnels en informatique > Systèmes > Linux > Système
Système Vos questions autour de l'administration système
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/06/2006, 21h38   #1
Membre du Club
 
Inscription : octobre 2004
Messages : 114
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 114
Points : 40
Points : 40
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 :
Citation:
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 :
Citation:
* * * * * /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)
tsing est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/06/2006, 21h40   #2
Membre Expert
 
Avatar de gnto
 
Homme
Consultant informatique
Inscription : janvier 2006
Messages : 910
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Consultant informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : janvier 2006
Messages : 910
Points : 1 182
Points : 1 182
quel est la commande exécuté avant wget ?
gnto est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/06/2006, 21h42   #3
Responsable technique
 
Avatar de Anomaly
 
Homme
Administrateur systèmes et développeur Web
Inscription : juin 2003
Messages : 7 438
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France, Somme (Picardie)

Informations professionnelles :
Activité : Administrateur systèmes et développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : juin 2003
Messages : 7 438
Points : 14 197
Points : 14 197
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
Anomaly est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/06/2006, 22h00   #4
Membre du Club
 
Inscription : octobre 2004
Messages : 114
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 114
Points : 40
Points : 40
Merci pour la rapidité de votre aide, et pour votre aide surtout
Citation:
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.

Citation:
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 :
Citation:
SHELL=/bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/sbin
HOME=/var/log
Citation:
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 :
/usr/local/bin/wget http://google.com
...mais cela ne change rien
ALler j'y retourne.
tsing est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/06/2006, 22h11   #5
Membre Expert
 
Avatar de gnto
 
Homme
Consultant informatique
Inscription : janvier 2006
Messages : 910
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Consultant informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : janvier 2006
Messages : 910
Points : 1 182
Points : 1 182
a tout hasard, les permissions d'execution de wget sont correct ?
gnto est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/06/2006, 23h02   #6
Membre du Club
 
Inscription : octobre 2004
Messages : 114
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 114
Points : 40
Points : 40
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.
tsing est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h18.


 
 
 
 
Partenaires

Hébergement Web