Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 09/07/2007, à 17:34

LPedro

[résolu]tâches cron

Bonjour,

J'ai une petit soucis avec un serveur qui doit exécuter des tâches à heures régulières.
J'ai un fichier qui se trouve dans /etc/cron.d/ et je lui ai mis ce qu'il fallait faire pour executer ma tâche.
Seulement cela ne fonctionne pas.
Alors que si j'édite les crons avec crontab -e cela marche impecable.

Je sais que vous aller me dire que si cela marche en éditant le fichier pourquoi je m'embête. B tout simplement parce que d'après ce que j'ai trouvé sur le net cela devrait aussi marcher en mettant un fichier avec les bonnes syntaxes dans le répertoire /etc/cron.d/.

Est ce que vous pouvez me dire si vous avez une idées d'où cela peut venir?

Merci d'avance.

Pierre.

Dernière modification par LPedro (Le 13/07/2007, à 14:49)

Hors ligne

#2 Le 09/07/2007, à 17:42

Uggy

Re : [résolu]tâches cron

Commence par nous donner le contenu (et les droits) du fichier que tu as mis dans cron.d

Hors ligne

#3 Le 09/07/2007, à 18:16

LPedro

Re : [résolu]tâches cron

14,24 * * * * echo "execution du cron" > /home/pierre/forroot/test.txt

Sachant que root à le droit d'écrire dans le répertoire /home/pierre/forroot/.
Les droits sur le fichier contenu dans le répertoire cron.d sont 644 (rw-r--r--).

Voilà.

Si besoin de plus d'infos ne pas hésiter.

Pierre

Hors ligne

#4 Le 09/07/2007, à 20:55

Uggy

Re : [résolu]tâches cron

et il faut pas donner le user aussi pour les fichiers dans cron.d ?
genre
14,24 * * * *   root    echo toto > /toto


Sinon attention au Path
Essaye de rajouter qualquechose comme:
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
ou de mettre le chemin complet de echo

Dernière modification par Uggy (Le 09/07/2007, à 20:59)

Hors ligne

#5 Le 10/07/2007, à 08:59

LPedro

Re : [résolu]tâches cron

c'est bizarre car c'est un paquet qui m'a installé ce fichier dans le répertoire cron.d.
J'ai juste changé ce qu'il fasait et l'heure d'exécution.

Par contre pour root je ne suis pas que qu'il le faille car il me semble que si cela n'est pas précisé les tâches mise dans le fichier cron.d sont exécuté par root par défault (à vérifier car je n'en suis pas sur, je vais regarder).

c'est bizarre ce truc je trouve.

Pierre

Hors ligne

#6 Le 10/07/2007, à 17:40

LPedro

Re : [résolu]tâches cron

Personne n'a de solution?

S'il vous plait, merci.

Pierre

Hors ligne

#7 Le 10/07/2007, à 19:08

Uggy

Re : [résolu]tâches cron

LPedro a écrit :

Personne n'a de solution?

T'as essayé avec mes modifs ? ????

Hors ligne

#8 Le 10/07/2007, à 19:37

stopher

Re : [résolu]tâches cron

pour utiliser le cron , il faut utiliser cette commande :

crontab -e

chaque utilisateur possede son propre crontab donc ,

si c'est une tache root , il faut alors d'abord se logger en root puis faire crontab -e

sudo -s
crontab -e

pour voir la liste des taches cron de ton utilisateur , la commande est :

crontab -l

ensuite on ne met pas de virgule entre min et heure ...
exemple , pour executer un script tte les heure :

# m h  dom mon dow   command
00 * * * * /home/user/script/ges_maintenance.sh >> /var/log/maintenances.log

pour le faire ttes les heure entre 7 h et 22h :

# m h  dom mon dow   command
00 7-22 * * * /home/user/script/ges_maintenance.sh >> /var/log/maintenances.log

Apres , recherches un peut pour avoir plus d'infos sur les crontab , il y a de tres bonnes explications sur ce meme site ..

Dernière modification par stopher (Le 10/07/2007, à 19:39)

Hors ligne

#9 Le 11/07/2007, à 09:11

LPedro

Re : [résolu]tâches cron

la virgule qu'il y a dans mon cron veut tout simplement dire que cela s'exécute à la 14éme et la 24éme minutes.

Oui j'ai essayé les modifs mais cela n'a rien données.

Dernière modification par LPedro (Le 11/07/2007, à 15:36)

Hors ligne

#10 Le 11/07/2007, à 12:00

fugitif

Re : [résolu]tâches cron

LPedro a écrit :

la virgule qu'il y a dans mon cron veut tou simplement dire que cela s'exécute à la 14éme et la 24éme minutes.

Oui j'ai essayé les modifs mais cela n'a rien données.

Il faut mettre le user de celui qui doit exécuter la commande. Et met aussi le path complet.

Exemple:

14,24 * * * * root /bin/echo "execution du cron" > /home/pierre/forroot/test.txt

L'user doit bien sûr avoir le droit d'écriture dans le répertoire et le fichier .txt


Opteron 165 - 2Go DDR - Ubuntu Hardy - 32bits

Hors ligne

#11 Le 11/07/2007, à 15:51

LPedro

Re : [résolu]tâches cron

Rien a faire cela ne marche pas.

Est ce qu'il y a un moyen de voir les logs du lancement des crons?
Merci

Pierre

Edit: normalement c'est dans /var/log/cron mais cela n'est pas le cas pour moi. Ils se trouvent en fait dans /var/log/syslog.

Dernière modification par LPedro (Le 11/07/2007, à 15:56)

Hors ligne

#12 Le 12/07/2007, à 17:03

fugitif

Re : [résolu]tâches cron

LPedro a écrit :

Rien a faire cela ne marche pas.

Est ce qu'il y a un moyen de voir les logs du lancement des crons?
Merci

Pierre

Edit: normalement c'est dans /var/log/cron mais cela n'est pas le cas pour moi. Ils se trouvent en fait dans /var/log/syslog.

Regarde dans /etc/syslog.conf tu doit avoir une ligne

cron.*				/var/log/cron.log

Vérifie qu'elle est pas commenter, et redémarre sysklogd et klogd.

Et pour les test, met une mise à jours plus fréquente.

Exemple :

*/2 * * * * root /bin/echo "execution du cron" > /home/pierre/forroot/test.txt

Opteron 165 - 2Go DDR - Ubuntu Hardy - 32bits

Hors ligne

#13 Le 13/07/2007, à 09:07

LPedro

Re : [résolu]tâches cron

C'est bon j'ai réussi à le faire marcher dans les deux cas.

Le premier cas est en faisant comme commande "crontab -e " en étant root.
Dans ce cas, il ne faut pas préciser l'utilisateur qui lance la commande. C'est toujours le root qui lance les cron recensé en faisant cette méthode.

Le deuxième cas est en éditant le fichier "/etc/cron.d/monfichier". Dans ce cas-là on doit préciser quel est l'utilisateur qui doit lancer le cron et on doit bien faire attenttion qu'il ait bien tous les droits dont il a besoin pour faire son travail.

Voilà.

Pierre

Ps : Si besoin de plus de précision ne pas hésiter à demander.

Hors ligne

#14 Le 13/07/2007, à 10:03

Uggy

Re : [résolu]tâches cron

LPedro a écrit :

Le deuxième cas est en éditant le fichier "/etc/cron.d/monfichier". Dans ce cas-là on doit préciser quel est l'utilisateur qui doit lancer le cron

C'est qu'on a dit dès le début...

Hors ligne

#15 Le 13/07/2007, à 10:34

fugitif

Re : [résolu]tâches cron

LPedro a écrit :

C'est bon j'ai réussi à le faire marcher dans les deux cas.

Le premier cas est en faisant comme commande "crontab -e " en étant root.
Dans ce cas, il ne faut pas préciser l'utilisateur qui lance la commande. C'est toujours le root qui lance les cron recensé en faisant cette méthode.

Le deuxième cas est en éditant le fichier "/etc/cron.d/monfichier". Dans ce cas-là on doit préciser quel est l'utilisateur qui doit lancer le cron et on doit bien faire attenttion qu'il ait bien tous les droits dont il a besoin pour faire son travail.

Voilà.

Pierre

Ps : Si besoin de plus de précision ne pas hésiter à demander.

lol, ta fumer ce matin où quoi ?
Tu viens demander une solution à ton problème, se qu'on te donne. Et maintenant tu écrit comme si c'était toi qui avais trouver la solution tout seul.

Ps : Si besoin de plus de précision ne pas hésiter à demander.

Un merci aurai été plus utile roll


Opteron 165 - 2Go DDR - Ubuntu Hardy - 32bits

Hors ligne

#16 Le 13/07/2007, à 14:07

LPedro

Re : [résolu]tâches cron

Je ne poste pas comme si j'avais trouvé la réponse tout seul mais j'ai fait un récapitulatif de tout pour que cela soit un peu plus clair.

Et non je n'ai pas fumé ce matin.

Edit: et merci.

Dernière modification par LPedro (Le 13/07/2007, à 14:07)

Hors ligne