fcrontab

Name

fcrontab -- Tables de configuration de fcron

Description

Un fichier fcrontab est un fichier qui contient toutes les tables utilises par le dmon fcron(8). Cela permet un utilisateur de dire au dmon: Excute cette tche tel moment. Chaque utilisateur a sa propre table fcrontab, et les commandes contenues dans une table seront excutes sous l'identifiant du propritaire de la table. Seul le super-utilisateur peut lancer une tche avec les droits d'un autre utilisateur en utilisant l'option runas (voir plus loin).

Les lignes blanches, les lignes dbutant par le symbole dise # (qui sont considres comme tant des commentaires), les espaces ou les tabulations places en dbut de ligne sont ignores. Chaque ligne d'un fichier fcrontab peut tre soit:

Toute ligne logique (une entre ou une affectation) peut tre scinde en plusieurs lignes effectives (des lignes finissant par un caractre fin de ligne) en plaant une barre oblique inverse \ avant le caractre fin de ligne \n.

La configuration de l'environnement

La configuration de l'environnement est de la forme

nom = valeur

o les espaces autour du signe d'galit = sont ignores et optionnelles. Les espaces en fin de ligne sont galement ignores, mais vous pouvez placer la valeur entre guillemets (simple ou double, mais appareills) pour prserver les caractres blancs dans la valeur.

Lorsque fcron excute une commande, il positionne toujours les variables d'environnement USER, HOME, et SHELL comme elles sont dfinies dans /etc/passwd pour le propritaire de la table fcrontab dont la commande est issue. Les variables d'environnement HOME et SHELL peuvent tre crases par la configuration contenue dans le fichier fcrontab, mais USER ne peut pas l'tre. Toute autre affectation d'environnement dfinie dans le fcrontab de l'utilisateur est effectue et la commande excute.

De plus, la variable spciale MAILTO vous permet d'indiquer fcron qui envoyer par courriel la sortie de la commande. Veuillez noter que MAILTO est en fait quivalente la dclaration globale de l'option mailto (voir plus loin). Elle n'est utilise que pour assurer une rtrocompatibilit, aussi, vous devriez plutt utiliser directement l'option mailto.

Entres bases sur le temps coul depuis le dmarrage du systme

Les entres des commandes qui doivent tre excutes une fois toutes les m minutes de l'excution de fcron (qui sont normalement les mmes m minutes de l'excution du systme) sont de la forme

@options frquence commande

o frquence est une valeur de temps de la forme valeur*multiplicateur+valeur*multiplicateur+...+valeur-en-minutes comme \12h02\ ou \3w2d5h1\. La premire signifie \12 heures et 2 minutes d'excution de fcron\ tant dis que la seconde signifie \3 semaines, 2 jours, 5 heures et 1 minute d'excution de fcron\. Les multiplicateurs valides sont:

Table 2-1. Multiplicateurs de temps valides

signification: multiplicateurs:
mois (4 semaines): m
semaines (7 jours): w
jours (24 heures): d
heures (60 minutes): h
secondes: s

la place de options, l'utilisateur peut mettre une valeur de temps qui sera interprte comme @first(temps). Si l'option first n'est pas positionne, la valeur de frquence est utilise.

Ce type d'entre ne garantie pas une date et heure d'excution (vu que la tche est retarde chaque dmarrage du systme par le temps coul depuis l'arrt du systme), mais peut tre pratique pour des tches dpendant du nombre de choses faites par les utilisateurs (par exemple, il vaudrait mieux vrifier le systme de fichiers aprs un certain nombre d'utilisation par les utilisateurs plutt que tous les x jours, vu que le systme peut tre lanc de 1 jour x jours pendant cet intervalle de x jours).

Le temps restant avant la prochaine excution est sauvegard toutes les 1800 secondes (afin de limiter les dommages provoqus par un plantage) et lorsque fcron quitte aprs avoir reu un signal SIGTERM, c.--d. lorsque l'on arrte le systme. Ainsi, ce type d'entre est particulirement utile pour des systmes qui ne tournent pas de manire rgulire. La syntaxe tant trs simple, il est galement pratique pour des tches qui n'ont pas besoin d'tre excutes une date et une heure spcifique.

Voir aussi: les options first, mail, nolog, serial, lavg, nice, runas (voir plus loin).

Example 2-1. Quelques exemples de lignes bases sur le temps coul depuis le dmarrage du systme

# Rcuprer vos courriels toutes les 30 minutes
@ 30 getmails -all 

# Effectuer quelques tests de scurit toutes les 48 heures de fonctionnement
# du systme, envoyer un courriel au super-utilisateur mme s'il n'a pas de sortie
@mailto(root),forcemail 2d /etc/security/msec/cron-sh/security.sh

Entres bases sur une date et une heure

Le deuxime type d'entre d'un fichier fcrontab commence par un caractre & optionnel qui peut tre immdiatement suivi par un nombre optionnel dfinissant la frquence d'excution (ceci est quivalent l'option runfreq) ou par une dclaration d'options; il possde cinq champs de date et d'heure, ainsi qu'une commande shell:

&options min hrs jour-du-mois mois jour-de-la-semaine commande

Veuillez noter que la commande shell peut tre prcde par un nom d'utilisateur, ce qui est quivalent runas (user): vu que cela n'existe que pour une retrocompatibilit, vous devriez plutt utiliser l'option runas (voir plus loin). La frquence est interprte de la faon suivante: lancer cette commande aprs x correspondances des champs date et heure. Les champs date et heure sont:

Table 2-2. Champs date et heure

champ: valeurs permises:
minute: 0-59
heure: 0-23
jour du mois: 1-31
mois: 1-12 (ou leurs noms, voir plus loin)
jour de la semaine: 0-7 (0 et 7 signifient tous deux le dimanche, ou leurs noms)

Un champ est toujours renseign soit par une astrique *, qui signifie un intervalle comme premier-dernier, soit un nombre seul, soit une liste.

Les listes sont des nombres ou des intervalles spars par des virgules ,. Par exemple: 2,5,15,23.

Les intervalles de nombres sont de la forme dbut-fin, o dbut et fin sont inclus. Par exemple, 3-5 signifie les valeurs 3, 4 et 5. Vous pouvez galement ajouter un /nombre optionnel l'intervalle, o le nombre signifie le pas dans l'intervalle. Par exemple, 0-23/2 peut tre utilis dans le champ heure pour spcifier l'excution d'une commande toutes les heures paires. Enfin, un ou plusieurs ~nombre peuvent tre ajouts afin de dsactiver certaines valeurs dans l'intervalle. Par exemple, 5-8~6~7 est quivalent 5,8. La forme finale d'un champ est:

a[-b[/c][~d][~e][...]][,f[-g[/h][~i][~j][...]]][,...]

o les lettres sont des nombres entiers.

Vous pouvez galement utiliser unE astrisque * dans un champ. Il agira comme premier-dernier. Par exemple, un * dans le champ minute signifie toutes les minutes de la minute 0 la minute 59.

Des intervalles peuvent tre inclus dans une liste comme un simple nombre. Par exemple: 2,5-10/2~6,15,20-25,30.

Les noms (Ndt: en anglais) peuvent tre utiliss pour les champs mois et jour de la semaine. Pour ce faire, utilisez les trois premires lettres du jour ou du mois concern (la casse n'a pas d'importance). Veuillez noter que les noms sont utiliss exactement comme les nombres: vous pouvez les utiliser dans une liste ou un intervalle.

Si un jour de mois et un jour de semaine sont donns, la commande sera excute seulement si les deux correspondent au jour et l'heure actuels moins que l'option dayor n'ait t positionne. Par exemple, avec la ligne

5 10 31 * 7 echo ''
echo sera excute seulement les jours qui sont un dimanche ET le 31me jour du mois, 10:05.

Voir aussi: options dayor, bootrun, runfreq, mail, nolog, serial, lavg, nice, runas (voir plus loin).

Example 2-2. Quelques exemples d'entres bases sur une date et une heure

# lancer macommande tous les jours  12:05, 12:35, 13:05, 13:35,
# 14:05 *et* 14:35
& 05,35 12-14 * * * macommande -u moi -o fichier

# rcuprer les courriels toutes les heures aux minutes 20, 21, 22, et 24.
20-24~23 * * * * getmail 

# sauvegarder mon travail de la journe toutes les nuits  03:45 avec une
# faible priorit, sauf le dimanche, envoyer la sortie par courriel  jim et
# lancer cette tche au dmarrage si la machine tait teinte  03:45
&nice(10),mailto(jim),bootrun 45 03 * * *~0 "save --mon travail"

Entres lances priodiquement

Le troisime type d'entre fcrontab commence par le caractre %, suivi par un mot-clef pris parmi une des trois diffrentes listes, puis par des options.

Mots-clefs *ly

Ces mots-clefs sont:

hourly , daily , monthly , weekly

Ces mots-clefs indiquent fcron de lancer la commande une fois entre le dbut et la fin de l'intervalle de temps correspondant. Un intervalle de temps est, par exemple, le temps compris entre lundi 16:20 et mercredi 01:43. Par exemple, le mot-clef weekly indique fcron de lancer une commande une fois par semaine entre le lundi et le dimanche.

Avec ces deux sortes de mots-clefs, l'utilisateur doit renseigner les champs heure ncessaires (comme ils sont dfinis dans Entres bases sur une date et une heure (voir plus haut)) pour prciser quand la commande devrait tre lance dans chaque intervalle de temps:

Table 2-3. Champs de temps ncessaires chaque mot-clef

Mots-clefs: doit tre suivi par les champs:
hourly, midhourly: minutes.
daily, middaily, nightly, weekly, midweekly: minutes et heures.
monthly, midmonthly : minutes, heures et jours.

Mots-clefs mid*ly

Ils sont similaires aux mots-clefs *ly:

midhourly , middaily , nightly , midmonthly , midweekly

Ils fonctionnent exactement comme les mots-clefs *ly, except que les intervalles de temps sont dfinis du milieu au milieu de l'intervalle *ly correspondant: midweekly lancera une commande une fois entre le jeudi et le mercredi. Veuillez noter que nightly est quivalent middaily.

Par exemple:

%nightly,mail(no) * 21-23,3-5 echo "une entre nigthly"

lancera la commande une fois par nuit soit entre 21:00 et 23:59, soit entre 3:00 et 5:59 (elle sera excute aussitt que possible; pour modifier ce comportement, utilisez l'option random) et ne pas envoyer de courriel (tant donn que l'option mail a t dfinie no).

Voir aussi: options lavg, noticenotrun, strict, mail, nolog, serial, nice, runas, random (voir plus loin).

Mots-clefs *s

Ce sont:

mins , hours , days , mons , dow

Ces mots-clefs agissent diffremment, comme suit:

lancer cette commande unE fois durant CHAQUE intervalle de temps spcifi, ignorant les champs suivants le mot-clef dans la dfinition de l'intervalle de temps (un hours empche le champ mins d'tre considr comme un intervalle de temps, mais il sera utilis pour dterminer quand la ligne devra tre lance au cours de l'intervalle: voir la note plus loin) (dow signifie day of week).

Un tel mot-clef est suivi par 5 champs de date et d'heure (les mmes champs utiliss pour une ligne base sur un temps absolu (voir plus haut). De plus, avec cette sorte de mots-clefs, il doit y avoir sur les lignes des dates et heures qui ne correspondent pas (c.--d. que ce qui suit n'est pas permis:

%hours * 0-23 * * * echo "Ligne INCORRECTE !"
mais ceci l'est:
%hours * 0-22 * * * echo "Ok."

Note: un nombre seul dans un champ est considr comme un intervalle de temps:

%mins 15 2-4 * * * echo
lancera echo tous les jours 2:15, 3:15 ET 4:15.

Mais tous les champs suivants les mots-clefs sont ignors dans la dfinition d'un intervalle de temps:

%hours 15 2-4 * * * echo
lancera echo seulement UNE FOIS soit 2:15, soit 3:15 OU BIEN 4:15.

Voir aussi: option random (voir plus loin).

Options

Les options peuvent tre positionnes soit pour chaque ligne situe aprs la dclaration, soit pour une ligne de manire individuelle. Dans le premier cas, la configuration est faite sur une ligne complte aprs un point d'exclamation !, dans le second cas, elle est faite aprs l'un des symboles suivants &, % ou @, suivant le type de planification. Veuillez noter qu'une dclaration d'option dans une planification crase la dclaration globale de la mme option.

Les options sont spares par des virgules , et leurs arguments, s'il y en a, sont placs entre parenthses ( et ). Les espaces ne sont pas permises. Une dclaration d'option est de la forme

option[(arg1[,arg2][...])][,option[(arg1[...])]][...]

o option est soit le nom complet de l'option, soit son abrviation. Les options sont (avec leur valeur par dfaut entre parenthses):

Options valides dans un fichier fcrontab

bootrun, b

boolen(false)

Lancer une ligne & au dmarrage de fcron si celle-ci avait d tre lance pendant l'arrt du systme.

dayand

boolen(true)

Effectuer un ET logique entre le jour de la semaine et le jour du mois.

Voir aussi: option dayor.

dayor

boolen(false)

Effectuer un OU logique entre le jour de la semaine et le jour du mois.

Voir aussi: option dayand.

erroronlymail

boolen(false)

Envoyer la sortie par courriel uniquement si la tche a retourn une valeur de sortie autre que zro.

Voir aussi: options mail, mailto, nolog, forcemail.

exesev

boolen(false)

Une tche peut-elle tre excute plusieurs fois simultanment?

Voir aussi: options serialonce, lavgonce.

first, f

time-value

Temps avant la premire excution d'une tche base sur le temps de fonctionnement du systme (lignes @). Utile dans les cas suivants: vous avez plusieurs tches excuter, disons, toutes les heures. En positionnant diffrentes valeurs first pour chaque tche, vous vitez que celles-ci soient lances simultanment chaque fois. Vous pouvez galement la mettre 0, ce qui est pratique lorsqu'elle est utilise avec l'option volatile.

forcemail

boolen(false)

Envoyer la sortie par courriel mme si celle-ci est vide.

Voir aussi: options mail, mailto, erroronlymail, nolog.

lavg

rel(0) rel(0) rel(0)

Dfinir les valeurs de la charge moyenne du systme sur 1, 5 et 15 minutes (dans cet ordre) en dessous desquelles la tche pourra tre lance. Ces valeurs ne peuvent avoir qu'une seule dcimale (c.--d. 2.3). S'il y en a plus, la valeur sera arrondie. Mettre une valeur 0 pour ignorer la charge moyenne correspondante. Si vous mettez toutes les valeurs 0, la tche sera lane sans tenir compte de la charge systme.

Voir aussi: options lavg1, lavg5, lavg15, until, lavgonce, lavgor, lavgand, strict, noticenotrun.

lavg1, lavg5, lavg15

rel(0)

Dfinir le seuil des valeurs de charge moyenne du systme sur 1, 5 ou 15 minutes. Dfinir l'une d'elles 0 pour ignorer la charge moyenne correspondante.

Voir aussi: options lavg.

lavgand

boolen(true)

Effectuer un ET logique entre les valeurs de charge moyenne du systme 1, 5 et 15 minutes.

Voir aussi: options lavg, lavgor.

lavgonce

boolen(1)

Une tche peut-elle tre mise plusieurs fois simultanment dans la file d'attente charge moyenne du systme (Ndt: lavg queue)?

Voir aussi: options lavg.

lavgor

boolen(false)

Effectuer un OU logique entre les valeurs de charge moyenne du systme 1, 5 et 15 minutes.

Voir aussi: options lavg, lavgand.

mail, m

boolen(true)

Envoyer la sortie (s'il y en a) par courriel, ou non.

Voir aussi: options mailto, forcemail, nolog.

mailto

email-address(nom du propritaire du fichier)

Envoyer la sortie (si ncessaire) par courriel email-address. Cela peut tre soit un nom d'utilisateur, soit une adresse courriel complte. Une mailto dclare mais vide (chane "") est quivalente mail(false).

Voir aussi: options mail, forcemail, nolog.

nice, n

nice-value

Modifier la priorit de la tche. Une nice-value est un entier compris entre -20 (plus forte priorit) et 19 (plus faible priorit). Seul le super-utilisateur est autoris utiliser une valeur ngative pour cette option.

nolog

boolen(false)

Si elle est positionne true, journaliser seulement les erreurs des tches correspondantes. Peut tre utile pour des tches lances trs frquemment, et/ou pour rduire les accs disque sur un ordinateur portable.

Voir aussi: options mail, mailto, forcemail.

noticenotrun

boolen(false)

fcron devrait-il prvenir l'utilisateur par courriel de la non excution d'une tche % ou d'une tche &? ( cause de l'arrt du systme dans les deux cas ou d'une charge moyenne trop leve dans le second cas).

Voir aussi: options lavg, strict.

random

boolen(false)

Dans une ligne lance priodiquement, cette option rpond la question: Cette tche devrait-elle tre lance aussitt que possible dans son intervalle de temps d'excution (plus sr), ou bien fcron doit-il dfinir une date et heure alatoire d'excution dans ce mme intervalle de temps?. Veuillez noter que si cette option est positionne, la tche peut ne pas tre lance si fcron n'est pas en cours d'excution durant tout l'intervalle d'excution. En outre, sachez qu'il peut tre relativement facile pour une personne comptente de deviner l'heure de la prochaine excution d'une tche utilisant l'option random: il est donc prfrable de ne pas baser la scurit de quelque chose de sensible sur l'ala de cette option. Cependant, cela ne devrait pas poser de problme pour la plupart de ses utilisations.

reset

boolen

Positionner toutes les options leur valeur par dfaut.

runas

utilisateur

Lancer avec les permissions et l'environnement de utilisateur (seul le super-utilisateur est autoris utiliser cette option).

runfreq, r

entier

Lancer toutes les runfreq correspondances de date et d'heure. (Cette option est ignore dans le cas d'entres bases sur le temps coul depuis le dmarrage du systme).

serial, s

boolen(false)

Fcron fait tourner au plus 1 tche(s) squentielle(s) en mme temps (c.--d. pour lesquelles l'option serial est dfinie), et autant de tches qui sont la fois squentielles et dont l'excution dpend aussi de la charge systme (autrement dit pour lesquelles les optionsserial et lavg sont dfinies). Cette valeur peut tre modifie grce l'option -m de fcron. Cette option trouve toute son utilit dans le cas de tches lourdes afin d'viter une surcharge du systme.

Voir aussi: options serialonce, lavg.

serialonce

boolen(0)

Une tche peut-elle tre mise plusieurs fois simultanment dans la file d'attente squentielle? (Ndt: serial queue)

Voir aussi: options exesev, lavgonce.

stdout

boolen(false)

Si fcron s'excute en arrire plan, permettre la sortie des tches sur stderr/stdout plutt que par courriel ou que l'ignorer.

Voir aussi: option --once de fcron(8).

strict

boolen(true)

Lorsqu'une tche % de la file d'attente charge moyenne du systme (Ndt: lavg queue) est la fin de l'intervalle de temps d'excution, doit-elle tre retire de la file d'attente (strict(true), ainsi la tche ne sera pas excute), ou bien doit-elle y rester jusqu' ce que la charge moyenne du systme permette son excution (strict(false))?

Voir aussi: options lavg, noticenotrun.

timezone

timezone-name(fuseau horaire du systme)

Lancer la tche dans le fuseau horaire fourni. timezone-name est une chane qui doit tre valide du point de vue de la variable d'environnement TZ: consultez la documentation de votre systme pour plus de dtails. Par exemple, Europe/Paris est valide sur un systme Linux. Cette option gre correctement le changement d'heure.

Veuillez noter que si vous fournissez un argument timezone-name erron, celui-ci sera SILENCIEUSEMENT ignor, et la tche sera excute dans le fuseau horaire du systme.

ATTENTION: N'utilisez PAS simultanment les options timezone et tzdiff! Cela n'a pas de raison d'tre, et timezone est plus maligne que tzdiff.

Voir aussi: option tzdiff.

tzdiff

entier(0)

ATTENTION: cette option est obsolte: utilisez plutt l'option timezone!

Diffrence de fuseau horaire (en heures, valeur comprise entre -24 et 24) entre l'heure du systme et l'heure locale relle. Cette option permet l'utilisateur de dfinir ses lignes & et % en temps local. Veuillez noter que cette valeur est dfinie pour l'ensemble du fichier fcrontab, et que seule la dernire dclaration est prise en compte. tzdiff est quelque peu stupide: elle ne gre pas le changement d'heure alors que l'option timezone le fait, aussi, vous devriez utiliser cette dernire.

Voir aussi: option timezone.

until

time-value(0)

Dfinir le dlai d'attente maximal pour les valeurs de charge systme. Si le dlai est dpass, la tche sera lance indpendemment de la charge systme. Dfinir until 0 pour dsactiver le dlai d'attente.

Voir aussi: option lavg.

volatile

boolen(false)

Quand cette option est active, la tche est base sur un temps volatile, qu'on pourrait aussi qualifier de non persistant. Plus prcisment, fcron ne retient pas le temps coul depuis la dernire excution des tches volatiles entre deux dmarrages de fcron, et agit comme si les lignes avaient t frachement ajoutes chaque dmarrage de fcron. Ainsi, l'option first s'appliquera par exemple pour les lignes volatiles chaque dmarrage de fcron. Cette option est en particulier utile lorsque fcron est lanc partir d'un script qui tourne, par exemple, seulement pendant une connexion Internet non permanente: l'excution des tches volatiles est alors base sur le temps depuis le dbut de la connexion et le lancement de fcron plutt que sur le temps absolu. Enfin, veuillez noter que cette option s'associe bien l'option first.

Voir aussi: options first, stdout, Entres bases sur le temps coul depuis le dmarrage du systme, l'option --once de fcron dans fcron(8).

Un argument de type boolen peut ne pas tre indiqu, auquel cas les parenthses ne seront pas utilises et il sera interprt comme tant true; les chanes true, yes ou 1 signifient true; et les chanes false, no ou 0 signifient false. Voir plus haut les explications sur les valeurs de temps (section Entres bases sur le temps coul depuis le dmarrage du systme).

Veuillez noter que dayand et dayor sont, en fait, la mme option: une valeur false pour dayand est quivalente une valeur true pour dayor et rciproquement, une valeur false pour dayor est quivalente une valeur true pour dayand. C'est galement le cas pour les options lavgand et lavgor.

Veuillez noter un cas particulier grer: une tche aurait due tre place dans la file d'attente squentielle, *mais* la prcdente entre de cette tche n'est pas encore acheve cause d'une forte charge systme ou d'un quelconque vnement extrieur. L'option serialonce rpond cette question: La nouvelle entre de cette tche doit-elle tre ignore?. De cette faon, on peut distinguer d'une part les tches sans contrainte forte sur l'heure d'excutionqui doivent tre excutes un nombre de fois bien dfini (serial(yes), serialonce(false)), et d'autre part les tches toujours sans contrainte forte sur l'heure d'excution mais dont le nombre d'excutions n'est pas important ou qu'il est inutile de lancer deux fois d'affile (serial(true), serialonce(true)), qu'on ne rentrera donc pas une deuxime fois dans la file squentielle de faon viter de charger le systme inutilement. Par exemple, Payer ses employs est une tche qui doit tre excute exactement une fois par mois (serialonce(false)), alors que faire le mnage doit tre excute de prfrence une fois par semaine, mais il est inutile de le faire deux fois d'affile si par hasard on avait pris du retard (serialonce(true)).

Les mmes considrations s'appliquent pour la file d'attente charge systme et peuvent tre exprimes par l'option lavgonce.

De plus, si les files d'attente squentielle et charge systme contiennent respectivement plus de 30 et 30 tches, toute nouvelle tche sera rejete (et donc non excute) pour viter une saturation de ressources systme. Dans ce cas, un message d'erreur sera journalis travers syslog.

Enfin, s'il reste des tches dans les files d'attente squentielle et charge systme au moment de l'arrt de fcron, celles-ci seront dposes une fois dans leur file correspondante au redmarrage (l'ordre peut ne pas tre conserv).

Example 2-3. Exemple de dclaration d'option:

!reset,serial(true),dayor,bootrun(0),mailto(root),lavg(.5,2,1.5)

Exemples

Example 2-4. Exemple d'un fichier fcrontab utilisateur

# utiliser /bin/bash pour lancer les commandes, quoique puisse indiquer /etc/passwd
SHELL=/bin/bash

# envoyer la sortie par courriel  l'utilisateur thib,
# quelque soit le propritaire de ce fcrontab.
!mailto(thib) 

# dfinir une variable quivalente  " Salut thib et paul ! "
# les caractres nouvelle ligne sont chapps avec
# une barre oblique inverse \ et les guillemets servent
#  conserver les espaces de dbut et de fin de chane
TEXT= " Salut\
 thib et\
 paul ! "

# on veut utiliser la file d'attente squentielle mais pas l'option bootrun
!serial(true),b(0)

# lancer la premire fois aprs 5 minutes de fonctionnement du systme,
# puis toutes les heures par la suite
@first(5) 1h   echo "Lancer toutes les heures" 

# lancer tous les jours
@ 1d echo "fcron quotidien"

# lancer une fois dans la matine et une fois dans l'aprs-midi si le systme
# est en fonctionnement  n'importe quel moment pendant ces intervalles de temps
%hours * 8-12,14-18 * * * echo "H patron, je bosse aujourd'hui !" 

# lancer une fois par semaine  l'heure du djeuner
%weekly * 12-13 echo "J'ai laiss allum mon systme au moins une fois\
  l'heure du djeuner cette semaine."

# lancer tous les samedi et dimanche  9:05
5 9 * * sat,sun echo "Bonjour Thibault !" 

# lancer tous les jours pairs du mois de mars  18:00, sauf le 16
0 18 2-30/2~16 Mar * echo "Il est temps de se rentrer  la maison !" 

# la ligne prcdente est quivalente 
& 0 18 2-30/2~16 Mar * echo "Il est temps de se rentrer  la maison !"

# mettre toutes les options  leur valeur par dfaut et dfinir runfreq
# pour les lignes qui vont suivre
!reset,runfreq(7)

# lancer une fois toutes les 7 correspondances (grce  la dclaration prcdente),
# ainsi, si le systme est en fonctionnement tous les jours  10 heures,
# la commande sera lance une fois par semaine
& 0 10 * * * echo "Si vous avez vu ce message pour la dernire fois il y a 7 jours,\
 c'est que cette machine a fonctionn tous les jours  10 heures durant la dernire semaine.\
 Si vous avez eu ce message il y a 8 jours, c'est que cette machine n'a pas fonctionn\
 un jour  10:00 heures depuis le dernier message, etc."

# attendre toutes les heures que la charge systme moyenne sur 5 minutes
# soit infrieure  0.9
@lavg5(0.9) 1h echo "La charge moyenne systme est faible"

# attendre au maximum 5 heures chaque jour une baisse de la charge systme
@lavgand,lavg(1,2.0,3.0),until(5h) 1d echo "La charge systme vient de diminuer"

# attendre le meilleur moment pour lancer une tche lourde
@lavgor,lavg(0.8,1.2,1.5),nice(10) 1w echo "C'est une trs lourde tche" 

# lancer une fois toutes les nuits soit entre 21:00 et 23:00,
# soit entre 3:00 et 6:00 
%nightly,lavg(1.5,2,2) * 21-23,3-6 echo "Il est temps de rcuprer\
 la dernire version de Mozilla !"

Fichiers

/usr/local/etc/fcron.conf

Fichier de configuration de fcron, fcrontab et fcrondyn: contient les chemins (rpertoire spool, fichier pid) et les programmes par dfaut utiliser (diteur, shell, etc.). Voir fcron.conf(5) pour plus de dtails.

/usr/local/etc/fcron.allow

Utilisateurs autoriss utiliser fcrontab et fcrondyn (un seul nom par ligne, le nom spcial all signifiant tout le monde).

/usr/local/etc/fcron.deny

Utilisateurs qui ne sont pas autoriss utiliser fcrontab et fcrondyn (mme format que le fichier prcdent).

/usr/local/etc/pam.d/fcron (ou /usr/local/etc/pam.conf)

Fichier de configuration PAM pour fcron. Voir pam(8) pour plus de dtails.

Voir aussi

fcrontab(1),
fcrondyn(1),
fcrontab(5),
fcron.conf(5),
fcron(8).
Si vous tes en train d'apprendre utiliser fcron, je vous suggre plutt de lire la version HTML de la documentation (si ce n'est pas dj ce que vous faites en ce moment! :) ): le contenu est le mme, mais il est plus ais de naviguer grce aux hyperliens.

Auteur

Thibault Godouet

Traduction

Ce document est une traduction ralise par Alain Portal <aportal AT univ-montp2 DOT fr> le 6 fvrier 2006.

L'quipe de traduction a fait le maximum pour raliser une adaptation franaise de qualit. La version anglaise la plus jour de ce document est toujours consultable via la commande: LANG=en man 5 fcrontab. N'hsitez pas signaler l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.