Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| fcron [Le 09/12/2013, 01:38] – [Programmer des tâches avec FCRON] 82.238.228.50 | fcron [Le 10/04/2020, 17:07] (Version actuelle) – [Pré-requis] 91.162.76.135 | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | {{tag> | ||
| + | ------ | ||
| + | |||
| + | ====== Programmer des tâches avec FCRON ====== | ||
| + | |||
| + | ===== Qu' | ||
| + | |||
| + | **FCron** est un //daemon// utilisé pour programmer des tâches devant être exécutées à un moment précis ou au contraire périodiquement. | ||
| + | |||
| + | |||
| + | |||
| + | ===== Avantages de FCron par rapport à Cron et Anacron ===== | ||
| + | |||
| + | FCron permet de pallier les défauts de Cron et d' | ||
| + | |||
| + | De plus la syntaxe de FCron, bien que compatible avec celle de Cron et d' | ||
| + | |||
| + | |||
| + | ===== Pré-requis ===== | ||
| + | |||
| + | * Disposer des [[: | ||
| + | * Disposer d'une connexion à Internet configurée et activée ; | ||
| + | * Avoir activé désinstallé anacron. (?) | ||
| + | |||
| + | |||
| + | |||
| + | ===== Installation ===== | ||
| + | Compilez le paquet à partir des sources disponibles [[http:// | ||
| + | |||
| + | ===== Utilisation simplifiée (pour les pressés !) ===== | ||
| + | |||
| + | Ex : pour lancer un script toutes les 10 heures : | ||
| + | |||
| + | fcrontab -e | ||
| + | |||
| + | Ecrivez dedans : | ||
| + | |||
| + | @ 10h / | ||
| + | |||
| + | Faire CTRL + O pour enregistrer puis CTRL + X pour quitter | ||
| + | |||
| + | ===== Commandes pour FCron ===== | ||
| + | |||
| + | Pour éditer le fichier de votre **fcrontab**, | ||
| + | |||
| + | < | ||
| + | |||
| + | Pour regarder le contenu de votre **fcrontab**, | ||
| + | |||
| + | < | ||
| + | |||
| + | Quand vous sortez de l' | ||
| + | L'un des fichiers est écrit au format texte et il est nommé < | ||
| + | L' | ||
| + | |||
| + | |||
| + | L' | ||
| + | < | ||
| + | ou, provisoirement, | ||
| + | < | ||
| + | |||
| + | L' | ||
| + | Il est inutile de se préoccuper de ce fichier temporaire et on peut sauver les modifications sous ce nom, lorsqu' | ||
| + | |||
| + | |||
| + | ===== Comment fonctionne FCron ? ===== | ||
| + | |||
| + | La syntaxe de fcrontab définit 3 types de ligne d' | ||
| + | |||
| + | |||
| + | ==== & | ||
| + | |||
| + | Les & | ||
| + | |||
| + | < | ||
| + | |||
| + | Les valeurs permises pour les différents champs " | ||
| + | |||
| + | ^ Champ ^ Valeurs permises | ||
| + | | minutes | ||
| + | | heures | ||
| + | | jour du mois | 1-31 | | ||
| + | | mois | 1-12 (ou leurs noms) | | ||
| + | | jours de la semaine | 0-7 (ou leurs noms) | | ||
| + | |||
| + | **A noter que pour les jours de la semaine 0 et 7 signifient tous les deux le dimanche.** | ||
| + | |||
| + | Un champ est toujours renseigné soit par un astérisque « * », qui signifie un intervalle comme « premier-dernier, | ||
| + | |||
| + | Si vous mettez un astérisque « * » dans un champ. Il agira comme « premier-dernier ». Par exemple, un « * » dans le champ minutes signifie toutes les minutes de la minute 0 à la minute 59. | ||
| + | |||
| + | Les listes sont des nombres ou des intervalles séparés par des virgules « , ». Par exemple : « 2,5,15,23 ». | ||
| + | |||
| + | Les intervalles de nombres sont de la forme « début-fin », où « début » et « fin » sont inclus. Par exemple, « 3-5 » signifie les valeurs 3, 4 et 5. Vous pouvez également ajouter un « /nombre » optionnel à l' | ||
| + | |||
| + | Des intervalles peuvent être inclus dans une liste comme un simple nombre. Par exemple : « 2, | ||
| + | |||
| + | Les noms en anglais peuvent être utilisés pour les champs « mois » et « jour de la semaine ». Pour ce faire, utilisez les trois premières lettres du jour ou du mois concerné (la casse n'a pas d' | ||
| + | |||
| + | === Exemple === | ||
| + | |||
| + | < | ||
| + | & 05,35 12-14 * * * macommande -u moi -o fichier | ||
| + | |||
| + | # récupérer les courriels toutes les heures aux minutes 20, 21, 22, et 24. | ||
| + | 20-24~23 * * * * getmail | ||
| + | |||
| + | # sauvegarder mon travail de la journée toutes les nuits à 03:45 avec une faible priorité, sauf le dimanche, envoyer la sortie par courriel à jim et lancer cette tâche au démarrage si la machine était éteinte à 03:45 | ||
| + | & | ||
| + | |||
| + | |||
| + | ==== %-lignes ==== | ||
| + | |||
| + | Les %-lignes sont les entrées lancées périodiquement (c'est le mode " | ||
| + | |||
| + | < | ||
| + | |||
| + | Les mots clefs sont hourly, daily, monthly, weekly, midhourly, middaily, nightly, midmonthly, midweekly, mins, hours, days, mons et dow. | ||
| + | |||
| + | Ces mots-clefs indiquent à fcron de lancer la commande une fois entre le début et la fin de l' | ||
| + | |||
| + | **Il y a cependant une exception concernant les mots clefs mins, hours, days, mons et dow.** Ceux-ci lancent une commande une fois durant **CHAQUE** intervalle de temps spécifié. | ||
| + | |||
| + | Avec ces mots-clefs, l' | ||
| + | |||
| + | |||
| + | ^ Mots-clefs | ||
| + | | hourly, midhourly | ||
| + | | daily, middaily, nightly, weekly, midweekly | minutes et heures | ||
| + | | monthly, midmonthly | ||
| + | |||
| + | |||
| + | |||
| + | === Exemples === | ||
| + | |||
| + | < | ||
| + | lancera la commande une fois par nuit soit entre 21:00 et 23:59, soit entre 3:00 et 5:59 (elle sera exécutée aussitôt que possible ; pour modifier ce comportement, | ||
| + | |||
| + | < | ||
| + | lancera echo **tous les jours** à 2:15, 3:15 **ET** 4:15. | ||
| + | |||
| + | < | ||
| + | lancera echo seulement **une fois** soit à 2:15, soit à 3:15 **OU BIEN** à 4:15. | ||
| + | |||
| + | |||
| + | |||
| + | ==== @-lignes ==== | ||
| + | |||
| + | Les @-lignes sont les entrées basées sur le temps écoulé depuis le démarrage du système, leur syntaxe est de la forme : | ||
| + | < | ||
| + | |||
| + | où fréquence est une valeur de temps de la forme valeur*multiplicateur+valeur*multiplicateur+...+valeur-en-minutes comme « 12h02 » ou « 3w2d5h1 ». La première signifie « 12 heures et 2 minutes d' | ||
| + | ^ Signification | ||
| + | | mois | m | | ||
| + | | semaines | w | | ||
| + | | jours | d | | ||
| + | | heures | ||
| + | | secondes | s | | ||
| + | |||
| + | === Exemple === | ||
| + | |||
| + | < | ||
| + | @ 30 getmails -all | ||
| + | |||
| + | # Effectuer quelques tests de sécurité toutes les 48 heures de fonctionnement | ||
| + | # du système, envoyer un courriel au super-utilisateur même s'il n'a pas de sortie | ||
| + | @mailto(root), | ||
| + | |||
| + | |||
| + | Ce type d' | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ===== Autres considérations ===== | ||
| + | |||
| + | < | ||
| + | |||
| + | |||
| + | Les commandes ci-dessus sont stockées dans un fichier **fcrontab** appartenant à votre compte d' | ||
| + | |||
| + | < | ||
| + | |||
| + | Remarque : cette commande édite directement le fichier // / | ||
| + | |||
| + | Selon les commandes à exécuter, vous devrez changer la variable //PATH// des utilisateurs ayant les droits //root// en mettant la ligne suivante au dessus de leurs fichiers **fcrontab** : | ||
| + | |||
| + | < | ||
| + | |||
| + | Il est important de vérifier que vos travaux dans **fcron** fonctionnent comme prévu. Une méthode pour faire un test est de paramétrer le travail dans la **fcrontab** pour qu'il se fasse quelques minutes plus tard et de vérifier les résultats avant de mettre, la synchronisation de cette tâche, à la bonne heure. Vous pouvez également trouver utile de mettre les résultats des commandes dans un fichier texte qui notent les succès ou les échecs, par exemple : | ||
| + | |||
| + | < | ||
| + | |||
| + | Pour plus d' | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ===== Références ===== | ||
| + | |||
| + | * [[http:// | ||
| + | * [[http:// | ||
| + | * [[http:// | ||
| + | |||
| + | // Cet article reprend en partie [[http:// | ||
| + | |||
| + | ===== Liens ===== | ||
| + | * [[:cron]] : planifier/ | ||
| + | * [[: | ||
| + | * [[incron]] : effectuer une action, commande(s), | ||
| + | |||
| + | ---- | ||
| + | |||
| + | // | ||
| + | [[utilisateurs: | ||
| + | // | ||
