Aller au contenu

Featured Replies

Posté(e)

As tu bien mis des tabulations (et non pas des espaces ) entre les différents champs dans ton fichier crontab ?

Un autre remarque en passant, je ne mettrais pas ce genre de fichier dans ton arborescence web qui peut être accessible à tout le monde avec en plus tous les droits sur ce fichier de commande !!

Patrick

Posté(e)
  • Auteur

As tu bien mis des tabulations (et non pas des espaces ) entre les diff

Posté(e)

As tu relanc

Posté(e)

Pour relancer "cron"

/usr/syno/etc.defaults/rc.d/S04crond.sh stop

/usr/syno/etc.defaults/rc.d/S04crond.sh start

Patrick

Posté(e)

Bonjour à tous,

Maintenant que mes scripts fonctionnent bien et que j'arrive à envoyer des mails à partir des scripts(merci cricx), je les ai intégrés dans crontab, mais aucun ne se déclenche

voici ce que j'ai fait (exemple avec un script) :

NAS> cat /etc/crontab

0 7 * * * root sh /volume1/save/www/MONSCRIPT.sh

Voici le contenu de MONSCRIPT.sh :

#!/bin/sh

ncftpget -u LOGIN -p PASSWORD -R www.MONSITEWEB /volume1/save/www/www/MONSITEWEB /web/*

echo "ok" | nail -s 'NAS MONSITEWEB' mon@email.com

Le script MONSCRIPT.sh exécuté tout seul fonctionne super bien.

Mais tous les matins à 7h00, rien ne se passe

Voici les droits sur le script :

4 -rwxrwxrwx 1 root root 170 Nov 25 22:44 MONSCRIPT.sh

Si quelqu'un a une idée de ce que j'ai oublié ...

merci beaucoup

:rolleyes:

dans tous les cas, sur un syno, il faut relancer cron.

De plus, une tâche cron est lancée dans son propre environnement qui ne contient pas, en général, les bonnes variables d'environnement, notamment $PATH. De ce fait, il faut mettre dans les scripts appelés par cron le chemin d'accès complet.

Pour mémoire, un script doit contenir en première ligne le shebang, qui définit l'interprêteur à lancer. Sinon il faut lancer le script sous la forme shell script (par exemple /bin/ash /volume1/save/www/MONSCRIPT.sh), là aussi en mettant le chemin complet.

et pour ce qui est du script, il faudrait n'envoyer un mail qu'en cas d'échec. Ton script envoie OK dans tous les cas !

exemple :

ncftpget -u LOGIN -p PASSWORD -R www.MONSITEWEB /volume1/save/www/www/MONSITEWEB /web/* && echo "ok" | nail -s 'NAS MONSITEWEB' mon@email.com enverra en mail en cas de réussite.

ncftpget -u LOGIN -p PASSWORD -R www.MONSITEWEB /volume1/save/www/www/MONSITEWEB /web/* || echo "pas ok" | nail -s 'NAS MONSITEWEB' mon@email.com

enverra en mail en cas d'échec

Posté(e)
  • Auteur

Pour relancer "cron"

/usr/syno/etc.defaults/rc.d/S04crond.sh stop

/usr/syno/etc.defaults/rc.d/S04crond.sh start

Patrick

G

Posté(e)

Je ne comprends pas ton exemple. Ce que je comprends c'est que le transfert ftp va avoir lieu 2 fois !

Je me trompe ?

pui. Tu mets l'une ou l'autre des lignes selon que tu veux un mail en cas de r

Posté(e)
  • Auteur

pui. Tu mets l'une ou l'autre des lignes selon que tu veux un mail en cas de r

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.