Salut,
Dans le fichier /etc/crontab
J'ai rajouté deux scripts shell pour s'exécuter un toute les 1 heure tous les jours et l'autre tous les jours à 00:10
Je suis pas un pro de Linux, je commence à peine de travailler avec ce OS du monde libre.
Sous unix je sais qu'il faux monter une fois modifier le fichier crontab en mémoire pour que le demon cron puisse exécuter les scripts.
Je me suis un peu documenté pour linux et suite à cette recherche
j'ai après la modification du fichier crontab lancer la commande suivante :
./crontab -u root /etc/crontab
pour monter les différents tâche à automatiser en mémoire.
J'ai même édité le fichier crontab en mémoire avec la commande :
./crontab -u root -e
Mes scripts y sont présents
J'ai la config suivante dans le fichier crontab :
# pour le premier script toutes les 1 heure et tous les jours
0,59 * * * * root /path1/script1.sh 2>&1 > /pathLog/fichierLog1.log
# pour le deuxième script tous les jours à minuit 10
10 00 * * * root path2/script2.sh 2>&1 > /pathLog/fichierLog2.log
J'ai bien testé mes scripts avant de les mettre dans /etc/crontab et ils fonctionnent bien.
Seulement, aucun script ne s'exécute aux dates prévus dans la crontab.
Quelqu'un a t-il une idée sur ce que je peux faire pour remédier au problème.
Merci d'avance pour votre contribution.
Dixz
# Titre manquant
Posté par CopainJack (site web personnel, Mastodon) . Évalué à 2.
Pour une tache systême, tu peux utiliser /etc/cron.d, etc/crond.daily, ....
Tu utilises quelle distribution Linux ?
[^] # Re: Titre manquant
Posté par Dixz . Évalué à 1.
mais pas pour la modifier mais pour voir si mes tâches étaient bien montées en mémoire.
Sinon j'utilise Red Hat Linux release 7.2
A propos, dois-je faire ./crontab -u root -e pour éditer et modifier le fichier /etc/crontab ?
Merci pour ta réponse mais tu pense que le problème est sur la modif.
[^] # Re: Titre manquant
Posté par Dixz . Évalué à 1.
[^] # Re: Titre manquant
Posté par Djax . Évalué à 1.
Le mot "root" ne servait à rien, en fait cron devait lancer la commande root /path1/script1.sh ... et comme la commande root n'existe pas, ça ne fonctionnait pas.
pour la première commande, le script sera lance à chaque heure pile et à chaque heure 59 minutes, ce qui n'est pas ce que le commentaire indique. Surplus à supprimer.
man 5 crontab
t'en dira plus.
[^] # Re: Titre manquant
Posté par Matthieu Weber . Évalué à 1.
[^] # Re: Titre manquant
Posté par Djax . Évalué à 1.
Tiré de mon manuel fourni avec Fedora Core1:
dans man cron:
dans man 5 crontab:
Voilà,voilà. je pense que "root" est dans le cas qui nous intéresse est inutile et faux.
# Tu as renseigné le PATH
Posté par Serge2 . Évalué à 1.
Ajoute au début de ton script :
export PATH=/usr/bin:/usr/local/bin:/bin...
et d'autres variables si tu en as besoin.
# Crontab, j'adore
Posté par jerome (site web personnel) . Évalué à 2.
Sous Solaris, le sérieux est de rigueur :
Example 1: Clean up core files every weekday morning at 3:15 am:
15 3 * * 1-5 find $HOME -name core 2>/dev/null | xargs rm -f
Sous Linux, (Vixie pas GNU), on embête ses petits copains :
# run at 10 pm on weekdays, annoy Joe
0 22 * * 1-5 mail -s "It's 10pm" joe%Joe,%%Where are your kids?%
# Typo ?
Posté par GCN (site web personnel) . Évalué à 1.
>
> # pour le premier script toutes les 1 heure et tous les jours
> 0,59 * * * * root /path1/script1.sh 2>&1 > /pathLog/fichierLog1.log
Moi, si je devais exécuter un script toutes les heures, tous les jours (24H/24 & 7J/7 donc) j'utiliserai:
0 * * * * root /path1/script1.sh 2>&1 > /pathLog/fichierLog1.log
Suis-je le seul ?
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.