FCRONTAB(5) FCRONTAB(5) NAME fcrontab - Tables de configuration de fcron DESCRIPTION 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 con‐ tenues dans une table seront ex�cut�es sous l’identifiant du pro‐ pri�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 nor‐ males 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 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 �gale‐ ment ignor�es, mais vous pouvez placer la valeur entre guillemets (simple ou double, mais appareill�s) pour pr�server les car‐ act�res blancs dans la valeur. Lorsque fcron ex�cute une commande, il positionne toujours les vari‐ ables 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 peu‐ vent �tre �cras�es par la configuration contenue dans le fichier fcrontab, mais USER ne peut pas l’�tre. Toute autre affectation d’en‐ vironnement 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 as‐ surer une r�trocompatibilit�, aussi, vous devriez plut�t utiliser directement l’option mailto. ENTR�ES BAS�ES SUR LE TEMPS �COUL� DEPUIS LE D�MARRAGE DU SYST�ME 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*multiplica‐ teur+valeur*multiplicateur+...+valeur‐en‐minutes comme �\ 12h02\ � ou �\ 3w2d5h1\ �. La premi�re signifie �\ 12 heures et 2 min‐ utes 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 : "MULTIPLICATEURS DE TEMPS VALIDES" signification : multiplicateurs : mois (4 se‐ maines) : 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(). 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 sim‐ ple, 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). 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 ENTR�ES BAS�ES SUR UNE DATE ET UNE HEURE 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 () : vu que cela n’existe que pour une retrocompatibilit�, vous devriez plut�t utiliser l’option runas (voir plus loin). La fr�quence est in‐ terpr�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 : "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 vir‐ gules � , �. Par exemple : � 2,5,15,23 �. Les intervalles de nombres sont de la forme � �, 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 �quiva‐ lent � � 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 exacte‐ ment 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� posi‐ tionn�e. Par exemple, avec la ligne 5 10 31 * 7 echo ’’ echo sera ex�cut�e seulement les jours qui sont un dimanche ET le 31�me jour du mois, � 10:05. Voir aussi : options dayor, bootrun, runfreq, mail, nolog, serial, lavg, nice, runas (voir plus loin). 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" ENTR�ES LANC�ES P�RIODIQUEMENT 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. MOTS‐CLEFS *LY 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 inter‐ valle 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 inter‐ valle de temps : "CHAMPS DE TEMPS N�CESSAIRES � 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 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 : %nightly,mail(no) * 21‐23,3‐5 echo "une entr�e nigthly" 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 en‐ voyer 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). MOTS‐CLEFS *S 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�fi‐ nition 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 !" mais ceci l’est : %hours * 0‐22 * * * echo "Ok." Note: un nombre seul dans un champ est consid�r� comme un inter‐ valle 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 ignor�s dans la d�finition 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 positionn�es soit pour chaque ligne situ�e apr�s la d�claration, soit pour une ligne de mani�re in‐ dividuelle. Dans le premier cas, la configuration est faite sur une ligne compl�te apr�s un point d’exclamation � ! �, dans le sec‐ ond 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 argu‐ ments, 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�via‐ tion. Les options sont (avec leur valeur par d�faut entre par‐ enth�ses) : "OPTIONS VALIDES DANS UN FICHIER FCRONTAB" bootrun b 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. dayand bool�en(true) Effectuer un ET logique entre le jour de la semaine et le jour du mois. Voir aussi : option dayor. dayor bool�en(false) Effectuer un OU logique entre le jour de la semaine et le jour du mois. Voir aussi : option dayand. erroronlymail bool�en(false) Envoyer la sortie par courriel uniquement si la t�che a re‐ tourn� une valeur de sortie autre que z�ro. Voir aussi : options mail, mailto, nolog, forcemail. exesev bool�en(false) Une t�che peut‐elle �tre ex�cut�e plusieurs fois simul‐ tan�ment ? Voir aussi : options serialonce, lavgonce. first f 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 pra‐ tique lorsqu’elle est utilis�e avec l’option volatile. forcemail bool�en(false) Envoyer la sortie par courriel m�me si celle‐ci est vide. Voir aussi : options mail, mailto, erroronlymail, nolog. lavg 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, lav‐ gor, lavgand, strict, noticenotrun. lavg1 lavg5 lavg15 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 ig‐ norer la charge moyenne correspondante. Voir aussi : options lavg. lavgand bool�en(true) Effectuer un ET logique entre les valeurs de charge moyenne du syst�me � 1, 5 et 15 minutes. Voir aussi : options lavg, lavgor. lavgonce 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. lavgor bool�en(false) Effectuer un OU logique entre les valeurs de charge moyenne du syst�me � 1, 5 et 15 minutes. Voir aussi : options lavg, lavgand. mail m bool�en(true) Envoyer la sortie (s’il y en a) par courriel, ou non. Voir aussi : options mailto, forcemail, nolog. mailto 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) �. Voir aussi : options mail, forcemail, nolog. nice n nice‐value Modifier la priorit� de la t�che. Une nice‐value est un en‐ tier 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. nolog bool�en(false) Si elle est positionn�e � � true �, journaliser seule‐ ment 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. Voir aussi : options mail, mailto, forcemail. noticenotrun 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). Voir aussi : options lavg, strict. random 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�cu‐ tion (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 posi‐ tionn�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�cu‐ tion. 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. Cepen‐ dant, cela ne devrait pas poser de probl�me pour la plupart de ses utilisations. reset bool�en Positionner toutes les options � leur valeur par d�faut. runas utilisateur Lancer avec les permissions et l’environnement de � utilisa‐ teur � (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 ignor�e dans le cas d’entr�es bas�es sur le temps �coul� depuis le d�marrage du syst�me). serial s 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�quen‐ tielles 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. serialonce bool�en(0) Une t�che peut‐elle �tre mise plusieurs fois simultan�ment dans la file d’attente s�quentielle ? (Ndt : serial queue) Voir aussi : options exesev, lavgonce. stdout 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). strict 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 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, � Eu‐ rope/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. 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 change‐ ment d’heure alors que l’option timezone le fait, aussi, vous devriez utiliser cette derni�re. Voir aussi : option timezone. until 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 un‐ til � 0 pour d�sactiver le d�lai d’attente. Voir aussi : option lavg. volatile 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 � re‐ tient � pas le temps �coul� depuis la derni�re ex�cu‐ tion 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 � Inter‐ net 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 con‐ trainte forte sur l’heure d’ex�cution�qui doivent �tre ex�cut�es un nombre de fois bien d�fini (serial(yes), seri‐ alonce(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’af‐ fil�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 em‐ ploy�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 con‐ tiennent 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�). EXEMPLE DE D�CLARATION D’OPTION : !reset,serial(true),dayor,bootrun(0),mailto(root),lavg(.5,2,1.5) EXEMPLES 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 !" FICHIERS /usr/local/etc/fcron.conf Fichier de configuration de fcron, fcrontab et fcrondyn : con‐ tient les chemins (r�pertoire spool, fichier pid) et les pro‐ grammes par d�faut � utiliser (�diteur, shell, etc.). Voir fcron.conf(5) pour plus de d�tails. /usr/local/etc/fcron.allow Utilisateurs autoris�s � utiliser fcrontab et fcrondyn (un seul nom par ligne, le nom sp�cial � all � signifiant tout le monde). /usr/local/etc/fcron.deny Utilisateurs qui ne sont pas autoris�s � utiliser fcrontab et fcrondyn (m�me format que le fichier pr�c�dent). /usr/local/etc/pam.d/fcron (ou /usr/local/etc/pam.conf) Fichier de configuration PAM pour fcron. Voir pam(8) pour plus de d�tails. VOIR AUSSI 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 hyper‐ liens. AUTEUR Thibault Godouet TRADUCTION Ce document est une traduction r�alis�e par Alain Portal le 6 f�vrier 2006. L’�quipe de traduction a fait le maximum pour r�aliser une adapta‐ tion 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 tra‐ ducteur, selon le cas, toute erreur dans cette page de manuel. 12/05/2021 05 December 2021 FCRONTAB(5)