Un job lancer en crontab a un environnement divfferent qu'en ligne de commande .
De plus il n'a pas forcement le meme shell
donc le script doit plutot commencer par :
#!/bin/bash ou pdksh ou ce que tu veut (meme perl)

pour verifier s'il y a des erreurs (et dans tout les cas normalement )
il faux redirectionner tes sortie standart et des erreur :
30    22    *    *    1-5    /home/sauve > /home/moncript.log 2>&1

la dans ton fichier log tu aurra peut etre des explications .........

pour tester l'environement tu peut m�me ajouter au debut de ton script la commande
set histoire de retrouver
dans le log les element d'environnement (PATH notemment..)




Benoit Caron a �crit :

> Il est �crit en quoi, ton script de sauvegarde?
>
> J'ai l'impression que t'as simplement une erreur dans la configuration
> de ta cron job.
>
> Les commandes lanc�es dans cron n'ont pas le m�me environnement que
> lorsque lanc� dans un shell ordinaire. Il faut souvent leur donn� plus
> de d�tails
>
> > >
> > je programme des sauvegardes au travers d'un script nomm� /home/sauve. Si je
> > lance /home/sauve, la sauvegarde s'effectue normalement.
>
> Ton script est bien situ� directement dans le r�pertoire /home ? Je suis
> peut-etre trop puriste, mais ca ne me semble pas tres clean... Pourquoi
> ne pas le mettre dans le r�pertoire de son propri�taire?
>
> >  Je faie crontab -e, puis je tape
> > 30    22    *    *    1-5    /home/sauve &
> > du lundi au vendredi � 22h30
>
> Si on suppose que ton script est en Perl (d�sol�, je fais _tout_ en
> Perl.. ;oD), ca te donnerais plus kk chose comme
>
> 30 22 * * 1-5 /usr/bin/perl /home/sauve
>
> Pas de & � la fin.
>
> Regarde man crontab pour plus d'info sur l'environnement que recoit la
> cron job.
>
> --
> Benoit Caron
> Analyste-Programmeur
> Netgraphe - Webfin.com - Le Web Financier
> - - - - - - - - - - - - - - - - - - - - - - - -
> Those who do not understand Unix are condemned to reinvent it, poorly.
> -- Henry Spencer


Répondre à