Pages : 1
#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
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
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
Rien a faire cela ne marche pas.
Est ce qu'il y a un moyen de voir les logs du lancement des crons?
MerciPierre
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
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
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
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
Pages : 1