#1 Le 13/03/2012, à 19:38
- timbuk
cron qui donne un ls bzarre
Salutations,
Je suis en train de configurer cron pour exécuter un script toutes les heures mais j'ai constaté qu'il ne trouvais pas toujours ce fameux script.
Après quelques manipulations, j'ai donc bien pu vérifier que le pwd était bon, j'ai donc essayé de m'envoyer un ls par mail à chaque fois qu'il exécute ce script.
Tout d'abord voici la ligne cron:
0 */1 * * * ls | mail -v email@tld.com -s "ls" ; sh scripts/DynHost/dynhost
Voici le contenu du mail de 14h:
Access-Your-Private-Data.desktop
dead.letter
README.txt
suivis de ceci dans le mail qui sert de rapport:
/bin/bash: line 0: sh: scripts/DynHost/dynhost: No such file or directory
Dans le mail de 18h:
documents
downloads
IRCBot
[...]
scripts
Suivi d'une execution tout à fait normale du script.
Donc cron ne trouve pas toujours les dossiers, alors qu'il est toujours au même endroit (j'ai vérifié avec locate Access-Your-Private-Data.desktop, il est situé au même endroit que le dossier script mais je ne peux pas y accéder)
Je ne sais pas trop quoi faire, je vois pas du tout pourquoi cron ne trouve pas tout le temps ces dossiers.
Merci d'avance
Hors ligne
#2 Le 13/03/2012, à 19:49
- Postmortem
Re : cron qui donne un ls bzarre
Salut,
Renseigne le chemin complet vers ton script : /home/user/scripts/DynHost/dynhost (à adapter avec ton user)
Mot' a dit : « Un Hellfest sans Slayer, c'est comme une galette-saucisse sans saucisse ! »
Hors ligne
#3 Le 14/03/2012, à 07:59
- timbuk
Re : cron qui donne un ls bzarre
J'ai remplacé la ligne par ça:
0 */1 * * * cd /home/[user]/scripts/DynHost/ ; ls | mail -v email@tld.com -s "ls" ; ./dynhost
Et ça ne s’exécute qu'une fois sur quatre, ceux de 19 à 21h marchent mais ceux qui sont après ont fail...
Si j’exécute ça juste avec mon terminal ça fonctionne parfaitement.
Hors ligne
#4 Le 14/03/2012, à 15:31
- credenhill
Re : cron qui donne un ls bzarre
hello
capturer tout les éventuels messages d'erreur
0 */1 * * * (cd /home/[user]/scripts/DynHost/ ; ls | mail -v email@tld.com -s "ls" ; ./dynhost) >> /tmp/log 2>&1
Hors ligne
#5 Le 14/03/2012, à 21:52
- timbuk
Re : cron qui donne un ls bzarre
Il n'y a pas d'erreur, seulement l'envoi du mail et l’exécution du script
Hors ligne