Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[cron] Soucis d'execution de shell

8 réponses
Avatar
Bulot Grégory
Bonjour,=20

J'ai un ptit spoucis avec crontab et un de mes shells de sauvegarde

soit mon shell :=20
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
#!/bin/sh

Src=3D/mnt/trinity/nfs/www/SitesVirtuels/XXXXXX/
Dest=3D/home/www/XXXXXX
Log=3D$Dest"/backup.log"

/bin/date > $Log

/usr/bin/rsync -qav $Src $Dest 1>$Log 2>&1


cat $Log | /usr/bin/mail moi -s "Sauvegarde de $Src terminee, v=EF=BF=BDifi=
er la date=20
de $Log"
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

Si je le lance en console root : le script fonctionne


si je le met dans le crontab de root : dans le /var/log/syslog, j'ai bien c=
ron=20
qui lance mon script, mais rien ne se passe ! (j'ai test=C3=A9 avec le scri=
pt dons=20
mon /root local sans passer par nfs, le probl=C3=A8me est identique !)


Quel peut =C3=AAtre le probl=C3=A8me =C3=A0 votre avis ?

8 réponses

Avatar
fabrice régnier
Salut,

Par hasard, tu n'as pas oublié un retour charriot après ta ligne de
crontab ? (Ca vient juste de m'arriver)

Autre possibilité: es-tu certain de tes paramètres de ta ligne cron ?
(exemple */5 * * 2 : toute les 5 minutes le mardi alors que nous sommes
lundi)

a+

f.

Bulot Grégory wrote:
Bonjour,

J'ai un ptit spoucis avec crontab et un de mes shells de sauvegarde

soit mon shell :
====================== > #!/bin/sh

Src=/mnt/trinity/nfs/www/SitesVirtuels/XXXXXX/
Dest=/home/www/XXXXXX
Log=$Dest"/backup.log"

/bin/date > $Log

/usr/bin/rsync -qav $Src $Dest 1>$Log 2>&1


cat $Log | /usr/bin/mail moi -s "Sauvegarde de $Src terminee, v�ifier la date
de $Log"
============================================ >
Si je le lance en console root : le script fonctionne


si je le met dans le crontab de root : dans le /var/log/syslog, j'ai bien cron
qui lance mon script, mais rien ne se passe ! (j'ai testé avec le script dons
mon /root local sans passer par nfs, le problème est identique !)


Quel peut être le problème à votre avis ?




--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Franck Joncourt
--cNdxnHkX5QqsyA0e
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Mon, Mar 12, 2007 at 10:39:59AM +0100, Bulot Grégory wrote:
Bonjour,

J'ai un ptit spoucis avec crontab et un de mes shells de sauvegarde

soit mon shell :
=======================
#!/bin/sh

Src=/mnt/trinity/nfs/www/SitesVirtuels/XXXXXX/
Dest=/home/www/XXXXXX
Log=$Dest"/backup.log"

/bin/date > $Log

/usr/bin/rsync -qav $Src $Dest 1>$Log 2>&1


cat $Log | /usr/bin/mail moi -s "Sauvegarde de $Src terminee, v�i fier la date
de $Log"
======================== =====================

Si je le lance en console root : le script fonctionne


si je le met dans le crontab de root : dans le /var/log/syslog, j'ai bien cron
qui lance mon script, mais rien ne se passe ! (j'ai testé avec le sc ript dons
mon /root local sans passer par nfs, le problème est identique !)


Quel peut être le problème à votre avis ?




donc pas le moindre message d'erreur ? Pas le moindre mail ?

Cela me dit peut etre quelque chose mais sans grande certitude.
Si tu ajoutes cela dans ton script, cela fonctionne t-il mieux ?

export TERM=xterm

--
Franck Joncourt
http://www.debian.org
http://smhteam.info/wiki/
GPG server : pgpkeys.mit.edu
Fingerprint : C10E D1D0 EF70 0A2A CACF 9A3C C490 534E 75C0 89FE

--cNdxnHkX5QqsyA0e
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: Digital signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQFF9ac0xJBTTnXAif4RApDRAJ9HJn6bzt174GhOeiXfsKPmy3ZAUgCcCOW7
NtzrpN80s1E4QgKW8yvq7Hg =tJT/
-----END PGP SIGNATURE-----

--cNdxnHkX5QqsyA0e--


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Bulot Grégory
Le lundi 12 mars 2007 17:20, fabrice régnier a écrit :
Salut,

Par hasard, tu n'as pas oublié un retour charriot après ta lign e de
crontab ? (Ca vient juste de m'arriver)



Après modif, RAS


Autre possibilité: es-tu certain de tes paramètres de ta ligne cron ?
(exemple */5 * * 2 : toute les 5 minutes le mardi alors que nous sommes
lundi)



59 08 * *
* /mnt/trinity/nfs/www/SitesVirtuels/XXXX/batch/TrinityToPrimer gy.sh
59 08 * *
* /mnt/trinity/nfs/www/SitesVirtuels/XXXX/batch/test.cron.sh


Je peux me tromper, mais la je vois pas l'erreur nul n'est parfait ;-)
Avatar
Bulot Grégory
Le lundi 12 mars 2007 20:17, Franck Joncourt a écrit :
On Mon, Mar 12, 2007 at 10:39:59AM +0100, Bulot Grégory wrote:
> Bonjour,
>
> J'ai un ptit spoucis avec crontab et un de mes shells de sauvegarde
>
> soit mon shell :
> =======================
> #!/bin/sh
>
> Src=/mnt/trinity/nfs/www/SitesVirtuels/XXXXXX/
> Dest=/home/www/XXXXXX
> Log=$Dest"/backup.log"
>
> /bin/date > $Log
>
> /usr/bin/rsync -qav $Src $Dest 1>$Log 2>&1
>
>
> cat $Log | /usr/bin/mail moi -s "Sauvegarde de $Src terminee, vï¿ ½ifier la
> date de $Log"
> ======================= ======================
>
> Si je le lance en console root : le script fonctionne
>
>
> si je le met dans le crontab de root : dans le /var/log/syslog, j'ai bi en
> cron qui lance mon script, mais rien ne se passe ! (j'ai testé ave c le
> script dons mon /root local sans passer par nfs, le problème est
> identique !)
>
>
> Quel peut être le problème à votre avis ?

donc pas le moindre message d'erreur ? Pas le moindre mail ?



rien, juste dans syslog, le temoin de cron laissant supposer qu'il tente de
lancer mon shell, j'ai ajouter un autre shelle qui envoi a syslog "test"
====== test.cron.sh ====
#!/bin/sh

/usr/bin/logger -i test
===============

Mar 13 08:53:46 primergy crontab[29722]: (root) BEGIN EDIT (root)
Mar 13 08:54:07 primergy crontab[29722]: (root) REPLACE (root)
Mar 13 08:54:07 primergy crontab[29722]: (root) END EDIT (root)
Mar 13 08:55:01 primergy /usr/sbin/cron[25427]: (root) RELOAD (crontabs/roo t)
Mar 13 08:55:01 primergy /USR/SBIN/CRON[29727]: (root) CMD
(/mnt/trinity/nfs/www/SitesVirtuels/XXXXXX/batch/TrinityToPrimergy.sh)
Mar 13 08:55:01 primergy /USR/SBIN/CRON[29728]: (root) CMD
(/mnt/trinity/nfs/www/SitesVirtuels/XXXXXX/batch/test.cron.sh)
Mar 13 08:55:01 primergy logger[29730]: test




Cela me dit peut etre quelque chose mais sans grande certitude.
Si tu ajoutes cela dans ton script, cela fonctionne t-il mieux ?

export TERM=xterm



idem ci-dessus !
Avatar
fabrice régnier
> 59 08 * *
* /mnt/trinity/nfs/www/SitesVirtuels/XXXX/batch/TrinityToPrimergy.sh
59 08 * *
* /mnt/trinity/nfs/www/SitesVirtuels/XXXX/batch/test.cron.sh



Dans ta crontab, après tes variables temporelles, on ne devrait pas voir
le user qui lance les scripts ?

59 08 * * * root /mnt/[zap]/XXXX/batch/test.cron.sh

a+

f.


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Cédric Lucantis
> > 59 08 * *
> *
> /mnt/trinity/nfs/www/SitesVirtuels/XXXX/batch/TrinityToPrimergy.sh 59 08
> * *
> * /mnt/trinity/nfs/www/SitesVirtuels/XXXX/batch/test.cron.sh

Dans ta crontab, après tes variables temporelles, on ne devrait pas voir
le user qui lance les scripts ?



Seulement pour la crontab système (/etc/crontab). Pour les crontab uti lisateur
c'est inutile et incorrect.

Sinon je commencerais par tester ceci:

* * * * * /bin/echo 'hello'

pour vérifier que cron est bien configuré (si tu ne reçois p as de mail,
vérifie que la variable MAILTO est correcte). Ensuite essaye d'ajouter set -x
au début du script. Et juste au hasard, est-ce que ton script est exec utable
par l'utilisateur propriétaire de la crontab?

--
Cédric Lucantis
Avatar
Bulot Grégory
Le mardi 13 mars 2007 12:20, Cédric Lucantis a écrit :
> > 59 08 * *
> > *
> > /mnt/trinity/nfs/www/SitesVirtuels/XXXX/batch/TrinityToPrimergy.sh 59
> > 08 * *
> > *
> > /mnt/trinity/nfs/www/SitesVirtuels/XXXX/batch/test.cron.sh
>
> Dans ta crontab, après tes variables temporelles, on ne devrait pa s voir
> le user qui lance les scripts ?

Seulement pour la crontab système (/etc/crontab). Pour les crontab
utilisateur c'est inutile et incorrect.

Sinon je commencerais par tester ceci:

* * * * * /bin/echo 'hello'

pour vérifier que cron est bien configuré (si tu ne reçois pas de mail,
vérifie que la variable MAILTO est correcte). Ensuite essaye d'ajout er set
-x au début du script. Et juste au hasard, est-ce que ton script est
executable par l'utilisateur propriétaire de la crontab?




erf en fait, et bizarrement (non ?) les mails cron sont envoyés sur mon pc
en local, en pas sur le serveur

c'est du côté d'exim que je dois voir, j'imagine
Avatar
Michelle Konzack
--dTy3Mrz/UPE2dbVg
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Il sont deux erreuers dans le script:

#!/bin/sh

Src=/mnt/trinity/nfs/www/SitesVirtuels/XXXXXX/
Dest=/home/www/XXXXXX
Log=$Dest"/backup.log"

/bin/date > $Log


^^^^^^
/usr/bin/rsync -qav $Src $Dest 1>$Log 2>&1


^^^^^^
1>>$Log
cat $Log | /usr/bin/mail moi -s "Sauvegarde de $Src terminee, v???ifier l a date


^^^
/bin/cat

de $Log"



Ou mieux:

/usr/bin/mail moi -s "Sauvegarde de $Src terminee, vï¿??ifier la date d e $Log" <$Log


Thanks, Greetings and nice Day
Michelle Konzack
Systemadministrator
Tamay Dogan Network
Debian GNU/Linux Consultant


--
Linux-User #280138 with the Linux Counter, http://counter.li.org/
##################### Debian GNU/Linux Consultant #####################
Michelle Konzack Apt. 917 ICQ #328449886
50, rue de Soultz MSN LinuxMichi
0033/6/61925193 67100 Strasbourg/France IRC #Debian (irc.icq.com)

--dTy3Mrz/UPE2dbVg
Content-Type: application/pgp-signature; name="signature.pgp"
Content-Description: Digital signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFGCS+/C0FPBMSS+BIRArItAKDD8CEdPdcIVz7Wub/0cMdTPxgw+gCeP9WK
SE+yxsK8q1ErIycs14W0wR4 =YLOc
-----END PGP SIGNATURE-----

--dTy3Mrz/UPE2dbVg--


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact