Copyright © 2000-2016 Thibault Godouet | Fcron 3.2.1 | Web page : http://fcron.free.fr |
Documentation de fcron | ||
---|---|---|
Prev | Next |
Un fichier fcrontab est un fichier qui contient toutes les tables
utilis�es par le d�mon fcron(8). Cela permet � un utilisateur de dire
au d�mon�: ��Ex�cute cette t�che � tel moment��. Chaque
utilisateur a sa propre table fcrontab, et les commandes contenues
dans une table seront ex�cut�es sous l'identifiant du propri�taire de la
table. Seul le super-utilisateur peut lancer une t�che avec les droits
d'un autre utilisateur en utilisant l'option runas
(voir plus loin).
Les lignes blanches, les lignes d�butant par le symbole di�se ��#�� (qui sont consid�r�es comme �tant des commentaires), les espaces ou les tabulations plac�es en d�but de ligne sont ignor�es. Chaque ligne d'un fichier fcrontab peut �tre soit�:
une configuration d'environnement,
une configuration d'option,
des entr�es bas�es sur la dur�e totale de fonctionnement du syst�me depuis la derni�re ex�cution de la t�che,
des entr�es bas�es sur un temps absolu (comme les entr�es normales de crontab), ou
des entr�es lanc�es p�riodiquement.
Toute ligne logique (une entr�e ou une affectation) peut �tre scind�e en plusieurs lignes effectives (des lignes finissant par un caract�re fin de ligne) en pla�ant une barre oblique inverse ��\�� avant le caract�re fin de ligne ��\n��.
La configuration de l'environnement est de la forme
nom = valeur
o� les espaces autour du signe d'�galit� ��=�� sont ignor�es et optionnelles. Les espaces en fin de ligne sont �galement ignor�es, mais vous pouvez placer la valeur entre guillemets (simple ou double, mais appareill�s) pour pr�server les caract�res blancs dans la valeur.
Lorsque fcron ex�cute une commande, il positionne toujours les
variables d'environnement
USER
, HOME
, et SHELL
comme elles sont d�finies dans /etc/passwd pour
le propri�taire de la table fcrontab dont la commande est issue.
Les variables d'environnement HOME
et
SHELL
peuvent �tre �cras�es par la configuration
contenue dans le fichier fcrontab, mais USER
ne
peut pas l'�tre. Toute autre affectation d'environnement d�finie dans
le fcrontab de l'utilisateur est effectu�e et la commande ex�cut�e.
De plus, la variable sp�ciale MAILTO
vous permet
d'indiquer � fcron � qui envoyer par courriel la sortie de la
commande. Veuillez noter que MAILTO
est en fait
�quivalente � la d�claration globale de l'option mailto
(voir
plus loin). Elle n'est utilis�e que pour assurer une
r�trocompatibilit�, aussi, vous devriez plut�t utiliser directement
l'option mailto
.
Les entr�es des commandes qui doivent �tre ex�cut�es une fois toutes les m minutes de l'ex�cution de fcron (qui sont normalement les m�mes m minutes de l'ex�cution du syst�me) sont de la forme
@options fr�quence commande |
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'ex�cution de fcron\�� tant dis que la seconde signifie �\�3 semaines, 2 jours, 5 heures et 1 minute d'ex�cution 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 interpr�t�e comme
@first(temps). Si l'option
first
n'est pas positionn�e, la valeur de
��fr�quence
�� est utilis�e.
Ce type d'entr�e ne garantie pas une date et heure d'ex�cution (vu que la t�che est retard�e � chaque d�marrage du syst�me par le temps �coul� depuis l'arr�t du syst�me), mais peut �tre pratique pour des t�ches d�pendant du nombre de choses faites par les utilisateurs (par exemple, il vaudrait mieux v�rifier le syst�me de fichiers apr�s un certain nombre d'utilisation par les utilisateurs plut�t que tous les x jours, vu que le syst�me peut �tre lanc� de 1 jour � x jours pendant cet intervalle de x jours).
Le temps restant avant la prochaine ex�cution est sauvegard�
toutes les 1800 secondes (afin de limiter les dommages provoqu�s
par un plantage) et lorsque fcron quitte apr�s avoir re�u un signal
SIGTERM
, c.-�-d. lorsque l'on arr�te le syst�me.
Ainsi, ce type d'entr�e est particuli�rement utile pour des syst�mes
qui ne tournent pas de mani�re r�guli�re. La syntaxe �tant tr�s simple,
il est �galement pratique pour des t�ches qui n'ont pas besoin d'�tre
ex�cut�es � une date et une heure sp�cifique.
Voir aussi�: les options first
, mail
, nolog
,
serial
, lavg
, nice
, runas
(voir plus loin).
Example 2-1. Quelques exemples de lignes bas�es sur le temps �coul� depuis le d�marrage du syst�me
# R�cup�rer vos courriels toutes les 30 minutes @ 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),forcemail 2d /etc/security/msec/cron-sh/security.sh |
Le deuxi�me type d'entr�e d'un fichier fcrontab commence par un
caract�re ��&�� optionnel qui peut �tre imm�diatement suivi
par un nombre optionnel d�finissant la fr�quence d'ex�cution (ceci est
�quivalent � l'option runfreq
) ou par une d�claration
d'options�; il poss�de 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 pr�c�d�e par un nom
d'utilisateur, ce qui est �quivalent � runas
(user)�: vu que cela n'existe
que pour une retrocompatibilit�, vous devriez plut�t utiliser l'option
runas
(voir plus loin). La fr�quence est interpr�t�e de la fa�on
suivante�: ��lancer cette commande apr�s 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 ast�rique ��*��, qui signifie un intervalle comme ��premier-dernier, soit un nombre seul, soit une liste.
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'intervalle, o� le nombre signifie le pas dans l'intervalle. Par exemple, ��0-23/2�� peut �tre utilis� dans le champ heure pour sp�cifier l'ex�cution d'une commande toutes les heures paires. Enfin, un ou plusieurs ��~nombre�� peuvent �tre ajout�s afin de d�sactiver 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 ast�risque ��*�� 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 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'importance). Veuillez noter que les noms sont utilis�s 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 donn�s, la commande
sera ex�cut�e seulement si les deux correspondent
au jour et � l'heure actuels � moins que l'option dayor
n'ait �t�
positionn�e. Par exemple, avec la ligne
5 10 31 * 7 echo '' |
Voir aussi�: options dayor
, bootrun
, runfreq
,
mail
, nolog
, serial
, lavg
, nice
, runas
(voir plus loin).
Example 2-2. Quelques exemples d'entr�es bas�es 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 # 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 &nice(10),mailto(jim),bootrun 45 03 * * *~0 "save --mon travail" |
Le troisi�me type d'entr�e fcrontab commence par le caract�re ��%��, suivi par un mot-clef pris parmi une des trois diff�rentes listes, puis par des options.
Ces mots-clefs sont�:
hourly
, daily
, monthly
, weekly
Ces mots-clefs indiquent � fcron de lancer la commande une fois
entre le d�but 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 n�cessaires (comme ils sont d�finis dans ��Entr�es bas�es sur une date et une heure�� (voir plus haut)) pour pr�ciser quand la commande devrait �tre lanc�e dans chaque intervalle de temps�:
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 d�finis
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�:
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, utilisez l'option
random
) et ne pas envoyer de courriel (�tant donn� que l'option
mail
a �t� d�finie � ��no��).
Voir aussi�: options lavg
, noticenotrun
, strict
,
mail
, nolog
, serial
, nice
, runas
,
random
(voir plus loin).
Ce sont�:
mins
, hours
, days
, mons
, dow
Ces mots-clefs agissent diff�remment, comme suit�:
lancer cette commande unE fois durant CHAQUE intervalle de temps
sp�cifi�, ignorant les champs suivants le mot-clef dans la d�finition
de l'intervalle de temps (un hours
emp�che le
champ mins
d'�tre consid�r� comme un intervalle de temps, mais il
sera utilis� pour d�terminer quand la ligne devra �tre lanc�e 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 m�mes champs utilis�s pour une ligne bas�e 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 !" |
%hours * 0-22 * * * echo "Ok." |
Note: un nombre seul dans un champ est consid�r� comme un intervalle de temps�:
lancera echo tous les jours � 2:15, 3:15 ET 4:15.
%mins 15 2-4 * * * echoMais tous les champs suivants les mots-clefs sont ignor�s dans la d�finition d'un intervalle de temps�:
lancera echo seulement UNE FOIS soit � 2:15, soit � 3:15 OU BIEN � 4:15.
%hours 15 2-4 * * * echo
Voir aussi�: option random
(voir plus loin).
Les options peuvent �tre positionn�es soit pour chaque ligne situ�e apr�s la d�claration, soit pour une ligne de mani�re individuelle. Dans le premier cas, la configuration est faite sur une ligne compl�te apr�s un point d'exclamation ��!��, dans le second cas, elle est faite apr�s l'un des symboles suivants ��&��, ��%�� ou ��@��, suivant le type de planification. Veuillez noter qu'une d�claration d'option dans une planification �crase la d�claration globale de la m�me option.
Les options sont s�par�es par des virgules ��,�� et leurs arguments, s'il y en a, sont plac�s entre parenth�ses ��(�� et ��)��. Les espaces ne sont pas permises. Une d�claration d'option est de la forme
option[(arg1[,arg2][...])][,option[(arg1[...])]][...]
o� option est soit le nom complet de l'option, soit son abr�viation. Les options sont (avec leur valeur par d�faut entre parenth�ses)�:
Options valides dans un fichier fcrontab
bool�en(false
)
Lancer une ligne ��&�� au d�marrage de fcron si celle-ci avait d� �tre lanc�e pendant l'arr�t du syst�me.
bool�en(true
)
Effectuer un ET logique entre le jour de la semaine et le jour du mois.
Voir aussi�: option dayor
.
bool�en(false
)
Effectuer un OU logique entre le jour de la semaine et le jour du mois.
Voir aussi�: option dayand
.
bool�en(false
)
Envoyer la sortie par courriel uniquement si la t�che a retourn� une valeur de sortie autre que z�ro.
bool�en(false
)
Une t�che peut-elle �tre ex�cut�e plusieurs fois simultan�ment�?
Voir aussi�: options serialonce
, lavgonce
.
time-value
Temps avant la premi�re ex�cution d'une t�che bas�e sur le
temps de fonctionnement du syst�me (lignes ��@��).
Utile dans les cas suivants�: vous avez plusieurs t�ches �
ex�cuter, disons, toutes les heures. En positionnant diff�rentes
valeurs ��first�� pour chaque t�che, vous �vitez
que celles-ci soient lanc�es simultan�ment chaque fois.
Vous pouvez �galement la mettre � 0, ce qui est pratique
lorsqu'elle est utilis�e avec l'option volatile
.
bool�en(false
)
Envoyer la sortie par courriel m�me si celle-ci est vide.
Voir aussi�: options mail
, mailto
, erroronlymail
, nolog
.
r�el(0
)
r�el(0
)
r�el(0
)
D�finir les valeurs de la charge moyenne du syst�me sur 1, 5 et 15 minutes (dans cet ordre) en dessous desquelles la t�che pourra �tre lanc�e. Ces valeurs ne peuvent avoir qu'une seule d�cimale (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 t�che sera lan��e sans tenir compte de la charge syst�me.
Voir aussi�: options lavg1
, lavg5
, lavg15
,
until
, lavgonce
, lavgor
, lavgand
,
strict
, noticenotrun
.
r�el(0
)
D�finir le seuil des valeurs de charge moyenne du syst�me sur 1, 5 ou 15 minutes. D�finir l'une d'elles � 0 pour ignorer la charge moyenne correspondante.
Voir aussi�: options lavg
.
bool�en(true
)
Effectuer un ET logique entre les valeurs de charge moyenne du syst�me � 1, 5 et 15 minutes.
bool�en(1
)
Une t�che peut-elle �tre mise plusieurs fois simultan�ment dans la file d'attente charge moyenne du syst�me (Ndt�: lavg queue)�?
Voir aussi�: options lavg
.
bool�en(false
)
Effectuer un OU logique entre les valeurs de charge moyenne du syst�me � 1, 5 et 15 minutes.
bool�en(true
)
Envoyer la sortie (s'il y en a) par courriel, ou non.
email-address(nom
du propri�taire du fichier
)
Envoyer la sortie (si n�cessaire) par courriel �
��email-address��. Cela
peut �tre soit un nom d'utilisateur, soit une adresse courriel
compl�te. Une mailto
d�clar�e mais vide (cha�ne "") est
�quivalente � ��mail(false)��.
nice-value
Modifier la priorit� de la t�che. 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 n�gative pour cette option.
bool�en(false
)
Si elle est positionn�e � ��true��, journaliser seulement les erreurs des t�ches correspondantes. Peut �tre utile pour des t�ches lanc�es tr�s fr�quemment, et/ou pour r�duire les acc�s disque sur un ordinateur portable.
bool�en(false
)
fcron devrait-il pr�venir l'utilisateur par courriel de la non ex�cution d'une t�che ��%�� ou d'une t�che ��&���? (� cause de l'arr�t du syst�me dans les deux cas ou d'une charge moyenne trop �lev�e dans le second cas).
bool�en(false
)
Dans une ligne lanc�e p�riodiquement, cette option r�pond � la question�: ��Cette t�che devrait-elle �tre lanc�e aussit�t que possible dans son intervalle de temps d'ex�cution (plus s�r), ou bien fcron doit-il d�finir une date et heure al�atoire d'ex�cution dans ce m�me intervalle de temps�?��. Veuillez noter que si cette option est positionn�e, la t�che peut ne pas �tre lanc�e si fcron n'est pas en cours d'ex�cution durant tout l'intervalle d'ex�cution. En outre, sachez qu'il peut �tre relativement facile pour une personne comp�tente de deviner l'heure de la prochaine ex�cution d'une t�che utilisant l'option random�: il est donc pr�f�rable de ne pas baser la s�curit� de quelque chose de sensible sur l'al�a de cette option. Cependant, cela ne devrait pas poser de probl�me pour la plupart de ses utilisations.
bool�en
Positionner toutes les options � leur valeur par d�faut.
utilisateur
Lancer avec les permissions et l'environnement de ��utilisateur�� (seul le super-utilisateur est autoris� � utiliser cette option).
entier
Lancer toutes les ��runfreq�� correspondances de date et d'heure. (Cette option est ignor�e dans le cas d'entr�es bas�es sur le temps �coul� depuis le d�marrage du syst�me).
bool�en(false
)
Fcron fait tourner au plus 1 t�che(s)
s�quentielle(s) en m�me temps (c.-�-d. pour lesquelles l'option
serial est d�finie), et autant de t�ches qui sont � la fois
s�quentielles et dont l'ex�cution d�pend aussi de la charge
syst�me (autrement dit pour lesquelles les options�serial et
lavg sont d�finies). Cette valeur peut �tre modifi�e gr�ce �
l'option -m
de fcron. Cette option trouve
toute son utilit� dans le cas de t�ches lourdes afin
d'�viter une surcharge du syst�me.
Voir aussi�: options serialonce
, lavg
.
bool�en(0
)
Une t�che peut-elle �tre mise plusieurs fois simultan�ment dans la file d'attente s�quentielle�? (Ndt�: serial queue)
bool�en(false
)
Si fcron s'ex�cute en arri�re plan, permettre la sortie des t�ches sur stderr/stdout plut�t que par courriel ou que l'ignorer.
Voir aussi�: option --once
de fcron(8).
bool�en(true
)
Lorsqu'une t�che ��%�� de la file d'attente charge moyenne du syst�me (Ndt�: lavg queue) est � la fin de l'intervalle de temps d'ex�cution, doit-elle �tre retir�e de la file d'attente (strict(true), ainsi la t�che ne sera pas ex�cut�e), ou bien doit-elle y rester jusqu'� ce que la charge moyenne du syst�me permette son ex�cution (strict(false))�?
Voir aussi�: options lavg
, noticenotrun
.
timezone-name(fuseau
horaire du syst�me
)
Lancer la t�che dans le fuseau horaire fourni. timezone-name est une cha�ne qui doit �tre valide du point de vue de la variable d'environnement TZ�: consultez la documentation de votre syst�me pour plus de d�tails. Par exemple, ��Europe/Paris�� est valide sur un syst�me Linux. Cette option g�re correctement le changement d'heure.
Veuillez noter que si vous fournissez un argument timezone-name erron�, celui-ci sera SILENCIEUSEMENT ignor�, et la t�che sera ex�cut�e dans le fuseau horaire du syst�me.
ATTENTION�: N'utilisez PAS simultan�ment les options timezone et tzdiff�! Cela n'a pas de raison d'�tre, et timezone est plus maligne que tzdiff.
Voir aussi�: option tzdiff
.
entier(0
)
ATTENTION�: cette option est obsol�te�: utilisez plut�t l'option timezone�!
Diff�rence de fuseau horaire (en heures, valeur comprise entre -24 et 24) entre l'heure du syst�me et l'heure locale r�elle. Cette option permet � l'utilisateur de d�finir ses lignes ��&�� et ��%�� en temps local. Veuillez noter que cette valeur est d�finie pour l'ensemble du fichier fcrontab, et que seule la derni�re d�claration est prise en compte. tzdiff est quelque peu stupide�: elle ne g�re pas le changement d'heure alors que l'option timezone le fait, aussi, vous devriez utiliser cette derni�re.
Voir aussi�: option timezone
.
time-value(0
)
D�finir le d�lai d'attente maximal pour les valeurs de charge syst�me. Si le d�lai est d�pass�, la t�che sera lanc�e ind�pendemment de la charge syst�me. D�finir until � 0 pour d�sactiver le d�lai d'attente.
Voir aussi�: option lavg
.
bool�en(false
)
Quand cette option est activ�e, la t�che est bas�e sur un
temps ��volatile��, qu'on pourrait aussi qualifier de
��non persistant��. Plus pr�cis�ment, fcron ne
��retient�� pas le temps �coul� depuis la derni�re
ex�cution des t�ches ��volatiles�� entre deux
d�marrages de fcron, et agit comme si les lignes avaient �t�
fra�chement ajout�es � chaque d�marrage de fcron. Ainsi,
l'option first
s'appliquera par exemple pour les lignes
��volatiles�� � chaque d�marrage 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'ex�cution des t�ches
��volatiles�� est alors bas�e sur le temps depuis le
d�but de la connexion et le lancement de fcron plut�t que sur
le temps absolu. Enfin, veuillez noter que cette option s'associe
bien � l'option first
.
Voir aussi�: options first
, stdout
, Entr�es bas�es sur le temps �coul� depuis le
d�marrage du syst�me, l'option --once
de
fcron dans fcron(8).
Un argument de type bool�en peut ne pas �tre indiqu�,
auquel cas les parenth�ses ne seront pas utilis�es et il sera
interpr�t� comme �tant true
�; les cha�nes
��true��, ��yes�� ou ��1�� signifient
true
�; et les cha�nes ��false��,
��no�� ou ��0�� signifient
false
. Voir plus haut les explications sur les
valeurs de temps (section ��Entr�es bas�es
sur le temps �coul� depuis le d�marrage du syst�me��).
Veuillez noter que dayand
et
dayor
sont, en fait, la m�me option�: une valeur
��false�� pour dayand
est �quivalente �
une valeur ��true�� pour dayor
et
r�ciproquement, 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 � g�rer�: une t�che aurait
due �tre plac�e dans la file d'attente s�quentielle, *mais* la
pr�c�dente entr�e de cette t�che n'est pas encore achev�e � cause
d'une forte charge syst�me ou d'un quelconque �v�nement ext�rieur.
L'option serialonce
r�pond � cette question�:
��La nouvelle entr�e de cette t�che doit-elle �tre
ignor�e�?��. De cette fa�on, on peut distinguer d'une part
les t�ches sans contrainte forte sur l'heure d'ex�cution�qui doivent
�tre ex�cut�es un nombre de fois bien d�fini (serial(yes),
serialonce(false)), et d'autre part les t�ches toujours sans contrainte
forte sur l'heure d'ex�cution mais dont le nombre d'ex�cutions n'est
pas important ou qu'il est inutile de lancer deux fois d'affil�e
(serial(true), serialonce(true)), qu'on ne rentrera donc pas une
deuxi�me fois dans la file s�quentielle de fa�on � �viter de charger
le syst�me inutilement. Par exemple, ��Payer ses employ�s��
est une t�che qui doit �tre ex�cut�e exactement une fois par mois
(serialonce(false)), alors que ��faire le m�nage�� doit �tre
ex�cut�e de pr�f�rence une fois par semaine, mais il est inutile de le
faire deux fois d'affil�e si par hasard on avait pris du retard
(serialonce(true)).
Les m�mes consid�rations s'appliquent pour la file d'attente charge
syst�me et peuvent �tre exprim�es par l'option
lavgonce
.
De plus, si les files d'attente s�quentielle et charge syst�me contiennent respectivement plus de 30 et 30 t�ches, toute nouvelle t�che sera rejet�e (et donc non ex�cut�e) pour �viter une saturation de ressources syst�me. Dans ce cas, un message d'erreur sera journalis� � travers syslog.
Enfin, s'il reste des t�ches dans les files d'attente s�quentielle et charge syst�me au moment de l'arr�t de fcron, celles-ci seront d�pos�es une fois dans leur file correspondante au red�marrage (l'ordre peut ne pas �tre conserv�).
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 propri�taire de ce fcrontab. !mailto(thib) # d�finir une variable �quivalente � " Salut thib et paul ! " # les caract�res ��nouvelle ligne�� sont �chapp�s avec # une barre oblique inverse ��\�� et les guillemets servent # � conserver les espaces de d�but et de fin de cha�ne TEXT= " Salut\ thib et\ paul ! " # on veut utiliser la file d'attente s�quentielle mais pas l'option bootrun !serial(true),b(0) # lancer la premi�re fois apr�s 5 minutes de fonctionnement du syst�me, # 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 matin�e et une fois dans l'apr�s-midi si le syst�me # 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 d�jeuner %weekly * 12-13 echo "J'ai laiss� allum� mon syst�me au moins une fois\ � l'heure du d�jeuner 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 pr�c�dente 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 d�faut et d�finir runfreq # pour les lignes qui vont suivre !reset,runfreq(7) # lancer une fois toutes les 7 correspondances (gr�ce � la d�claration pr�c�dente), # ainsi, si le syst�me est en fonctionnement tous les jours � 10 heures, # la commande sera lanc�e une fois par semaine & 0 10 * * * echo "Si vous avez vu ce message pour la derni�re fois il y a 7 jours,\ c'est que cette machine a fonctionn� tous les jours � 10 heures durant la derni�re 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 syst�me moyenne sur 5 minutes # soit inf�rieure � 0.9 @lavg5(0.9) 1h echo "La charge moyenne syst�me est faible" # attendre au maximum 5 heures chaque jour une baisse de la charge syst�me @lavgand,lavg(1,2.0,3.0),until(5h) 1d echo "La charge syst�me vient de diminuer" # attendre le meilleur moment pour lancer une t�che lourde @lavgor,lavg(0.8,1.2,1.5),nice(10) 1w echo "C'est une tr�s lourde t�che" # 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 r�cup�rer\ la derni�re version de Mozilla !" |
Fichier de configuration de fcron, fcrontab et fcrondyn�: contient les chemins (r�pertoire spool, fichier pid) et les programmes par d�faut � utiliser (�diteur, shell, etc.). Voir fcron.conf(5) pour plus de d�tails.
Utilisateurs autoris�s � utiliser fcrontab et fcrondyn (un seul nom par ligne, le nom sp�cial ��all�� signifiant tout le monde).
Utilisateurs qui ne sont pas autoris�s � utiliser fcrontab et fcrondyn (m�me format que le fichier pr�c�dent).
Fichier de configuration PAM pour fcron. Voir pam(8) pour plus de d�tails.
fcrontab(1), |
fcrondyn(1), |
fcrontab(5), |
fcron.conf(5), |
fcron(8). |
Si vous �tes en train d'apprendre � utiliser fcron, je vous sugg�re plut�t de lire la version HTML de la documentation (si ce n'est pas d�j� ce que vous faites en ce moment�! :) )�: le contenu est le m�me, mais il est plus ais� de naviguer gr�ce aux hyperliens. |
Ce document est une traduction r�alis�e par Alain Portal <aportal AT univ-montp2 DOT fr> le 6 f�vrier 2006.
L'�quipe de traduction a fait le maximum pour r�aliser une adaptation fran�aise de qualit�. La version anglaise la plus � jour de ce document est toujours consultable via la commande�: ��LANG=en man 5 fcrontab��. N'h�sitez pas � signaler � l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.