Précédent   Forum des professionnels en informatique > Systèmes > Linux > Système
Système Vos questions autour de l'administration système
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 16/09/2011, 16h31   #1
Futur Membre du Club
 
Homme
Inscription : mai 2011
Messages : 17
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : mai 2011
Messages : 17
Points : 18
Points : 18
Par défaut Cron : Une tache s'exécute 10 fois

Bonjour,

je viens découvrir Cron pour exécuter les taches automatiquement.
Mon fichier est un shell qui envoi un fichier par mail...

jusqu'à la il marche bien... mais il envoie 10 fois???

Voici mon crontab -e
Code :
1
2
3
 
 
16 16 * * 5 envoimail > /dev/null # tous les vendredi 16h16.
Pourquoi il m'envoie 10 mail ??? Je ne comprend rien, aidez-moi svp
ltime est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 16/09/2011, 17h30   #2
Expert Confirmé Sénior
 
Homme Laurent Willems
Expert Stop/Start
Inscription : septembre 2002
Messages : 2 551
Détails du profil
Informations personnelles :
Nom : Homme Laurent Willems
Âge : 33
Localisation : Belgique

Informations professionnelles :
Activité : Expert Stop/Start

Informations forums :
Inscription : septembre 2002
Messages : 2 551
Points : 4 271
Points : 4 271
Salut,

Avec ce que tu nous montres, il va être difficile de le savoir...

que fait ton script? Peux-tu nous le montrer?
__________________
Alea Jacta Test!
Mygale1978 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 21/09/2011, 09h44   #3
Futur Membre du Club
 
Homme
Inscription : mai 2011
Messages : 17
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : mai 2011
Messages : 17
Points : 18
Points : 18
Mon script fait sa :

Code :
1
2
 
echo | mutt -s "$(date +%d.%m.%Y-[%H:%M]) Log fichier" mandahaa_1@yahoo.fr -a log.sql.gz

j'ai même testé en rajoutant sleep 60 avant mail ... tjs plus 7 8 fois ...
ltime est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 22/09/2011, 10h08   #4
Expert Confirmé
 
Inscription : janvier 2011
Messages : 970
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : janvier 2011
Messages : 970
Points : 2 871
Points : 2 871
Salut,

À tout hasard, le "echo" est-il vraiment nécessaire ?
__________________
$ man woman
Il n'y a pas de page de manuel pour woman.
zipe31 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 22/09/2011, 10h53   #5
Modérateur
 
Avatar de gangsoleil
 
R&D en systemes informatiques bas niveau Unix/Linux
Inscription : mai 2004
Messages : 5 476
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : R&D en systemes informatiques bas niveau Unix/Linux

Informations forums :
Inscription : mai 2004
Messages : 5 476
Points : 9 608
Points : 9 608
Bonjour,

Je suppose que par 10 executions, tu veux dire que tu recois 10 mails.

Que disent les logs de la crontab sur l'execution ?
Si tu executes la commande a la main, recois-tu plusieurs fois le mail ?
__________________
Modérateur "C", "Informatique Générale & Hardware" et "Unix"
Les règles du forum
gangsoleil est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 22/09/2011, 16h52   #6
Futur Membre du Club
 
Homme
Inscription : mai 2011
Messages : 17
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : mai 2011
Messages : 17
Points : 18
Points : 18
Si je lance le script à la main, je reçois une seule fois.

j'ai enlevé "echo".

pour le log...d'après moi, je n'ai pas de log installé...parce que je n'ai pas de /etc/syslog.conf.

c'est vraiment bizarre que j'ai 10 fois le mail...
ltime est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 22/09/2011, 17h51   #7
Membre éclairé
 
Inscription : février 2005
Messages : 349
Détails du profil
Informations personnelles :
Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : février 2005
Messages : 349
Points : 358
Points : 358
salut.


Voir dans /var/log/cron.

Comment faites vous pour editer la table de cron?
Qu'affiche crontab -l

@++
__________________
La connaissance s'accroit lorsqu'on la partage.
overider est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 22/09/2011, 19h14   #8
Expert Confirmé Sénior
 
Avatar de Sve@r
 
Homme Frédéric
Ingénieur développement logiciels
Inscription : février 2006
Messages : 3 055
Détails du profil
Informations personnelles :
Nom : Homme Frédéric
Âge : 44
Localisation : France, Oise (Picardie)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 3 055
Points : 4 934
Points : 4 934
Citation:
Envoyé par ltime Voir le message
Bonjour,

je viens découvrir Cron pour exécuter les taches automatiquement.
Mon fichier est un shell qui envoi un fichier par mail...

jusqu'à la il marche bien... mais il envoie 10 fois???

Voici mon crontab -e
Code :
1
2
3
 
 
16 16 * * 5 envoimail > /dev/null # tous les vendredi 16h16.
Pourquoi il m'envoie 10 mail ??? Je ne comprend rien, aidez-moi svp
Salut
Déjà enlève le >/dev/null - Ainsi le compte qui a généré le cron recevra un email interne contenant tout ce qui est affiché par "envoimail" et la date de lancement.

Ensuite rien ne t'empêche de créer un second script "toto.sh" qui fait ceci
Code /bin/sh :
date >>/tmp/verif

Et mettre dans le cron
Code :
0,5,10,15,20,25,30,35,40,45,50,55 * * * * toto.sh     # Toutes les 5 mn
Chaque fois que le cron lancera le script (toutes les 5mn), il rajoutera une ligne dans le fichier "/tmp/verif". Te suffit d'attendre le créneau horaire et regarder avant et après ledit fichier voir s'il a été augmenté de 1 ligne ou de 10 lignes...


Citation:
Envoyé par ltime Voir le message
pour le log...d'après moi, je n'ai pas de log installé...parce que je n'ai pas de /etc/syslog.conf.
syslog est un outil de prise en charge des logs et non le log lui-même. Le log, lui, est lié au service et tout service possède bien un log (/var/log/cron pour le cron)

Citation:
Envoyé par ltime Voir le message
c'est vraiment bizarre que j'ai 10 fois le mail...
Peut-être que ça fait 10 semaines qu'il tourne et que tu n'as regardé qu'aujourd'hui...
__________________
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Tout ce qu'un individu reçoit sans rien faire pour l'obtenir, un autre individu a dû travailler pour le produire sans en tirer profit.
Tout Pouvoir ne peut distribuer aux uns que ce qu'il a préalablement confisqué à d'autres car on n'accroît pas les biens en les divisant.
Quand la moitié d'un peuple croit qu'il ne sert à rien de faire des efforts car l'autre moitié les fera pour elle, et quand cette dernière moitié se dit qu'il ne sert à rien d'en faire car ils bénéficieront à d'autres, cela s'appelle le déclin et la fin d'une nation.
Dr. Adrian Rogers, 1931
Sve@r est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 26/09/2011, 09h55   #9
Futur Membre du Club
 
Homme
Inscription : mai 2011
Messages : 17
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : mai 2011
Messages : 17
Points : 18
Points : 18
Salut,

J'ai essaie ton script comme cela :
crontab
Code :
*/5 * * * * toto  # toto est executable (chmod +x)
dans toto

Résultat : /tmp/verif
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
lundi 26 septembre 2011, 09:50:01 (UTC+0200)
lundi 26 septembre 2011, 09:50:01 (UTC+0200)
lundi 26 septembre 2011, 09:50:01 (UTC+0200)
lundi 26 septembre 2011, 09:50:01 (UTC+0200)
lundi 26 septembre 2011, 09:50:01 (UTC+0200)
lundi 26 septembre 2011, 09:50:01 (UTC+0200)
lundi 26 septembre 2011, 09:50:01 (UTC+0200)
lundi 26 septembre 2011, 09:50:01 (UTC+0200)
lundi 26 septembre 2011, 09:50:01 (UTC+0200)
lundi 26 septembre 2011, 09:50:01 (UTC+0200)
lundi 26 septembre 2011, 09:55:01 (UTC+0200)
lundi 26 septembre 2011, 09:55:01 (UTC+0200)
lundi 26 septembre 2011, 09:55:01 (UTC+0200)
lundi 26 septembre 2011, 09:55:01 (UTC+0200)
lundi 26 septembre 2011, 09:55:01 (UTC+0200)
lundi 26 septembre 2011, 09:55:01 (UTC+0200)
lundi 26 septembre 2011, 09:55:01 (UTC+0200)
lundi 26 septembre 2011, 09:55:01 (UTC+0200)
lundi 26 septembre 2011, 09:55:01 (UTC+0200)
lundi 26 septembre 2011, 09:55:01 (UTC+0200)
pour chaque fois ....

ça prouve que cron execute bien 10 fois...mais pourquoi ?

Citation:
Envoyé par Sve@r Voir le message
Citation de Sve@r :
ltime est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 26/09/2011, 10h51   #10
Modérateur
 
Avatar de gangsoleil
 
R&D en systemes informatiques bas niveau Unix/Linux
Inscription : mai 2004
Messages : 5 476
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : R&D en systemes informatiques bas niveau Unix/Linux

Informations forums :
Inscription : mai 2004
Messages : 5 476
Points : 9 608
Points : 9 608
Bonjour,

Comment edites-tu la crontab ? Est-ce que tu ne l'aurais pas ajoute a tous les utilisateurs ?
__________________
Modérateur "C", "Informatique Générale & Hardware" et "Unix"
Les règles du forum
gangsoleil est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 26/09/2011, 15h58   #11
Futur Membre du Club
 
Homme
Inscription : mai 2011
Messages : 17
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : mai 2011
Messages : 17
Points : 18
Points : 18
crontab -e.

je n'ai pas ajouter pour ts les users...en plus je n'ai pas de 10 users...

Citation:
Envoyé par gangsoleil Voir le message
Bonjour,

Comment edites-tu la crontab ? Est-ce que tu ne l'aurais pas ajoute a tous les utilisateurs ?
ltime est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 26/09/2011, 21h11   #12
Expert Confirmé Sénior
 
Avatar de Sve@r
 
Homme Frédéric
Ingénieur développement logiciels
Inscription : février 2006
Messages : 3 055
Détails du profil
Informations personnelles :
Nom : Homme Frédéric
Âge : 44
Localisation : France, Oise (Picardie)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 3 055
Points : 4 934
Points : 4 934
Citation:
Envoyé par ltime Voir le message
Salut,

J'ai essaie ton script comme cela :
crontab
Code :
*/5 * * * * toto  # toto est executable (chmod +x)
Tiens, je ne connaissais pas la syntaxe "*/5". J'ai appris un truc

Citation:
Envoyé par ltime Voir le message
ça prouve que cron execute bien 10 fois...mais pourquoi ?
Ok, ton cron s'exécute 10 fois, maintenant je te crois.

Donc maintenant il nous faudrait le listing du dossier /var/spool/cron

Et aussi que tu nous dises combien tu as de processus "crond" qui tournent sur ta machine. Imaginons par exemple qu'il y en ait 10...
__________________
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Tout ce qu'un individu reçoit sans rien faire pour l'obtenir, un autre individu a dû travailler pour le produire sans en tirer profit.
Tout Pouvoir ne peut distribuer aux uns que ce qu'il a préalablement confisqué à d'autres car on n'accroît pas les biens en les divisant.
Quand la moitié d'un peuple croit qu'il ne sert à rien de faire des efforts car l'autre moitié les fera pour elle, et quand cette dernière moitié se dit qu'il ne sert à rien d'en faire car ils bénéficieront à d'autres, cela s'appelle le déclin et la fin d'une nation.
Dr. Adrian Rogers, 1931
Sve@r est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 27/09/2011, 09h52   #13
Futur Membre du Club
 
Homme
Inscription : mai 2011
Messages : 17
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : mai 2011
Messages : 17
Points : 18
Points : 18
ls /var/spool/cron/

Code :
atjobs  atspool  crontabs
ls /var/spool/cron/crontabs/

Bingo!!! : ps -x

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
  997 ?        Ss     0:00 /usr/sbin/cron
 1028 ?        S      0:00 /bin/sh /usr/bin/mysqld_safe
 1140 ?        S      0:00 logger -t mysqld -p daemon.error
 1199 ?        Ss     0:03 /usr/sbin/sshd
 1614 tty2     Ss+    0:00 /sbin/getty 38400 tty2
 1615 tty3     Ss+    0:00 /sbin/getty 38400 tty3
 1616 tty4     Ss+    0:00 /sbin/getty 38400 tty4
 1617 tty5     Ss+    0:00 /sbin/getty 38400 tty5
 1618 tty6     Ss+    0:00 /sbin/getty 38400 tty6
 9839 ?        Ss     0:17 /usr/sbin/apache2 -k start
11668 ?        Ss     0:00 cron restart
11742 ?        Ss     0:00 cron restart
11943 ?        Ss     0:00 cron restart
12072 ?        Ss     0:00 cron restart
12535 ?        Ss     0:00 cron restart
12653 ?        Ss     0:00 cron restart
12706 ?        Ss     0:00 cron restart
12898 ?        Ss     0:00 cron restart
13030 ?        Ss     0:00 cron restart
Alors là... c'est bien 10 processus de cron qui est lancé...mais pourquoi et comment je vais assurer qu'un seul soit lancé au démarrage? sinon on peut dire que c'est RESOLU.
ltime est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 29/09/2011, 08h40   #14
Expert Confirmé Sénior
 
Avatar de Sve@r
 
Homme Frédéric
Ingénieur développement logiciels
Inscription : février 2006
Messages : 3 055
Détails du profil
Informations personnelles :
Nom : Homme Frédéric
Âge : 44
Localisation : France, Oise (Picardie)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 3 055
Points : 4 934
Points : 4 934
Citation:
Envoyé par ltime Voir le message
Alors là... c'est bien 10 processus de cron qui est lancé...mais pourquoi ?
Mouais. La peur de manquer sans doute. Imaginons que le cron soit super important, style "ouais, mon cron gère le super accélérateur de particules européen", ben vaut mieux qu'il y en ait 10 qui tournent comme ça s'il y en a 9 qui plantent...
__________________
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Tout ce qu'un individu reçoit sans rien faire pour l'obtenir, un autre individu a dû travailler pour le produire sans en tirer profit.
Tout Pouvoir ne peut distribuer aux uns que ce qu'il a préalablement confisqué à d'autres car on n'accroît pas les biens en les divisant.
Quand la moitié d'un peuple croit qu'il ne sert à rien de faire des efforts car l'autre moitié les fera pour elle, et quand cette dernière moitié se dit qu'il ne sert à rien d'en faire car ils bénéficieront à d'autres, cela s'appelle le déclin et la fin d'une nation.
Dr. Adrian Rogers, 1931
Sve@r est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h07.


 
 
 
 
Partenaires

Hébergement Web