Différences
Ci-dessous, les différences entre deux révisions de la page.
systemes:linux:cron_gestion_taches_planifiees [2016/08/03 16:28] tribipod [Exemples] |
systemes:linux:cron_gestion_taches_planifiees [2019/02/06 14:03] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== Cron : Gestion des tâches planifiées ====== | ||
- | ===== Introduction ===== | ||
- | |||
- | Cron est un utilitaire Unix qui permet d' | ||
- | |||
- | ===== Utilisation ===== | ||
- | |||
- | 2 commandes utiles : | ||
- | |||
- | Pour éditer la table de cron : | ||
- | <code bash> | ||
- | serveur$ crontab -e | ||
- | </ | ||
- | |||
- | Pour lister la table de cron : | ||
- | <code bash> | ||
- | serveur$ crontab -L | ||
- | </ | ||
- | |||
- | Les commandes sont à lancer en root ou précédées de ' | ||
- | |||
- | ===== Syntaxe ===== | ||
- | |||
- | La syntaxe est simple et commune au différentes distributions Unix (une ligne = une tâche). | ||
- | <code bash> | ||
- | m h D M J user tâche | ||
- | </ | ||
- | * Le cycle de répétition | ||
- | * Les minutes (**m**) de 0 à 59 | ||
- | * Les heures (**h**) de 0 à 59 | ||
- | * Les jours du mois (**D**) de 1 à 31 | ||
- | * Les mois (**M**) de 1 à 12 | ||
- | - Les jour de la semaine (**J**) de 0 à 6 (0 représentant le dimanche) | ||
- | * L' | ||
- | * La commande ou script (**tâche**) | ||
- | |||
- | La notation sera la suivante | ||
- | < | ||
- | * : N' | ||
- | x : La valeur souhaité | ||
- | x,x : Séparateur d'une liste de valeur | ||
- | x-x : Intervalle de valeur | ||
- | */x : Cycle | ||
- | </ | ||
- | |||
- | Ce qui donne par exemple : | ||
- | <code bash> | ||
- | serveur$ crontab -l | ||
- | 0 23 * * * root / | ||
- | </ | ||
- | Dans l' | ||
- | |||
- | ===== Raccourcis (non standard) ===== | ||
- | |||
- | ^ Raccourci ^ Équivalent ^ Traduction | ||
- | | @hourly | ||
- | | @daily | ||
- | | @weekly | ||
- | | @monthly | ||
- | | @annually | 0 0 1 1 * | Tous les ans | | ||
- | |||
- | Il existe aussi un raccourci qui permet de lancer une tâche au démarrage : | ||
- | <code bash> | ||
- | @reboot | ||
- | </ | ||
- | |||
- | ===== Exemples ===== | ||
- | |||
- | ^ m ^ h ^ D ^ M ^ J ^ Traduction | ||
- | | * | * | * | * | * | Toutes les minutes | ||
- | | 0 | 23 | * | * | * | Tous les jours à 23h00 | | ||
- | | 0 | */6 | * | * | * | Toutes les 6 heures | ||
- | | 0 | 11,23 | * | * | 1-5 | À 11h et 23h du lundi au samedi | ||
- | | 0 | 23 | L | * | * | À 23h00 le dernier jour du mois (non standard) | ||
- | | 0 | 0 | 1 | 1/3 | * | Tous les 3 mois à partir de janvier le 1er du mois à minuit | | ||
- | |||
- | ===== Notification par mail ===== | ||
- | |||
- | Par défaut, un rapport est envoyé dans la boîte local de l' | ||
- | < | ||
- | # Pour désactiver | ||
- | MAILTO="" | ||
- | # Pour activer vers votre mail | ||
- | MAILTO=" | ||
- | </ | ||
- | |||
- | ===== Tâches cron utiles ===== | ||
- | |||
- | Sur tous mes serveurs, j'ai systématiquement les 2 lignes ci-dessous en cron. | ||
- | <code bash> | ||
- | # Vérification des mise à jour (pour remonter supervision) | ||
- | 30 23 * * * / | ||
- | # Remise à l' | ||
- | 0 23 * * * ntpdate fr.pool.ntp.org | ||
- | </ | ||
- | |||
- | ===== Tâche ponctuel à une heure précise ===== | ||
- | |||
- | Les jobs, une alternative dans le cas où vous devez exécuter une tâche à un moment X sans devoir aller editer votre fichier. Imaginez, vous devez lancer un script de maintenance provisoire à 22h00. | ||
- | Vous taper '**at HH: | ||
- | <code bash> | ||
- | serveur$ at 22:00 | ||
- | warning: commands will be executed using /bin/sh | ||
- | at> / | ||
- | at> <EOT> | ||
- | job 1 at Thu Aug 3 22:00:00 2016 | ||
- | </ | ||
- | |||
- | Pour voir les jobs en attente : | ||
- | <code bash> | ||
- | serveur$ atq | ||
- | 1 Thu Aug 3 22:00:00 2016 a root | ||
- | </ | ||
- | |||
- | Pour supprimer un job : | ||
- | <code bash> | ||
- | serveur$ atrm 1 | ||
- | </ | ||
- | |||
- | ===== Conclusion ===== | ||
- | |||
- | Vous voilà maintenant prêt à affronter < | ||
- | |||
- | Vous trouverez sur ce site ([[http:// |