[Crontab] Execution impossible

Fermé
Jaime - 25 juin 2010 à 16:36
dubcek Messages postés 18753 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 7 novembre 2024 - 28 juin 2010 à 16:30
Bonjour à tous,

je débute sur Linux, et je souhaiterai planifier le lancement d'un script par Crontab.

Je suis donc passé par la commande "crontab -e" afin de rajouter ma tâche.


Voici le contenu du fichier :

17 16 * * 5 sh /home2/step/script_import.sh

Je pense que ma syntaxe est correcte et je précise que le script s'exécute parfaitement via une exécution manuelle.

J'ai donc épluché les forums afin de trouver une solution. J'ai tenté de redémarrer le service, mais cela n'a rien changé.

le ps -ef | grep cron me donne :

root 18676 1 0 16:13 ? 00:00:00 crond
root 18893 32663 0 16:27 pts/0 00:00:00 grep cron

et le crontab -l me donne :

17 16 * * 5 sh /home2/step/script_import.sh

Cela semble donc bien pris en compte.... (je suis en root pour info)


Merci d'avance pour votre aide,

Cordialement,



8 réponses

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
25 juin 2010 à 18:36
Salut,

Quel système ?
Quelle distrib ?
Que contient ton script ?
Les chemins des exécutables et des répertoires sont-ils bien absolus ?

Essaye avec '/bin/sh' :

17 16 * * 5 /bin/sh /home2/step/script_import.sh 

Ou en rendant ton script exécutable :

chmod u+x /home2/step/script_import.sh 

Puis :

17 16 * * 5 /home2/step/script_import.sh 
0
Salut jipicy,

merci de l'aide. Pour répondre à tes questions, je suis sous RedHat Enterprise 3.0AS.

Mon script me permet de scinder un fichier XML en plusieurs parties, avec coupure "propre" + reconstitution des balises.

Celui-ci fonctionne correctement par lancement manuel.

J'ai également tenté de planifier un "echo" tout bête dans le crontab mais je n'ai eu aucun résultat.

Je viens de tester le CHmod + /bin/sh et cela n'a rien changé, pas de signe d'execution.

Je me demande si mon contrab est bien actif, et si le fichier que j'édite est le bon...
0
dubcek Messages postés 18753 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 7 novembre 2024 5 619
28 juin 2010 à 09:56
hello
si elle n'est pas redirigée, la sortie d'un echo dans un job cron ne va pas s'afficher.
ajouter cette ligne dans crontab pour vérifier si cron fonctionne:
* * * * * sh date >> /tmp/log1
un job cron ne fait pas de login, peut-être te manque-t-il des variables, ajouter au début du script:
source ~/.bashrc
0
Salut dubcek,

merci pour ton aide, le crontab execute en effet bien la tâche
* * * * * sh date >> /tmp/log1

donc apparement le cron fonctionne correctement.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
dubcek Messages postés 18753 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 7 novembre 2024 5 619
28 juin 2010 à 12:05
mettre des traces (date ou echo) dans le script et capturer tous les messages
 17 16 * * 5 sh /home2/step/script_import.sh >>/tmp/log2 2>&1
0
Ok super, j'ai réussi à cerner le problème.

A un moment, je fais une copie d'un fichier vers mon repertoire /home2/step/, où je traite ensuite ce fichier.

Le script en question que je tente d'exécuter :
#!/bin/bash
set -xv

mv -f /home2/pourtous/french-B2C-Shops.xml french-B2C-Shops.xml



Voilà le résultat dans le fichier de sortie : "mv: writing 'french-B2C-Shops.xml': No space left on device"

Quand j'exécute ce même script à la main, la copie se fait pourtant bien...
0
dubcek Messages postés 18753 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 7 novembre 2024 5 619
28 juin 2010 à 15:59
vérifier l'espace avec la commande df
à la main, il est exécuté abvec les droits root ?
0
Avec df, j'ai bien suffisament d'espace sur le home2 (48g de libre, le fichier en fait 2 environ).
Il est bien exécuté sous root.
0
dubcek Messages postés 18753 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 7 novembre 2024 5 619
28 juin 2010 à 16:11
sous root à la main ?
avec mv -f /home2/pourtous/french-B2C-Shops.xml french-B2C-Shops.xml si tu n'est pas dans /home2, la destintion va aller ailleur
0
Oups, désolé, grosse erreur de ma part.

La destination est en chemin relatif. En le mettant en absolu, plus de soucis...

J'aurai du mieu regarder, surtout que l'on me l'avais signalé me semble t-il.

Merci beaucoup Dubcek pour ton aide en tout cas =)

Cordialement
0
dubcek Messages postés 18753 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 7 novembre 2024 5 619
28 juin 2010 à 16:30
quand un disque est plein, il reste toujours de l'espace pour root, de sorte qu'on peut avoir une erreur <plus d'espace> pour un utilisateur lambda mais pas pour root.
0