]> git.sur5r.net Git - bacula/docs/blob - docs/manual-fr/dirdconf.tex
Mises a jour.
[bacula/docs] / docs / manual-fr / dirdconf.tex
1 %%
2 %%
3
4 \section*{Configurer le Director}
5 \label{_ChapterStart40}
6 \index[general]{Director!Configurer le}
7 \index[general]{Configurer le Director}
8 \addcontentsline{toc}{section}{Configurer le Director}
9
10 Parmi tous les fichiers de configuration requis pour ex\'ecuter {\bf Bacula},
11 celui du Director est le plus compliqu\'e, et c'est celui que vous modifierez
12 le plus souvent, en ajoutant des clients ou en modifiant les FileSets. 
13
14 Pour une discussion g\'en\'erale concernant les fichiers et ressources ainsi
15 que les types de donn\'ees reconnus par {\bf Bacula}, veuillez consulter le
16 chapitre 
17 \ilink{Configuration}{_ChapterStart16} de ce manuel. 
18
19 \subsection*{Les types de ressources du Director}
20 \index[general]{Les types de ressources du Director}
21 \index[general]{Director!Les types de ressources du}
22 \addcontentsline{toc}{subsection}{Les types de ressources du Director}
23
24 Les types de ressources du Director sont : 
25
26 Job, JobDefs, Client, Storage, Catalog, Schedule, FileSet, Pool, Director, et
27 Messages. Nous les pr\'esentons ici dans l'ordre le plus logique (relativement
28 au fichier de configuration du Director) : 
29
30 \begin{itemize}
31 \item 
32    \ilink{Director}{DirectorResource4} -- Pour d\'efinir le nom du
33    Director et son  mot de passe pour l'authentification du programme Console. Il
34    ne doit y avoir qu'une seule  d\'efinition de ressource Director dans le
35    fichier de configuration.  Si vous avez soit {\bf /dev/random} soit {\bf bc}
36    sur votre machine, Bacula g\'en\`erera  un mot de passe al\'eatoire lors du
37    processus de configuration, sinon, il sera laiss\'e blanc. 
38 \item 
39    \ilink{Job}{JobResource} -- Pour d\'efinir les Jobs de types
40    sauvegarde et restauration,  et pour lier les ressources Client, FileSet et
41 Schedules \`a utiliser conjointement pour chaque Job. 
42 \item 
43    \ilink{JobDefs}{JobDefsResource} -- Ressource optionnelle destin\'ee \`a
44    fournir des valeurs par d\'efaut  pour les ressources Job. 
45 \item 
46    \ilink{Schedule}{ScheduleResource} -- Pour d\'efinir le moment
47    o\`u un Job doit \^etre lanc\'e  automatiquement par le {\it scheduler}
48 interne de Bacula. 
49 \item 
50    \ilink{FileSet}{FileSetResource} -- Pour d\'efinir l'ensemble des
51    fichiers \`a sauvegarder  pour chaque client. 
52 \item 
53    \ilink{Client}{ClientResource2} -- Pour d\'efinir quel Client est
54    \`a sauvegarder. 
55 \item 
56    \ilink{Storage}{StorageResource2} -- Pour d\'efinir sur quel
57    p\'eriph\'erique physique les  volumes seront mont\'es.  
58 \item 
59    \ilink{Pool}{PoolResource} -- Pour d\'efinir quel le pool de volumes
60    qui peut \^etre  utilis\'e pour un Job donn\'e 
61 \item 
62    \ilink{Catalog}{CatalogResource} -- Pour d\'efinir la base de
63    donn\'ees o\`u conserver les listes  des fichiers sauvegard\'es et des volumes
64 o\`u ils ont \'et\'e sauvegard\'es.  
65 \item 
66    \ilink{Messages}{_ChapterStart15} -- Pour d\'efinir les
67    destinataires (ou les fichiers de logs) des messages d'erreur et 
68 d'information.  
69 \end{itemize}
70  
71 \subsection*{La ressource Director}
72 \label{DirectorResource4}
73 \index[general]{Director!La ressource}
74 \index[general]{La ressource Director}
75 \addcontentsline{toc}{subsection}{La ressource Director}
76
77 La ressource Director d\'efinit les attributs du Director ex\'ecut\'e sur le
78 r\'eseau. Dans l'impl\'ementation actuelle, il n'y a qu'une ressource
79 Director, mais la r\'ealisation finale contiendra plusieurs Directors pour
80 maintenir la redondance de la base des indexes et m\'edia. 
81
82 \begin{description}
83
84 \item [Director]
85    \index[dir]{Director}
86    D\'ebut de la ressource Director. Une ressource Director et une seule doit
87 \^etre d\'efinie. 
88  
89 \item [Name = \lt{}nom\gt{}]
90    \index[dir]{Name}
91    \index[dir]{Directive!Name}
92    Le nom du Director utilis\'e par l'administrateur syst\`eme. Cette directive
93 est requise  
94   
95 \item [Description = \lt{ }texte\gt{}]
96    \index[dir]{Description}
97    \index[dir]{Directive!Description}
98    Le champ texte contient une description du Director qui sera affich\'ee  dans
99 l'interface graphique. Cette directive est optionnelle.  
100  
101 \item [Password = \lt{}UA-password\gt{}]
102    \index[dir]{Password}
103    \index[dir]{Directive!Password}
104    Sp\'ecifie le mot de passe qui doit \^etre fourni par la Console Bacula par
105 d\'efaut  pour \^etre autoris\'ee. Le m\^eme mot de passe doit appara{\^\i}tre
106 dans la ressource {\bf Director} du fichier de  configuration de la console.
107 Pour plus de s\'ecurit\'e, le mot de passe ne transite jamais sur le r\'eseau,
108 l'authentification se fait via un \'echange de type {\it challenge-response}
109 d'un {\it hash code} cr\'e\'e avec le mot  de passe. Cette directive est
110 requise. Si vous disposez de {\bf /dev/random} ou {\bf bc} sur votre machine,
111 Bacula  g\'en\`erera un mot de passe al\'eatoire lors du processus
112 d'installation, sinon il sera laiss\'e blanc et vous devrez en d\'efinir  un
113 manuellement.  
114  
115 \item [Messages = \lt{}Nom-de-ressource-Messages\gt{}]
116    \index[dir]{Messages}
117    \index[dir]{Directive!Messages}
118    La ressource {\bf messages} sp\'ecifie o\`u doivent \^etre d\'elivr\'es les messages du Director 
119  qui ne sont pas associ\'es \`a un job sp\'ecifique. La plupart des messages sont relatifs
120  \`a un job et seront dirig\'es vers la ressource {\bf messages} sp\'ecifi\'ee par le job. 
121  Cependant, quelques messages peuvent \^etre g\'en\'er\'es lorsque aucun job n'est actif. 
122  Cette directive est requise.
123
124 \item [Working Directory = \lt{}R\'epertoire\gt{}]
125    \index[dir]{Working Directory}
126    \index[dir]{Directive!Working Directory}
127    Cette directive sp\'ecifie un r\'epertoire o\`u le Director peut d\'eposer ses fichiers 
128    d'\'etats. Ce r\'epertoire ne devrait \^etre utilis\'e que par Bacula, mais il peut \^etre 
129    partag\'e par d'autres {\it daemons} Bacula. Notez cependant que si ce r\'epertoire est 
130    partag\'e avec d'autres daemons Bacula, vous devez vous assurer que le nom {\bf Name} 
131    donn\'e \`a chaque daemon est unique afin d'\'eviter des collisions entre les fichiers 
132    temporaires utilis\'es. Par d\'efaut, le processus de configuration de Bacula cr\'e\'e des noms 
133    de daemons uniques en les postfixant avec -dir, -fd et -sd.
134    Les substitutions shell standard sont effectu\'ees \`a la lecture du fichier de 
135    configuration, de sorte que des valeurs telles que {\bf \$HOME} seront correctement 
136    substitu\'ees. Cette directive est requise.
137
138    Si vous avez sp\'ecifi\'e un utilisateur et/ou un groupe pour le Director lors de la 
139    configuration avec les options {\bf {-}{-}with-dir-user} et/ou {\bf {-}{-}with-dir-group} de 
140    la commande ./configure, le r\'epertoire de travail Working Directory doit appartenir 
141    doit appartenir \`a ce groupe et \`a cet utilisateur.
142
143 \item [Pid Directory = \lt{}R\'epertoire\gt{}]
144    \index[dir]{Pid Directory}
145    \index[dir]{Directive!Pid Directory}
146     Cette directive sp\'ecifie un r\'epertoire o\`u le Director peut d\'eposer son fichier
147 d'Id de processus. Ce fichier est utilis\'e pour stopper Bacula et pr\'evenir l'ex\'ecution 
148 simultan\'ee de plusieurs copies de Bacula. Les substitutions shell standard sont
149 effectu\'ees \`a la lecture du fichier de configuration, de sorte que des valeurs
150 telles que {\bf \$HOME} seront correctement substitu\'ees.
151
152 Typiquement, sur les syst\`emes Linux, vous utiliserez ici {\bf /var/run}. Si vous 
153 n'installez pas Bacula dans les r\'epertoires syst\`eme, vous pouvez utiliser le 
154 r\'epertoire de travail {\bf Working Directory} d\'efini plus haut.
155 Cette directive est requise.
156
157 \item [Scripts Directory = \lt{}Directory\gt{}]
158     \index[dir]{Scripts Directory}
159     \index[dir]{Directive!Scripts Directory}
160     Cette directive sp\'ecifie le r\'epertoire dans lequel le Director devra rechercher 
161     le script Python de d\'emarrage {\bf DirStartup.py}. Ce r\'epertoire peut \^etre 
162     partag\'e par d'autres daemons Bacula.Les substitutions shell standard sont effectu\'ees 
163     \`a la lecture du fichier de configuration, de sorte que des valeurs telles que 
164     {\bf \$HOME} seront correctement substitu\'ees. Cette directive est optionnelle.
165
166 \item [QueryFile = \lt{}Path\gt{}]
167    \index[dir]{QueryFile}
168    \index[dir]{Directive!QueryFile}
169     Cette directive sp\'ecifie un r\'epertoire et un fichier dans lequel le 
170 Director peut trouver les requ\^etes SQL pr\'e\'etablies pour la commande 
171 {\bf Query} de la Console. Les substitutions shell standard sont
172 effectu\'ees \`a la lecture du fichier de configuration, de sorte que des valeurs
173 telles que {\bf \$HOME} seront correctement substitu\'ees. 
174 Cette directive est requise.
175
176 \label{DirMaxConJobs}
177
178 \item [Maximum Concurrent Jobs = \lt{}nombre\gt{}]
179    \index[dir]{Maximum Concurrent Jobs}
180    \index[dir]{Directive!Maximum Concurrent Jobs}
181    \index[general]{Jobs Simultan\'es}
182    \index[general]{Jobs Concurrents}
183    
184    O\`u \lt{}nombre\gt{} est le nombre maximal de jobs qui peuvent \^etre ex\'ecut\'es 
185 simultan\'ement par le Director. La valeur par d\'efaut est 1, mais vous pouvez utiliser 
186 une valeur plus grande.
187 Notez que le format des volumes devient beaucoup plus compliqu\'e avec plusieurs jobs 
188 ex\'ecut\'es simultan\'ement. De ce fait, les restaurations peuvent prendre beaucoup plus 
189 de temps si Bacula doit faire le tri parmi les segments entrem\'el\'es de ces jobs. Ceci 
190 peut \^etre \'evit\'e en s'arrangeant pour que chacun des jobs ex\'ecut\'es simultan\'ement 
191 \'ecrive sur un volume distinct. Une autre possibilit\'e consiste \`a utiliser le 
192 {\it data spooling} : les donn\'ees seront d'abord "spool\'ees" sur disque 
193 simultan\'ement, ensuite les fichiers "spool" seront \'ecrits s\'equentiellement 
194 sur le volume.   
195
196 Dans certains cas, des directives telles que {\bf Maximum Volume Jobs} ne sont pas 
197 correctement synchronis\'ees avec le nombre de jobs simultan\'es, et des probl\`emes 
198 de synchronisation subtils peuvent survenir, aussi des tests minutieux sont recommand\'es.
199
200 Actuellement, il n'y a aucun param\`etre de configuration pour r\'egler ou limiter 
201 le nombre de connections par console. Un maximum de cinq connection simultan\'ees 
202 est autoris\'e.
203
204 Pour plus de d\'etails concernant l'ex\'ecution simultan\'ee de plusieurs jobs, consultez la 
205 partie \ilink{Ex\'ecution simultan\'ee de plusieurs jobs}{ConcurrentJobs} du chapitre Astuces de ce manuel.
206
207
208 \item [FD Connect Timeout = \lt{}dur\'ee\gt{}]
209    \index[dir]{FD Connect Timeout}
210    \index[dir]{Directive!FD Connect Timeout}
211    O\`u {\bf dur\'ee} est le d\'elai durant lequel le Director tente de contacter 
212    le File Daemon pour d\'emarrer un job. Une fois ce d\'elai \'ecoul\'e, le Director supprimera le job.
213    La valeur par d\'efaut est 30 minutes.
214    
215 \item [SD Connect Timeout = \lt{}dur\'ee\gt{}]
216    \index[dir]{SD Connect Timeout}
217    \index[dir]{Directive!SD Connect Timeout}
218    O\`u {\bf dur\'ee} est le d\'elai durant lequel le Director tente de contacter 
219    le Storage Daemon pour d\'emarrer un job. Une fois ce d\'elai \'ecoul\'e, le Director supprimera le job.
220    La valeur par d\'efaut est 30 minutes.
221
222 \item [DirAddresses = \lt{}Sp\'ecification-adresses-IP\gt{}]
223    \index[dir]{DirAddresses}
224    \index[dir]{Directive!DirAddresses}
225    Sp\'ecifie les ports et adresses sur lesquels le Director se met en attente de 
226    connections de Consoles Bacula. La meilleure explication est sans doute un exemple :
227
228 \footnotesize
229 \begin{verbatim}
230  DirAddresses  = { ip = {
231         addr = 1.2.3.4; port = 1205;}
232     ipv4 = {
233         addr = 1.2.3.4; port = http;}
234     ipv6 = {
235         addr = 1.2.3.4;
236         port = 1205;
237     }
238     ip = {
239         addr = 1.2.3.4
240         port = 1205
241     }
242     ip = {
243         addr = 1.2.3.4
244     }
245     ip = {
246         addr = 201:220:222::2
247     }
248     ip = {
249         addr = bluedot.thun.net
250     }
251  }
252 \end{verbatim}
253 \normalsize
254
255 o\`u "ip", "ip4", "ip6", "addr", et "port sont les mots clef. Notez que 
256 les adresses peuvent \^etre sp\'ecifi\'ees sous forme de quadruplets point\'es, ou 
257 suivant la notation \`a doubles points IPv6, ou encore sous forme de nom symbolique 
258 (seulement pour la sp\'ecification ip). D'autre part, le port peut \^etre sp\'ecifi\'e 
259 par un nombre, ou par une valeur mn\'emonique du fichier /etc/services. Si un port 
260 n'est pas pr\'ecis\'e, celui par d\'efaut sera utilis\'e. Si une section ip est sp\'ecifi\'ee, 
261 la r\'esolution peut \^etre faite soit par IPv4, soit par IPv6. Si ip4 est sp\'ecifi\'e, 
262 seules les r\'esolutions IPv4 seront permises. Il en va de m\^eme avec ip6.
263
264 Notez que si vous utilisez la directive DirAddresses, vous ne devez utiliser ni la directive 
265 DirPort, ni la directive DirAddress dans la m\^eme ressource.
266
267 \item [DIRport = \lt{}num\'ero-de-port\gt{}]
268    \index[dir]{DIRport}
269    \index[dir]{Directive!DIRport}
270    Sp\'ecifie le port (un entier positif) sur lequel le Director est \`a l'\'ecoute 
271 de connections de Consoles Bacula. Ce m\^eme num\'ero de port doit \^etre sp\'ecifi\'e 
272 dans la ressource Director du fichier de configuration de la console. La 
273 valeur par d\'efaut est 9101, aussi, il n'est en principe pas n\'ecessaire 
274 de renseigner cette directive. Elle n'est pas requise si vous sp\'ecifiez des 
275 DirAdresses.
276
277 \item [DirAddress = \lt{}Adresse-IP\gt{}]
278    \index[dir]{DirAddress}
279    \index[dir]{Directive!DirAddress}
280    Cette directive est optionnelle. Lorsqu'elle est sp\'ecifi\'ee, le Director n'accepte 
281 de connections Console que de l'adresse sp\'ecifi\'ee {\bf Adresse-IP}, qui peut \^etre 
282 soit un nom de domaine, soit une adresse IP au format quadruplet point\'e ou cha\^ine quot\'ee.  
283 Si cette directive n'est pas sp\'ecifi\'ee, le Director acceptera des connections de Console 
284 de toute adresse valide. Notez que contrairement \`a la sp\'ecification DirAdresses d\'ecrite 
285 plus haut, cette directive ne permet de sp\'ecifier qu'une seule adresse. Cette directive 
286 n'est pas requise si vous utilisez la directive DirAdresses.
287
288 \end{description}
289
290 Voici un exemple d'une ressource Director valide :
291
292 \footnotesize
293 \begin{verbatim}
294 Director {
295   Name = HeadMan
296   WorkingDirectory = "$HOME/bacula/bin/working"
297   Password = UA_password
298   PidDirectory = "$HOME/bacula/bin/working"
299   QueryFile = "$HOME/bacula/bin/query.sql"
300   Messages = Standard
301 }
302 \end{verbatim}
303 \normalsize
304
305 \subsection*{La ressource Job}
306 \label{JobResource}
307 \index[general]{Resource!Job }
308 \index[general]{Job Resource }
309 \addcontentsline{toc}{subsection}{Job Resource}
310
311 La ressource Job d\'efinit un Job (sauvegarde, restauration,...) que Bacula doit 
312 ex\'ecuter. Chaque d\'efinition de ressource Job contient le nom d'un client, la 
313 liste des \'el\'ements \`a sauvegarder (FileSet), la planification (Schedule) pour 
314 ce Job, le lieu o\`u sauvegarder ces donn\'ees (Storage Device) et quel groupe de 
315 media utiliser (Pool). En effet, chaque ressource Job doit r\'epondre aux questions : 
316 "Quoi ?", "O\`u ?", "Quand ?" et "Comment ?" soit, respectivement Fileset, Storage, 
317 Schedule, Type et Niveau (Sauvegarde/Restauration - Full/Differentielle/Incr\'ementale).
318 Notez que le FileSet doit \^etre sp\'ecifi\'e lors des restaurations pour des raisons 
319 historiques, mais il n'est plus utilis\'e.
320
321 Un seul type ({\bf Backup}, {\bf Restore}, ...) peut \^etre sp\'ecifi\'e pour un Job donn\'e. 
322 Si vous voulez sauvegarder plusieurs FileSets sur le m\^eme client, vous devez d\'efinir un 
323 Job pour chacun d'entre eux.
324
325 \begin{description}
326
327 \item [Job]
328    \index[dir]{Job}
329    \index[dir]{Directive!Job}
330    D\'ebut de la ressource Job. Il faut d\'efinir au moins une ressource Job.
331
332 \item [Name = \lt{}name\gt{}]
333    \index[dir]{Name}
334     \index[dir]{Directive!Name}
335    Le nom du Job. Ce nom peut \^etre utilis\'e avec la commande {\bf Run} du 
336    programme Console pour lancer un Job. Si le nom contient des espaces, 
337    il doit \^etre plac\'e entre quotes. C'est g\'en\'eralement une bonne id\'ee de 
338    nommer vos Jobs du nom du Client qu'ils sauvegardent, afin de les 
339    identifier ais\'ement.
340
341    Lors de l'ex\'ecution d'un Job, son nom unique est compos\'e du nom que vous avez 
342    sp\'ecifi\'e ici suffix\'e avec la date et l'heure de sa planification.
343    Cette directive est requise.
344
345 \item [Enabled =  \lt{}yes|no\gt{}]
346    \index[dir]{Enable}
347    \index[dir]Directive!Enable}
348    Cette directive permet d'activer ou d\'esactiver l'ex\'ecution automatique d'un job 
349    par le planificateur.
350
351 \item [Type = \lt{}job-type\gt{}]
352    \index[dir]{Type}
353    \index[dir]{Directive!Type}
354    La directive {\bf Type} sp\'ecifie le type de Job, qui peut \^etre l'un des 
355    suivants : {\bf Backup},  {\bf Restore}, {\bf Verify}, ou {\bf Admin}. 
356    Cette directive est requise. Pour chaque type de Job, il existe diff\'erents 
357    niveaux, qui seront d\'ecrits dans les prochains paragraphes.
358
359 \begin{description}
360
361 \item [Backup]
362    \index[dir]{Backup}
363    D\'efinit une sauvegarde. En principe, vous aurez au moins un job de type Backup 
364    par client sauvegard\'e. A moins que vous ne d\'esactiviez le catalogue, la 
365    plupart des donn\'ees et statistiques concernant les fichiers sauvegard\'ees 
366    seront \'ecrites dans le catalogue.
367
368 \item [Restore]
369    \index[dir]{Restore}
370    D\'efinit une restauration. En principe, vous ne cr\'eerez qu'un seul job de ce 
371    type, que vous utiliserez comme un prototype  que vous modifierez \`a l'aide 
372    de la console lorsque vous devrez restaurer. Bien que certaines informations 
373    basiques soient conserv\'ees dans le catalogue lors de restaurations, leur 
374    quantit\'e est infime en regard des informations stock\'ees pour une sauvegarde -- 
375    par exemple, aucune entr\'ee de nom de fichier n'est g\'en\'er\'ee, puisqu'aucun fichier 
376    n'est sauvegard\'e.
377
378 \item [Verify]
379    \index[dir]{Verify}
380    D\'efinit un Job de type Verify. Le Jobs de type {\bf verify}  permettent de 
381    comparer le catalogue au syst\`eme de fichiers ou \`a ce qui a \'et\'e sauvegard\'e. 
382    Vous pouvez l'utiliser pour vous assurer qu'une cartouche de donn\'ees est 
383    lisible, mais aussi comme un syst\`eme de d\'etection d'intrusion \`a la fa\ccon de 
384    Tripwire.
385
386 \item [Admin]
387    \index[dir]{Admin}
388    D\'efinit un Job de type Admin. Un  {\bf Admin} peut s'utiliser pour "\'elaguer" 
389    p\'eriodiquement le catalogue, si vous ne souhaitez pas que ceci soit fait \`a la fin 
390    de chaque sauvegarde. Bien que les Jobs de type admin soient enregistr\'es dans le 
391    catalogue, la quantit\'e de donn\'ees g\'en\'er\'ee est infime.
392    
393 \end{description}
394
395 \label{Level}
396
397 \item [Level = \lt{}job-level\gt{}]
398    \index[dir]{Directive!Level}
399    \index[dir]{Level}
400    La directive Level sp\'ecifie le niveau d'ex\'ecutiondu job  par d\'efaut. 
401    Chaque type de job a son propre jeu de niveaux qui peuvent \^etre sp\'ecifi\'es. 
402    Le niveau d'ex\'ecution est en g\'en\'eral surcharg\'e par une valeur diff\'erente 
403    sp\'ecifi\'ee dans la ressource {\bf Schedule}. Cette directive n'est pas 
404    requise mais doit \^etre sp\'ecifi\'ee soit ici, soit en tant que surcharge 
405    dans la ressource {\bf Schedule}.
406    
407 Pour un job de type {\bf Backup} le niveau doit \^etre l'un des suivants : 
408
409 \begin{description}
410
411 \item [Full]
412    \index[dir]{Full}
413    Tous les fichiers du FileSet, qu'ils aient \'et\'e modifi\'es ou non.
414
415 \item [Incremental]
416    \index[dir]{Incremental}
417    Tous les fichiers modifi\'es depuis la derni\`ere sauvegarde valide du FileSet 
418    sp\'ecifi\'e pour le m\^eme job. Si le Director ne peut trouver une sauvegarde Full ant\'erieure, 
419    le niveau du job sera \'elev\'e en une sauvegarde Full. Lorsque le Director 
420    recherche une Full valide dans le catalogue, il recherche un job avec 
421    les caract\'eristiques suivantes :
422
423 \begin{itemize}
424 \item le m\^eme nom de job ; 
425 \item le m\^eme nom de client ;  
426 \item le m\^eme FileSet (toute modification de la d\'efinition du FileSet telle 
427       que l'ajout ou la suppression de fichiers dans les sections Include ou 
428       Exclude constitue un changement de FileSet).
429 \item le niveau requis (Full, Differential ou Incremental)
430 \item le job s'est termin\'e normalement, c'est \`a dire un qu'il ne s'est pas termin\'e 
431       en \'echec, et n'a pas \'et\'e effac\'e.
432 \end{itemize}
433
434 Si toutes les conditions ci-dessus ne sont pas r\'ealis\'ees, le Director 
435 augmentera la sauvegarde incr\'ementale en une sauvegarde Full. Dans le cas 
436 contraire, la sauvegarde incr\'ementale sera effectu\'ee normalement.
437
438 Le File Daemon (Client) d\'etermine les fichiers \`a sauvegarder pour une 
439 incr\'ementale par comparaison de l'heure de d\'emarrage du Job pr\'ec\'edent 
440 (Full, Diff\'erentiel ou Incr\'emental) avec les dates de derni\`ere modification 
441 de chaque fichier (st\_mtime) et de ses attributs (st\_ctime). Si le fichier 
442 ou ses attributs ont chang\'es depuis cette date de d\'emarrage, alors le fichier 
443 sera sauvegard\'e.
444
445 Veuillez noter que certains logiciels anti-virus peuvent modifier la date 
446 st\_time lors de leurs op\'erations de scan. Ainsi, si l'antivirus modifie 
447 la date d'acc\`es (st\_atime), qui n'est pas utilis\'ee par Bacula, il 
448 provoquera une modification du st\_ctime et conduira Bacula \`a sauvegarder 
449 les fichiers concern\'es lors des incr\'ementales et diff\'erentielles. Dans le 
450 cas de l'antivirus Sophos, vous pouvez \'eviter cet inconv\'enient en utilisant 
451 l'option {\bf \verb{--{no-reset-atime}. Pour les autres logiciels, voyez 
452 leurs manuels.
453
454 Lorsque Bacula effectue une sauvegarde incr\'ementale, tous les fichiers modifi\'es 
455 pr\'esents sur le syst\`eme sont sauvegard\'es. Cependant, tout fichier supprim\'e depuis 
456 la derni\`ere Full demeure dans le catalogue, ce qui signifie que si vous effectuez 
457 une restauration \`a partir de sauvegardes incr\'ementales (et de la Full associ\'ee), 
458 les fichiers supprim\'es depuis la derni\`ere Full seront aussi restaur\'es. Ces fichiers 
459 n'appara\^itront plus dans le catalogue apr\`es avoir fait une nouvelle sauvegarde 
460 Full. Le processus pour supprimer ces fichiers du catalogue lors d'une 
461 incr\'ementale ralentirait fortement les sauvegardes incr\'ementales. Il n'est 
462 actuellement pas impl\'ement\'e dans Bacula.
463
464 De plus, si vous d\'eplacez un r\'epertoire plut\^ot que de le copier, les fichiers qu'il 
465 contient voient leurs dates de derni\`ere modification (st\_mtime) et de dernier acc\`es 
466 (st\_ctime) inchang\'es. Par cons\'equent, ces fichiers ne seront probablement 
467 sauvegard\'es par aucune incr\'ementale ou diff\'erentielle, puisque ces derni\`eres 
468 ne se r\'ef\`erent qu'\`a ces indicateurs. Aussi, il est pr\'ef\'erable de copier un dossier 
469 avant de supprimer l'original plut\^ot que de le d\'eplacer, si vous voulez qu'il soit 
470 correctement sauvegard\'e.
471
472 \item [Differential]
473    \index[dir]{Differential}
474    Tous les fichiers modifi\'es depuis la derni\`ere sauvegarde Full valide du FileSet
475    sp\'ecifi\'e pour le m\^eme job. Si le Director ne peut trouver une sauvegarde Full 
476    ant\'erieure, le niveau du job sera \'elev\'e en une sauvegarde Full. Lorsque le 
477    Director recherche une Full valide dans le catalogue, il recherche un job avec 
478    les caract\'eristiques suivantes :
479
480 \begin{itemize}
481 \item le m\^eme nom de job ;
482 \item le m\^eme nom de client ;
483 \item le m\^eme FileSet (toute modification de la d\'efinition du FileSet telle
484       que l'ajout ou la suppression de fichiers dans les sections Include ou
485       Exclude constitue un changement de FileSet).
486 \item le Job \'etait une sauvegarde FULL
487 \item le Job s'est termin\'e normalement, c'est \`a dire qu'il ne s'est pas termin\'e
488       en \'echec, et n'a pas \'et\'e effac\'e.
489 \end{itemize}
490
491 Si toutes les conditions ci-dessus ne sont pas r\'ealis\'ees, le Director
492 augmentera la sauvegarde diff\'erentielle en une sauvegarde Full. Dans le cas
493 contraire, la sauvegarde diff\'erentielle sera effectu\'ee normalement.
494
495 Le File Daemon (Client) d\'etermine les fichiers \`a sauvegarder pour une
496 diff\'erentielle par comparaison de l'heure de d\'emarrage de la derni\`ere 
497 sauvegarde Full avec les dates de derni\`ere modification
498 de chaque fichier (st\_mtime) et de ses attributs (st\_ctime). Si le fichier
499 ou ses attributs ont chang\'es depuis cette date de d\'emarrage, alors le fichier
500 sera sauvegard\'e. La date de d\'emarrage utilis\'ee est affich\'e apr\`es le {\bf Since} 
501 du rapport de Job. Dans de rares cas, certains fichiers sont sauvegard\'es deux fois 
502 \`a cause de l'utilisation de la date de d\'emarrage de la sauvegarde pr\'ec\'edente, 
503 mais ceci assure qu'aucun changement n'est perdu. Comme pour les incr\'ementales, 
504 vous devriez vous assurer que les horloges de votre serveur Bacula et de vos clients 
505 sont synchronis\'ees, ou aussi proches que possible, pour \'eviter le risque d'omission 
506 d'un fichier. Notez qu'\`a partir de la version 1.33, Bacula effectue automatiquement 
507 ces ajustements de sorte que les horloges utilis\'ees par Bacula soient synchrones.
508
509 Veuillez noter que certains logiciels anti-virus peuvent modifier la date
510 st\_time lors de leurs op\'erations de scan. Ainsi, si l'antivirus modifie
511 la date d'acc\`es (st\_atime), qui n'est pas utilis\'ee par Bacula, il
512 provoquera une modification du st\_ctime et conduira Bacula \`a sauvegarder
513 les fichiers concern\'es lors des incr\'ementales et diff\'erentielles. Dans le
514 cas de l'antivirus Sophos, vous pouvez \'eviter cet inconv\'enient en utilisant
515 l'option {\bf \verb{--{no-reset-atime}. Pour les autres logiciels, voyez
516 leurs manuels.
517
518 Lorsque Bacula effectue une sauvegarde diff\'erentielle, tous les fichiers modifi\'es
519 pr\'esents sur le syst\`eme sont sauvegard\'es. Cependant, tout fichier supprim\'e depuis
520 la derni\`ere Full demeure dans le catalogue, ce qui signifie que si vous effectuez
521 une restauration \`a partir de sauvegardes diff\'erentielles (et de la Full associ\'ee),
522 les fichiers supprim\'es depuis la derni\`ere Full seront aussi restaur\'es. Ces fichiers
523 n'appara\^itront plus dans le catalogue apr\`es avoir fait une nouvelle sauvegarde
524 Full. Le processus pour supprimer ces fichiers du catalogue lors d'une
525 incr\'ementale ralentirait fortement les sauvegardes diff\'erentielles. Il n'est
526 actuellement pas impl\'ement\'e dans Bacula, mais plannifi\'e pour une future version 
527 de Bacula.
528
529 Comme not\'e ci-dessus, si vous d\'eplacez un r\'epertoire plut\^ot que de le copier, les fichiers 
530 qu'il contient voient leurs dates de derni\`ere modification (st\_mtime) et de dernier acc\`es
531 (st\_ctime) inchang\'es. Par cons\'equent, ces fichiers ne seront probablement
532 sauvegard\'es par aucune incr\'ementale ou diff\'erentielle, puisque ces derni\`eres
533 ne se r\'ef\`erent qu'\`a ces indicateurs. Aussi, il est pr\'ef\'erable de copier un dossier
534 avant de supprimer l'original plut\^ot que de le d\'eplacer, si vous voulez qu'il soit
535 correctement sauvegard\'e.
536
537 R\'eguli\`erement, quelqu'un demande \`a quoi servent les sauvegardes diff\'erentielles 
538 du moment que les incr\'ementales r\'ecup\`erent tous les fichiers modifi\'es. Il existe 
539 plusieurs r\'eponses \`a cette question, mais la plus importante \`a mes yeux est de 
540 combiner toutes les incr\'ementales et diff\'erentielles depuis la derni\`ere full en 
541 une seule diff\'erentielle. Ceci a deux effets : 1. La redondance. 2. Plus important, 
542 la r\'eduction du nombre de volumes requis pour faire une restauration en 
543 \'eliminant la n\'ecessit\'e de lire tous les volumes des pr\'ec\'edentes incr\'ementales 
544 depuis la derni\`ere full.
545
546 \end{description}
547
548 Pour un Job de type {\bf Restore}, aucun niveau ne doit \^etre sp\'ecifi\'e.  
549
550 Pour un Job de type {\bf Verify}, le niveau peut \^etre l'un des suivants :   
551
552 \begin{description}
553
554 \item [InitCatalog]
555    \index[dir]{InitCatalog}
556    Examine le {\bf FileSet} sp\'ecifi\'e et stocke les attributs de fichiers dans le 
557    catalogue. Vous pouvez vous interroger sur l'int\'er\^et d'un Job qui ne 
558    sauvegarde aucun fichier. La r\'eponse est de pouvoir utiliser Bacula comme 
559    vous utiliseriez Tripwire, en d'autres termes, ce type de Jobs vous permet 
560    de sauvegarder l'\'etat d'un ensemble de fichiers d\'efini par un {\bf FileSet} 
561    afin de pouvoir ult\'erieurement contr\^oler si rien n'a \'et\'e modifi\'e, supprim\'e ou 
562    ajout\'e. Ceci peut \^etre utilis\'e pour d\'etecter une intrusion. Typiquement, 
563    vous sp\'ecifiez un {\bf FileSet} qui contient l'ensemble des fichiers qui ne 
564    devraient pas changer (par exemple /sbin, /boot, /lib, /bin,  ...). Ensuite, 
565    vous ex\'ecutez le Job verify de niveau {\bf InitCatalog} apr\`es l'installation 
566    de votre syst\`eme, puis apr\`es chaque modification (mise \`a jour). Ensuite, 
567    lorsque vous souhaitez contr\^oler l'\'etat de votre syst\`eme de fichiers, 
568    vous utilisez un Job {\bf Verify}, {\bf level = Catalog} afin de comparer 
569    le r\'esultat de votre {\bf InitCatalog} avec l'\'etat actuel de votre syst\`eme 
570    de fichiers.
571
572 \item [Catalog]
573    \index[dir]{Catalog}
574    Compare l'\'etat actuel des fichiers et l'\'etat pr\'ec\'edemment sauvegard\'e 
575    lors d'un {\bf InitCatalog}. Toutes les anomalies sont rapport\'ees. 
576    Les objets du rapport sont d\'etermin\'es par les options {\bf verify} 
577    sp\'ecifi\'ees dans la directive {\bf Include} du {\bf FileSet} sp\'ecifi\'e 
578    (voyez la ressource {\bf FileSet} ci-dessous pour plus de d\'etails). 
579    Typiquement, cette commande sera ex\'ecut\'ee quotidiennement pour 
580    contr\^oler toute modification de votre syst\`eme de fichier.
581    
582 Attention ! Si vous ex\'ecutez deux jobs Verify Catalog simultan\'ement sur le m\^eme client, 
583 les r\'esultats seront probablement erronn\'es. En effet, Verify Catalog modifie 
584 le catalogue lors de son ex\'ecution afin de d\'etecter les nouveaux fichiers.
585
586 \item [VolumeToCatalog]
587    \index[dir]{VolumeToCatalog}
588    Ce niveau permet de lire les attributs de fichiers \'ecrits sur le Volume 
589    lors du dernier Job. Les attributs de fichiers sont compar\'es aux valeurs 
590    sauvegard\'ees dans le catalogue et toute diff\'erence est rapport\'ee. Ceci 
591    est similaire au niveau {\bf Catalog}, sauf que ce sont les 
592    attributs des fichiers du volume plut\^ot que ceux des fichiers du disque 
593    qui sont compar\'es aux attributs sauvegard\'es dans le catalogue. Bien que 
594    les attributs et signatures (MD5 ou SHA1) soient compar\'es, les donn\'ees 
595    r\'eelles ne le sont pas (elles ne figurent pas dans le catalogue).
596
597 Attention ! Si vous ex\'ecutez deux jobs Verify VolumeToCatalog simultan\'ement sur le m\^eme client,
598 les r\'esultats seront probablement erronn\'es. En effet, Verify VolumeToCatalog modifie
599 le catalogue lors de son ex\'ecution afin de d\'etecter les nouveaux fichiers.
600
601 \item [DiskToCatalog]
602    \index[dir]{DiskToCatalog}
603    Ce niveau permet de lire les fichiers tels qu'ils sont actuellement sur le 
604    disque et de comparer leurs attributs actuels avec ceux stock\'es dans le 
605    catalogue lors de la derni\`ere sauvegarde pour le Job sp\'ecifi\'e par la 
606    directive {\bf VerifyJob}. Ce niveau diff\`ere du niveau {\bf Catalog} 
607    d\'ecrit plus haut en ce qu'il ne se r\'ef\`ere pas \`a un Job Verify ant\'erieur, 
608    mais \`a la derni\`ere sauvegarde. Lorsque vous utilisez ce niveau , vous devez 
609    renseigner les option Verify de la section Include. Ces options d\'eterminent 
610    quels attributs seront compar\'es.
611
612 Cette commande peut se r\'ev\'eler tr\`es utile si vous avez des probl\`emes de disque 
613 car elle comparera l'\'etat actuel de votre disque avec la derni\`ere sauvegarde 
614 valide, qui peut remonter \`a plusieurs jobs.
615
616 Notez que l'impl\'ementation actuelle (1.32c) n'identifie pas les fichiers qui 
617 ont \'et\'e supprim\'es.
618 \end{description}
619
620 \item [Verify Job = \lt{}Job-Resource-Name\gt{}]
621    \index[dir]{Verify Job}
622    \index[dir]{Directive!Verify Job}
623    Si vous ex\'ecutez un job verify sans cette directive, le dernier job 
624    ex\'ecut\'e sera compar\'e avec le catalogue, ce qui signifie que votre commande 
625    verify doit succ\'eder imm\'ediatement \`a une sauvegarde. Si vous sp\'ecifiez 
626    un {\bf Verify Job}, Bacula trouvera le dernier job ex\'ecut\'e avec ce nom. 
627    Ceci vous permet d'ex\'ecuter toutes vos sauvegardes, puis d'ex\'ecuter les jobs 
628    Verify sur les sauvegardes de votre choix (le plus souvent, un {\bf VolumeToCatalog} 
629    de sorte que la cartouche qui vient juste d'\^etre \'ecrite est relue).
630    
631 \item [JobDefs = \lt{}JobDefs-Resource-Name\gt{}]
632    \index[dir]{JobDefs}
633    \index[dir]{Directive!JobDefs}
634    Si un nom de JobDef est sp\'ecifi\'e dans la d\'efinition d'un Job, toutes les valeurs 
635    d\'efinies dans la ressource JobDef concern\'ee seront utilis\'ees en tant que valeurs 
636    par d\'efaut pour le Job. Toute valeur explicitement sp\'ecifi\'ee dans la 
637    d\'efinition du Job outrepasse la valeur par d\'efaut d\'efinie par le JobDef.
638    L'utilisation de cette directive permet d'\'ecrire des ressources Job plus 
639    compactes, o\`u la majeure partie des directives sont d\'efinies dans un ou 
640    plusieurs JobDefs. C'est particuli\`erement pratique si vous avez de nombreux 
641    Jobs similaires avec des variations mineures telles que diff\'erents clients.
642    Un exemple basique de l'utilisation d'un Jobdef est fourni dans le fichier 
643    bacula-dir.conf par d\'efaut.
644
645 \item [Bootstrap = \lt{}bootstrap-file\gt{}]
646    \index[dir]{Bootstrap}
647    \index[dir]{Directive!Bootstrap}
648    La directive Bootstrap sp\'ecifie un fichier bootstrap qui, s'il est fourni, 
649    sera utilis\'e lors des restaurations et ignor\'e par tout les autres Jobs. 
650    Le fichier {\bf bootstrap} contient la liste des cartouches n\'ecessaires 
651    pour la restauration ainsi que les index des fichiers \`a restaurer 
652    (localisation sur la cartouche). Cette directive 
653    est optionnelle, et n'est utilis\'ee que pour les restaurations. De plus, 
654    elle peut \^etre modifi\'ee lorsqu'une restauration est lanc\'ee depuis la console.
655    
656 Si vous utilisez la commande {\bf Restore} dans la console pour lancer une 
657 restauration, le fichier {\bf bootstrap} sera cr\'e\'e automatiquement \`a partir des 
658 fichiers que vous avez s\'electionn\'es pour la restauration.
659
660 Pour plus de d\'etails concernant les fichiers {\bf bootstrap}, veuillez 
661 consulter le chapitre \ilink{Restaurer des fichiers avec le fichier Bootstrap}{_ChapterStart43} 
662 de ce manuel.
663
664 \label{writebootstrap}
665 \item [Write Bootstrap =  \lt{}bootstrap-file-specification\gt{}]
666    \index[dir]{Write Bootstrap}
667    \index[dir]{Directive!Write Bootstrap}
668    La directive {\bf writebootstrap} sp\'ecifie le de fichier Bootstrap o\`u Bacula 
669    \'ecrira lors de chaque sauvegarde. Ainsi, cette directive s'applique 
670    exclusivement aux jobs de type sauvegarde. Si la sauvegarde est une Full, 
671    Bacula \'ecrase le contenu du fichier sp\'ecifi\'e. Sinon, Bacula ajoute les 
672    nouveaux enregistrements Bootstrap \`a la fin du fichier.
673
674 En utilisant cette fonction, vous aurez constamment un fichier bootstrap 
675 capable de recouvrer l'\'etat le plus r\'ecent de votre syst\`eme. Le fichier 
676 bootstrap devrait \^etre \'ecrit sur un disque mont\'e sur une autre machine, de 
677 sorte que vous puissiez en disposer imm\'ediatement en cas de d\'efaillance 
678 de votre disque dur. Une alternative consiste \`a copier le fichier sur une autre 
679 machine apr\`es chaque mise \`a jour.
680
681 Si la {\bf sp\'ecification de fichier bootstrap} d\'ebute par une barre verticale (|), 
682 Bacula consid\`ere la sp\'ecification comme un nom de programme vers lequel les 
683 les enregistrement bootstrap seront redirig\'es. Ce peut \^etre, par exemple, un 
684 script qui vous envoie par e-mail les enregistrements bootstrap.
685
686 Pour plus de d\'etails sur l'utilisation de fichiers bootstrap, veuillez 
687 consulter le chapitre intitul\'e \ilink{Le Fichier Bootstrap}{_ChapterStart43} 
688 de ce manuel.
689
690
691 \item [ Client = \lt{}client-resource-name\gt{}]
692    \index[dir]{Client}
693    \index[dir]{Directive!Client}
694    La directive Client sp\'ecifie le Client (File Daemon) \`a utiliser dans le Job.
695    Le client est ex\'ecut\'e sur la machine \`a sauvegarder. Il exp\'edie les fichiers requis
696    au Storage Daemon lors des sauvegardes, et re\\ 3oit les fichiers du Storage Daemon
697    lors des restaurations. Pour plus de d\'etails, consultez la section
698    \ilink{Ressource Client}{ClientResource2} de ce chapitre. Cette deirective est requise.
699
700
701 \item [ FileSet = \lt{}FileSet-resource-name\gt{}]
702    \index[dir]{FileSet}
703    \index[dir]{FileSet}
704    La directive FileSet sp\'ecifie le FileSet \`a utiliser dans le Job concern\'e. Le
705    FileSet d\'efinit les r\'epertoires et fichiers \`a sauvegarder, ainsi que les options
706    \`a utiliser pour les sauvegarder (par exemple la compression,...). Un Job ne peut
707    contenir qu'un seul FileSet. Pour plus de d\'etails, consultez la section
708    \ilink{Ressource FileSet}{FileSetResource} de ce chapitre.
709    Cette directive est requise.
710
711 \item [ Messages = \lt{}messages-resource-name\gt{}]
712    \index[dir]{Messages}
713    \index[dir]{Directive!Messages}
714    La directive Messages d\'efinit la ressource Message qui doit \^etre utilis\'ee
715    pour le job concern\'e. Ainsi, elle d\'etermine le comment et o\`u seront
716    d\'elivr\'es les diff\'erents messages de Bacula. Par exemple, vous pouvez diriger
717    certains messages vers un fichier de logs, tandis que d'autres seront
718    envoy\'es par e-mail. Pour plus de d\'etails, consultez le chapitre
719    \ilink{Ressource Messages}{_ChapterStart15} de ce manuel. Cette directive
720    est requise.
721
722 \item [ Pool = \lt{}pool-resource-name\gt{}]
723    \index[dir]{Pool}
724    \index[dir]{Directive!Pool}
725    La directive Pool sp\'ecifie le jeu de volumes qui doit \^etre utilis\'e pour
726    sauvegarder vos donn\'ees. De nombreuses installations de Bacula
727    n'utiliseront que le pool d\'efini par d\'efaut {\bf Default}. Toutefois,
728    si vous voulez sp\'ecifier diff\'erents jeux de volumes pou diff\'erents clients
729    ou diff\'erents jobs, vous voudrez probablement utiliser les Pools.
730    Pour plus de d\'etails, consultez la section \ilink{Ressource Pool}{PoolResource}
731    de ce chapitre. Cette directive est requise
732
733 \item [ Full Backup Pool = \lt{}pool-resource-name\gt{}]
734    \index[dir]{Full Backup Pool}
735    \index[dir]{Directive!Full Backup Pool}
736    La directive {\it Full Backup Pool} sp\'ecifie un Pool \`a utiliser pour les
737    sauvegardes Full. Cette directive outrepasse toute autre sp\'ecification
738    de Pool lors d'une sauvegarde Full. Cette directive est optionnelle.
739
740 \item [ Differential Backup Pool = \lt{}pool-resource-name\gt{}]
741    \index[dir]{Differential Backup Pool}
742    \index[dir]{Directive!Differential Backup Pool}
743    La directive {\it Differential Backup Pool} sp\'ecifie un Pool \`a utiliser pour les
744    sauvegardes Diff\'erentielles. Cette directive outrepasse toute autre sp\'ecification
745    de Pool lors d'une sauvegarde Diff\'erentielle. Cette directive est optionnelle.
746
747 \item [ Incremental Backup Pool = \lt{}pool-resource-name\gt{}]
748    \index[dir]{Incremental Backup Pool}
749    \index[dir]{Directive!Differential Backup Pool}
750    La directive {\it Incremental Backup Pool} sp\'ecifie un Pool \`a utiliser pour les
751    sauvegardes Incr\'ementales. Cette directive outrepasse toute autre sp\'ecification
752    de Pool lors d'une sauvegarde Incr\'ementale. Cette directive est optionnelle.
753
754 \item [ Schedule = \lt{}schedule-name\gt{}]
755    \index[dir]{Schedule}
756    \index[dir]{Directive!Schedule}
757    La directive Schedule d\'efinit la planification du job. Le {\it schedule} d\'etermine 
758    la date et l'instant o\`u le job doit \^etre lanc\'e automatiquement, et le niveau 
759    (Full, Diff\'erentiel, Incr\'emental...) du job en question. Cette directive est 
760    optionnelle. Si elle est omise, le job ne pourra \^etre ex\'ecut\'e que manuellement via 
761    la Console. Bien que vous puissiez vous contenter d'une ressource Schedule simple
762    pour tout job, vous pouvez aussi d\'efinir des ressources Schedule avec plusieurs 
763    directives {\bf Run}, afin de lancer le job \`a diff\'erentes heures. Chacune de ces 
764    directives {\bf Run} permet d'outrepasser les valeurs par d\'efaut de Level, Pool, 
765    Storage et Messages ressources. Ceci autorise une grande souplesse d'utilisation 
766    d'un simple job.
767    Pour plus de d\'etails, consultez le chapitre. 
768    \ilink{Ressource Schedule}{ScheduleResource} de ce manuel. 
769
770 \item [ Storage = \lt{}storage-resource-name\gt{}]
771    \index[dir]{Storage}
772    \index[dir]{Directive!Storage}
773    La directive Storage d\'efinit le nom du service storage que vous souhaitez 
774    utiliser pour sauvegarder les donn\'ees du FileSet. Pour plus de d\'etails, consultez le 
775    chapitre \ilink{Ressource Storage}{StorageResource2} de ce manuel.
776    Cette directive est requise.
777    
778 \item [ Max Start Delay = \lt{}time\gt{}]
779    \index[sd]{Max Start Delay}
780     \index[dir]{Directive!Max Start Delay}
781    La directive Max Start Delay sp\'ecifie le d\'elai maximal entre l'horaire 
782    planifi\'e (dans le schedule) et l'horaire effectif de d\'emarrage du job. 
783    Par exemple, un job peut \^etre programm\'e pour d\'emarrer \`a 1h, mais \^etre 
784    mis en attente \`a cause d'autres jobs en cours d'ex\'ecution. Si le 
785    Max Start Delay a \'et\'e r\'egl\'e \`a 3600, le job sera supprimm\'e s'il n'a pas 
786    d\'emarr\'e \`a 2h. Ceci peut se r\'ev\'eler utile pour, par exemple, \'eviter qu'un job 
787    s'ex\'ecute duant les heures ouvrables. La valeur par d\'efaut est 0 (pas de limite).
788
789 \item [ Max Run Time = \lt{}time\gt{}]
790    \index[sd]{Max Run Time}
791    \index[dir]{Directive!Max Run Time}
792    La directive Max Run Time sp\'ecifie le d\'elai allou\'e pour l'ex\'ecution 
793    compl\`ete d'un job depuis son lancement (pas n\'ecessairement \`a l'heure 
794    de sa programmation) jusqu'\`a sa fin. Cette directive est impl\'ement\'ee 
795    depuis la version 1.33.
796
797 \item [ Max Wait Time = \lt{}time\gt{}]
798    \index[sd]{Max Wait Time}
799    \index[dir]{Directive!Max Wait Time}
800    La directive Max Wait Time sp\'ecifie le d\'elai maximum durant lequel un 
801    job peut rester bloqu\'e en attente d'une ressource (par exemple, en attente du 
802    montage d'une cartouche ou encore en attente des Storage ou File Daemon occup\'es 
803    \`a d'autres tâches) depuis son lancement (pas n\'ecessairement \`a l'heure
804    de sa programmation) jusqu'\`a sa fin. Cette directive est impl\'ement\'ee
805    depuis la version 1.33. 
806    
807 \item [Incremental Max Wait Time = \lt{}time\gt{}]
808    \index[dir]{Incremental Max Wait Time}
809    \index[dir]{Directive!Incremental Max Wait Time}
810    Cette directive sp\'ecifie le temps maximum durant lequel une sauvegarde 
811    incr\'ementale peut rester bloqu\'ee en attente d'une ressource (par exemple, en 
812    attente d'une cartouche ou des File ou Storage daemons), compt\'e \`a partir 
813    du d\'emarrage du job, ({\bf pas n\'ecessairement} l'heure \`a laquelle le job 
814    a \'et\'e programm\'e). Notez que si un {\bf Max Wait Time} a \'et\'e sp\'ecifi\'e, 
815    il peut aussi s'appliquer au job.
816
817 \item [Differential Max Wait Time = \lt{}time\gt{}]
818    \index[dir]{Differential Max Wait Time}
819    \index[dir]{Directive!Differential Max Wait Time}
820    Cette directive sp\'ecifie le temps maximum durant lequel une sauvegarde
821    diff\'erentielle peut rester bloqu\'ee en attente d'une ressource (par exemple, en
822    attente d'une cartouche ou des File ou Storage daemons), compt\'e \`a partir
823    du d\'emarrage du job, ({\bf pas n\'ecessairement} l'heure \`a laquelle le job
824    a \'et\'e programm\'e). Notez que si un {\bf Max Wait Time} a \'et\'e sp\'ecifi\'e,
825    il peut aussi s'appliquer au job.
826
827 \item [Prefer Mounted Volumes = \lt{}yes|no\gt{}]
828     \index[dir]{Prefer Mounted Volumes}
829     \index[dir]{Directive!Differential Max Wait Time}
830     Si cette directive est activ\'ee (c'est le cas par d\'efaut), le Director 
831     ordonne au Storage daemon de s\'electionner de pr\'ef\'erence soit une 
832     librairie, soit un lecteur avec un volume valide d\'ej\`a mont\'e, plut\^ot qu'un 
833     lecteur pas pr\`et. Si aucun lecteur n'est pr\`et, c'est le premier lecteur 
834     pr\`et qui sera s\'electionn\'e.
835
836     Si cette directive est d\'esactiv\'ee, le Storage daemon privil\'egiera 
837     les lecteurs inutilis\'es. Ce mode de fonctionnement peut \^etre tr\`es utile 
838     pour ces sites avec de nombreux lecteurs qui o\`u il peut \^etre pr\'ef\'erable 
839     de maximiser le flux des sauvegardes au prix d'une utilisation d'un plus 
840     grand nombre de lecteurs et de cartouches. Afin d'optimiser l'utilisation 
841     de plusieurs lecteurs, vous voudrez probablement lancer chacun de vos 
842     jobs l'un apr\`es l'autre avec un intervalle de 5 secondes environ. Ceci 
843     aidera \`a assurer que chaque nuit, le m\^eme lecteur (volume) est 
844     s\'electionn\'e pour le m\^eme job. Autrement, lors d'une restauration, vous 
845     pourriez trouver vos fichiers dispers\'es sur beaucoup plus de volumes que 
846     n\'ecessaire.
847
848 \item [ Prune Jobs = \lt{}yes|no\gt{}]
849    \index[dir]{Prune Jobs}
850    \index[dir]{Directive!Prune Jobs}
851    En principe, l'\'elagage des jobs du catalogue est sp\'ecifi\'e pour chaque client 
852    dans sa propre ressource Client par la directive {\bf AutoPrune}. Si cette 
853    directive est sp\'ecifi\'ee (normalement, non) et si la valeur est {\bf yes}, 
854    elle outrepasse la valeur sp\'ecifi\'ee dans la ressource Client. La valeur 
855    par d\'efaut est {\bf no}.
856
857 \item [ Prune Files = \lt{}yes|no\gt{}]
858    \index[dir]{Prune Files}
859    \index[dir]{Directive!Prune Jobs}
860    En principe, l'\'elagage des fichiers du catalogue est sp\'ecifi\'e pour chaque client
861    dans sa propre ressource Client par la directive {\bf AutoPrune}. Si cette
862    directive est sp\'ecifi\'ee (normalement, non) et si la valeur est {\bf yes},
863    elle outrepasse la valeur sp\'ecifi\'ee dans la ressource Client. La valeur
864    par d\'efaut est {\bf no}.
865  
866 \item [ Prune Volumes = \lt{}yes|no\gt{}]
867    \index[dir]{Prune Volumes}
868    \index[dir]{Directive!Prune Jobs}
869    En principe, l'\'elagage des volumes du catalogue est sp\'ecifi\'e pour chaque client
870    dans sa propre ressource Client par la directive {\bf AutoPrune}. Si cette
871    directive est sp\'ecifi\'ee (normalement, non) et si la valeur est {\bf yes},
872    elle outrepasse la valeur sp\'ecifi\'ee dans la ressource Client. La valeur
873    par d\'efaut est {\bf no}.
874
875 \item [RunScript \{...\}]
876    \index[dir]{RunScript}
877    \index[dir]{Directive!Run Script}
878
879    La commande sp\'ecifi\'ee est ex\'ecut\'ee en tant que programme externe avant le
880    lancement du job. Cette directive est optionnelle.
881    Vous disposez des options suivantes :
882
883 \begin{tabular}{|c|c|c|l}
884 Options         & Valeur  & Defaut & Informations  \\
885 \hline
886 \hline
887 Runs On Success & Yes/No & {\it Yes} & La commande est exécutée si le job s'est terminé avec succès\\
888 \hline
889 Runs On Failure & Yes/No & {\it No} & La commande est exécutée si le job a Ã©choué\\
890 \hline
891 Runs On Client  & Yes/No & {\it Yes} & La commande est exécutée sur le client\\
892 \hline
893 Runs When       & Before|After|Always & {\it Never} & Le moment où la commande doit Ãªtre exécutée\\
894 \hline
895 Abort Job On Error & Yes/No & {\it Yes} & Abandonne le job si le script retourne 
896                                         un résultat non nul\\
897 \hline
898 Command          &       &          & Le chemin vers votre script\\
899 \hline
900 \end{tabular}
901    Tout retour de la commande sur la sortie standard est
902    incluse dans le rapport de job de Bacula. La cha\^ine {bf command} doit \^etre
903    un nom de programme valide ou un script shell
904
905    D'autre part,
906    la cha\^ine {bf command} est parcourue puis envoy\'ee vers la fonction execvp(), ce qui
907    signifie que le chemin de la commande est recherch\'e pour son ex\'ecution, mais
908    qu'il n'y a aucune interpr\'etation shell. Par cons\'equent, si vous voulez utiliser
909    des commandes complexes ou toute fonctionnalit\'e du shell telle que la
910    redirection, vous devez appeler un script shell o\`u vous mettrez vos commandes.
911   
912    Avant de soumettre la commande sp\'ecifi\'ee au syst\`eme d'exploitation, Bacula
913    effectue les substitutions suivantes :
914
915 \footnotesize
916 \begin{verbatim}
917     %% = %
918     %c = Nom du client
919     %d = Nom du Director
920     %e = Statut de sortie du job
921     %i = JobId
922     %j = Nom unique du job
923     %l = Niveau du job
924     %n = Nom du job
925     %s = Temps Depuis (NDT : Since Time)
926     %t = Type de job (Backup,...)
927     %v = Nom de volume
928 \end{verbatim}
929 \normalsize
930
931 Le code de statut de fin de job peut prendre les valeurs suivantes :
932
933 \index[dir]{Exit Status}
934 \begin{itemize}
935 \item OK
936 \item Error
937 \item Fatal Error
938 \item Canceled
939 \item Differences
940 \item Unknown term code
941 \end{itemize}
942
943    Aussi, si vous l'utilisez dans une ligne de commande, il vous faudra l'encadrer
944    de quotes.
945
946 Vous disposez des raccourcis suivants :
947 \begin{tabular}{|c|c|c|c|c|c}
948 Mot clef & RunsOnSuccess & RunsOnFailure  & AbortJobOnError & Runs On Client & RunsWhen  \\
949 \hline
950 Run Before Job         &        &       & Yes     & No     & Before \\
951 \hline
952 Run After Job          &  Yes   &   No  &         & No     & After  \\
953 \hline
954 Run After Failed Job   &  No    &  Yes  &         & No     & After  \\
955 \hline
956 Client Run Before Job  &        &       & Yes     & Yes    & Before \\
957 \hline
958 Client Run After Job   &  Yes   &   No  &         & Yes    & After  \\
959 \hline
960 Client Run After Failed Job   &  No    &  Yes  &         & Yes     & After  \\
961 \end{tabular}
962
963 Exemple :
964 \begin{verbatim}
965 RunScript {
966     RunsWhen = Before
967     AbortJobOnError = No
968     Command = "/etc/init.d/apache stop"
969 }
970
971 RunScript {
972     RunsWhen = After
973     RunsOnFailure = yes
974     Command = "/etc/init.d/apache start"
975 }
976 \end{verbatim}
977
978 {\bf Consid\'erations particuli\`eres \`a Windows}
979    D'autre part, pour les clients Windows \`a partir de la version 1.33, notez bien 
980    que vous devez fournir un chemin correct pour votre script, et que le script 
981    peut avoir l'extension .com, .exe, ou .bat. Si vous sp\'ecifiez un chemin, 
982    vous devez aussi sp\'ecifier l'extension compl\`ete. Les commandes \`a la fa\c{c}on 
983    d'Unix ne fonctionneront pas, \`a moins que vous n'ayez install\'e et 
984    correctement configur\'e Cygwin en plus (et s\'epar\'ement) de Bacula.
985
986 La commande peut \^etre n'importe quel programme reconnu par cmd.exe ou command.com 
987 comme un fichier ex\'ecutable. Sp\'ecifier une extension de fichier ex\'ecutable 
988 est optionnel, \`a moins qu'il y ait une ambigu\"it\'e (par exemple ls.bat, ls.exe).
989
990 Bacula cherche la commande dans le r\'epertoire "System \%Path\%" (Dans la
991 bo\^ite de dialogue des variables d'environnement vous avez les variables
992 "syst\`eme" et "utilisateurs". Si bacula-fd fonctionne en tant que
993 service, seules les variables d'environnement syst\`emes sont accessibles.)
994
995 Les variables d'environnement syst\`eme peuvent \^etre invoqu\'ees avec la
996 syntaxe \%var\% et utilis\'ees comme portion du nom de la commande ou des
997 arguments.
998
999 Lorsque la sp\'ecification du chemin absolu d'un ex\'ecutable ou le nom de 
1000 l'ex\'ecutable contient des espaces ou des caract\`eres sp\'eciaux, ils doivent 
1001 \^etre quot\'es. Il en va de m\^eme pour les arguments.
1002
1003 \footnotesize
1004 \begin{verbatim}
1005 ClientRunBeforeJob = "\"C:/Program Files/Software
1006      Vendor/Executable\" /arg1 /arg2 \"foo bar\""
1007 \end{verbatim}
1008 \normalsize
1009
1010 Les caract\`eres sp\'eciaux \&()[]\{\}\^{}=;!'+,`\~{} devront \^etre quot\'es s'ils font 
1011 partie d'un nom de fichier ou d'un argument.
1012
1013
1014 If someone is logged in a blank ``command'' window running the  commands will
1015 be present during the execution of the command.  
1016
1017 Quelques suggestions de Phil Stracchino pour l'ex\'ecution sur les machines 
1018 Win32 avec le File Daemon Win32 natif :
1019
1020 \begin{enumerate}
1021 \item Vous pourriez utiliser la directive ClientRunBeforeJob pour sp\'ecifier 
1022       un fichier .bat qui ex\'ecute les commandes cot\'e client plut\^ot que 
1023       d'essayer d'ex\'ecuter (par exemple) regedit /e directement.
1024 \item Le fichier batch devrait retourner explicitement 0 lors des ex\'ecutions correctes.
1025 \item Le chemin vers le fichier batch devrait \^etre sp\'ecifi\'e au format Unix :
1026
1027    ClientRunBeforeJob = ``c:/bacula/bin/systemstate.bat''  
1028
1029 plut\^ot qu'au format DOS/Windows :  
1030
1031 ClientRunBeforeJob =
1032 ``c:\textbackslash{}bacula\textbackslash{}bin\textbackslash{}systemstate.bat''
1033 INCORRECT 
1034 \end{enumerate}
1035
1036 L'exemple suivant d'utilisation de la directive Client Run Before Job a \'et\'e soumis 
1037 par un utilisateur :\\
1038 Vous pourriez \'ecrire un script shell pour sauvegarder une base DB2 dans un FIFO. Voici 
1039 le script en question :
1040
1041 \footnotesize
1042 \begin{verbatim}
1043  #!/bin/sh
1044  # ===== backupdb.sh
1045  DIR=/u01/mercuryd
1046
1047  mkfifo $DIR/dbpipe
1048  db2 BACKUP DATABASE mercuryd TO $DIR/dbpipe WITHOUT PROMPTING &
1049  sleep 1
1050 \end{verbatim}
1051 \normalsize
1052
1053 La ligne suivante dans la ressource Job du fichier bacula-dir.conf :
1054 \footnotesize
1055 \begin{verbatim}
1056  Client Run Before Job = "su - mercuryd -c \"/u01/mercuryd/backupdb.sh '%t'
1057 '%l'\""
1058 \end{verbatim}
1059 \normalsize
1060
1061 Lorsque le job est ex\'ecut\'e, vous obtiendrez un message de sortie du script 
1062 annon\c{c}ant que la sauvegarde a d\'emarr\'e. M\^eme si la commande est ex\'ecut\'ee en 
1063 arri\`ere plan avec \&, le job bloquera jusqu'\`a la commande "db2 BACKUP DATABASE", et 
1064 la sauvegarde se fige. 
1065
1066 Pour rem\'edier \`a cette situation, la ligne "db2 BACKUP DATABASE" 
1067 devrait \^etre modifi\'ee en :
1068
1069 \footnotesize
1070 \begin{verbatim}
1071  db2 BACKUP DATABASE mercuryd TO $DIR/dbpipe WITHOUT PROMPTING > $DIR/backup.log
1072 2>&1 < /dev/null &
1073 \end{verbatim}
1074 \normalsize
1075
1076 Il est important de rediriger l'entr\'ee et la sortie d'une commande en arri\`ere plan 
1077 vers /dev/null pour \'eviter le bloquage du script.
1078
1079 \item [ Run Before Job = \lt{}command\gt{}]
1080    \index[dir]{Run Before Job}
1081    \index[dir]{Directive!Run Before Job}
1082    La commande sp\'ecifi\'ee est ex\'ecut\'ee en tant que programme externe avant le
1083    lancement du job. Cette directive n'est pas requise,mais si elle est d\'efinie, 
1084    et si le code retour d'ex\'ecution du programme est diff\'erent de z\'ero, le job qui 
1085    a lanc\'e le programme est effac\'e. 
1086
1087 \begin{verbatim}
1088 Run Before Job = "echo test"
1089 \end{verbatim}
1090    est Ã©quivalent Ã  :
1091 \begin{verbatim}
1092 RunScript {
1093  Command = "echo test"
1094  RunsOnClient = No
1095  RunsWhen = Before
1096 }
1097 \end{verbatim}
1098
1099 Lutz Kittler a fait remarquer que ceci peut \^etre un moyen ais\'e pour modifier
1100 vos schedules pour les vacances. Par exemple, supposons que vous fassiez
1101 habituellement des sauvegardes Full le vendredi, mais que jeudi et vendredi
1102 soient f\'eri\'es. Pour \'eviter d'avoir \`a changer les cartouches entre jeudi et vendredi
1103 alors que personne n'est au bureau, vous pouvez cr\'eer un RunBeforeJob qui retourne
1104 un statut non nul jeudi et z\'ero les autres jours. Ainsi, le job de jeudi ne sera pas
1105 ex\'ecut\'e, et la cartouche que vous avez ins\'er\'e mercredi sera disponible pour la Full
1106 de vendredi.
1107
1108 \item [ Run After Job = \lt{}command\gt{}]
1109    \index[dir]{Run After Job}
1110    \index[dir]{Directive!Run After Job}
1111    La commande sp\'ecifi\'ee est ex\'ecut\'ee en tant que programme externe apr\`es la fin
1112    du job. La cha\^ine {bf command} doit \^etre un nom de programme valide ou un
1113    script shell. Cette directive n'est pas requise. Si le code de sortie du
1114    programme est non nul, Bacula affiche un message d'avertissement (warning).
1115    Avant de soumettre
1116    la commande sp\'ecifi\'ee au syst\`eme d'exploitation, Bacula effectue les
1117    substitutions de caract\`eres d\'ecrites au paragraphe {\bf RunScript}
1118
1119 Un exemple d'utilisation de cette directive est donn\'e au chapitre
1120 \ilink{Astuces}{JobNotification} de ce manuel.
1121 Lisez le paragraphe {\bf Run After Failed Job} si vous voulez ex\'ecuter
1122 une commande lorqu'un job se termine avec un statut anormal.
1123
1124 \item [Run After Failed Job = \lt{}command\gt{}]
1125    \index[dir]{Run After Job}
1126    \index[dir]{Directive!Run After Job}
1127    La commande sp\'ecifi\'ee est ex\'ecut\'ee en tant que programme externe apr\`es la fin
1128    du job lorqu'il se termine avec un statut d'erreur. Cette directive est optionnelle.
1129    La cha\^ine {\bf command} doit \^etre le nom d'un programme ou d'un script shell.
1130    Si le code de sortie du programme est non nul, Bacula affiche un mesage d'avertissement
1131    (warning). Avant de soumettre
1132    la commande sp\'ecifi\'ee au syst\`eme d'exploitation, Bacula effectue les
1133    substitutions de caract\`eres d\'ecrites au paragraphe {\bf RunScript}. Notez que
1134    vous pouvez, si vous souhaitez que 
1135    votre programme soit ex\'ecut\'e quel que soit l'issue du job, utiliser une définition 
1136    telle que :
1137
1138 RunScript {
1139    Command = "echo test"
1140    RunsWhen = After
1141    RunsOnFailure = yes
1142    RunsOnClient  = no
1143    RunsOnSuccess = yes    # default, you can drop this line
1144 }
1145
1146    Le chapitre \ilink{Trucs et astuces}{JobNotification} de ce manuel propose un
1147    exemple d'utilisation de cette directive.
1148
1149 \item [ Client Run Before Job = \lt{}command\gt{}]
1150    \index[dir]{Client Run Before Job}
1151     \index[dir]{Directive!Client Run Before Job}
1152    Cette directive est similaire \`a {\bf Run Before Job} except\'e que la
1153    commande est ex\'ecut\'ee sur la machine cliente. Les m\^emes restrictions
1154    s'appliquent aux syt\`emes Unix que celles signal\'ees pour {\bf Run Before Job}.
1155
1156 \item [ Client Run After Job = \lt{}command\gt{}]
1157    \index[dir]{Client Run After Job}
1158    \index[dir]{Directive!Client Run After Job}
1159    Cette directive est similaire \`a {\bf Run After Job} sauf qu'elle est ex\'ecut\'ee 
1160    sur la machine cliente. Veuillez consulter les notes concernant les clients 
1161    Windows dans le paragraphe {\bf RunScript} ci-dessus.
1162
1163 \item [ Rerun Failed Levels = \lt{}yes|no\gt{}]
1164    \index[dir]{Rerun Failed Levels}
1165    \index[dir]{Directive!Rerun Failed Levels}
1166    Si la valeur de cette directive est {\bf yes} ({\bf no} par d\'efaut), et si 
1167    Bacula d\'etecte qu'un job ant\'erieur d'un niveau plus \'elev\'e (Full ou 
1168    diff\'erentiel), alors le job est \'elev\'e au niveau le plus haut. Ceci est 
1169    particuli\`erement utile pour sauvegarder les pc portables qui peuvent 
1170    \^etre fr\'equemment inaccessibles. En effet, apr\`es l'\'echec d'une Full, vous 
1171    souhaiterez probablement que la prochaine sauvegarde soit de niveau  Full 
1172    plut\^ot qu'Incremental ou Diff\'erentiel.
1173
1174 \item [ Spool Data = \lt{}yes|no\gt{}]
1175    \index[dir]{Spool Data}
1176    \index[dir]{Directive!Spool Data}
1177    Si la valeur de cette directive est {\bf yes} ({\bf no} par d\'efaut), le 
1178    Storage Daemon aura pour consigne de stocker les donn\'ees dans un  
1179    fichier spoule sur disque plut\^ot que de les \'ecrire directement sur bande.
1180    Lorsque toutes les donn\'ees sont dans le spoule ou lorsque la taille 
1181    maximale fix\'ee pour le fichier spoule est atteinte, les donn\'ees sont 
1182    d\'echarg\'ees du spoule vers les bandes. Lorsque la valeur de cette directive 
1183    est {\bf yes}, la directive Spool Attributes est aussi automatiquement 
1184    mise \`a la valeur {\bf yes}. L'utilisation de cette fonctionnalit\'e 
1185    pr\'evient les arr\^ets et red\'emarrage incessants lors des incr\'ementales.
1186    Elle ne doit pas \^etre utilis\'ee si vous sauvegardez sur disque.
1187
1188
1189 \item [ Spool Attributes = \lt{}yes|no\gt{}]
1190    \index[dir]{Spool Attributes}
1191     \index[dir]{Directive!Spool Attributes}
1192    \index[dir]{lenteur}
1193    \index[general]{lent}
1194    \index[dir]{Sauvegardes!lent}
1195    \index[general]{Sauvegardes!lent}
1196    La valeur par d\'efaut est {\bf no}, ce qui signifie que le Storage Daemon 
1197    envoie les attributs de fichiers au Director au moment o\`u ils (les fichiers) 
1198    sont ecrits sur la bande. Cependant, si vous souhaitez \'eviter le risque 
1199    de ralentissement d\^u aux mises \`a jour du catalogue, vous pouvez r\'egler  
1200    cette directive \`a {\bf yes}, dans ce cas, le Storage Daemon stockera les 
1201    attributs de fichiers dans un fichier tampon du Working Directory pour ne les 
1202    transmettre au Director qu'\`a la fin de l'\'ecriture sur bande des donn\'ees du job.
1203
1204 \item [ Where = \lt{}directory\gt{}]
1205    \index[dir]{Where}
1206    \index[dir]{Directive!Where}
1207    Cette directive ne concerne que les jobs de type Restauration. Elle permet 
1208    de sp\'ecifier un pr\'efixe au nom du r\'epertoire o\`u tous les fichiers sont 
1209    restaur\'es. Ceci permet de restaurer les fichiers en un emplacement 
1210    diff\'erent de celui o\`u ils ont \'et\'e sauvegard\'es. Si {\bf Where} n'est pas 
1211    renseign\'e, ou si sa valeur est backslash ({\bf /}), les fichiers sont 
1212    restaur\'es \`a leur emplacement d'origine. Par d\'efaut, nous avons donn\'e \`a 
1213    {\bf Where} la valeur {\bf /tmp/bacula-restores} dans les fichiers de 
1214    configuration fournis en exemple, ceci afin d'\'eviter l'\'ecrasement 
1215    accidentel de vos fichiers.
1216
1217 \item [ Replace = \lt{}replace-option\gt{}]
1218    \index[dir]{Replace}
1219    \index[dir]{Directive!Replace}
1220    Cette directive ne concerne que les jobs de type Restauration. Elle pr\'ecise 
1221    la conduite \`a adopter dans l'\'eventualit\'e o\`u Bacula serait conduit \`a restaurer 
1222    un fichier ou un r\'epertoire qui existe d\'ej\`a. Les options suivantes sont 
1223    disponibles :
1224
1225 \begin{description}
1226
1227 \item [always]
1228    \index[dir]{always }
1229    Lorsque le fichier \`a restaurer existe d\'ej\`a, il est supprim\'e et remplac\'e par la 
1230    copie sauvegard\'ee.
1231
1232 \item [ifnewer]
1233    \index[dir]{ifnewer }
1234    Si le fichier sauvegard\'e (sur bande) est plus r\'ecent que le fichier existant, 
1235    le fichier existant est supprim\'e et remplac\'e par la copie sauvegard\'ee.
1236
1237 \item [ifolder]
1238    \index[dir]{ifolder }
1239    Si le fichier sauvegard\'e (sur bande) est plus ancien que le fichier existant,
1240       le fichier existant est supprim\'e et remplac\'e par la copie sauvegard\'ee.
1241
1242 \item [never]
1243    \index[dir]{never }
1244    Si le fichier sauvegard\'e existe d\'ej\`a, Bacula renonce \`a restaurer ce fichier.
1245 \end{description}
1246
1247 \item [ Prefix Links=\lt{}yes|no\gt{}]
1248    \index[dir]{Prefix Links}
1249    \index[dir]{Directive!Prefix Links}
1250    Si la valeur de cette directive est {\bf Yes} et si un pr\'efixe de chemin 
1251    {\bf Where} est sp\'ecifi\'e, alors ce dernier s'applique aussi aux liens 
1252    absolus. La valeur par d\'efaut est {\bf No}. Lorsque cette directive est \`a 
1253    {\bf Yes}, tous les liens absolus seront aussi modifi\'es pour 
1254    pointer vers le nouveau r\'epertoire. En principe, c'est ce qui est souhait\'e : 
1255    l'ensemble du r\'epertoire restaur\'e conserve sa coh\'erence interne. Cependant, 
1256    si vous voulez replacer les fichiers ult\'erieurement \`a leurs emplacements 
1257    d'origine, tous les liens absolus seront bris\'es.
1258
1259 \item [ Maximum Concurrent Jobs = \lt{}number\gt{}]
1260    \index[dir]{Maximum Concurrent Jobs}
1261    \index[dir]{Directive!Maximum Concurrent Jobs}
1262    O\`u \lt{}number\gt{} est le nombre maximum de jobs de la ressource Job courrante 
1263    qui peuvent \^etre ex\'ecut\'es simultan\'ement. Notez que cette directive ne limite 
1264    que les jobs avec le m\^eme nom que la ressource dans laquelle elle 
1265    figure. Toute autre restriction du nombre maximum de jobs simultan\'es, que ce soit au 
1266    niveau du Director, du Client ou de la ressource Storage, s'applique en plus de 
1267    de la limite stipul\'ee ici. La valeur par d\'efaut est 1, mais vous pouvez utiliser 
1268    une valeur plus grande. Nous vous recommandons fortement de lire 
1269    attentivement le paragraphe WARNING sous \ilink{ Maximum Concurrent Jobs}{DirMaxConJobs} 
1270    dans la section concernant la ressource Director.
1271
1272 \item [ Reschedule On Error = \lt{}yes|no\gt{}]
1273    \index[dir]{Reschedule On Error}
1274    \index[dir]{Directive!Reschedule On Error}
1275    Si cette directive est activ\'ee, alors si le job se termine en erreur, il sera 
1276    reprogramm\'e en accord avec les directives {\bf Reschedule Interval} et 
1277    {\bf Reschedule Times}. Si vous supprimez le job, il ne sera pas reprogramm\'e.
1278    La valeur par d\'efaut est {\bf no}.
1279
1280 Cette sp\'ecification peut se r\'ev\'eler utile pour les pc portables ainsi que pour toutes 
1281 les machines qui ne sont pas connect\'ees au r\'eseau en permanence.
1282
1283 \item [ Reschedule Interval = \lt{}time-specification\gt{}]
1284    \index[dir]{Reschedule Interval}
1285     \index[dir]{Directive!Reschedule Interval}
1286    Si cette directive est activ\'ee, alors si le job se termine en erreur, il sera
1287    reprogramm\'e apr\`es l'intervalle de temps stipul\'e par {\bf time-specification}. 
1288    Consultez la section \ilink{ the time specification formats}{Time} du chapitre 
1289    Configurer Bacula pour plus de d\'etails sur les sp\'ecifications de temps. Si 
1290    aucun intervalle n'est sp\'ecifi\'e, le job ne sera pas reprogramm\'e en cas d'erreur.
1291
1292 \item [ Reschedule Times = \lt{}count\gt{}]
1293    \index[dir]{Reschedule Times}
1294    \index[dir]{Directive!Reschedule Times}
1295    Cette directive pr\'ecise le nombre maximal de tentatives d'ex\'ecution du job.
1296    S'il est fix\'e \`a z\'ero (valeur par d\'efaut), le job sera reprogramm\'e 
1297    ind\'efiniment.
1298
1299 \item [Run = \lt{}job-name\gt{}]
1300    \index[dir]{Run}
1301    \index[dir]{Directive!Run}
1302    \index[dir]{Cloner un Job}
1303     La directive Run (\`a ne pas confondre avec l'option Run dans un 
1304     Schedule) vous permet de d\'emarrer ou de cloner des jobs. En utilisant les 
1305     mots-clef de clonage (voir ci dessous), vous pouvez sauvegarder les m\^emes 
1306     donn\'ees (ou presque les m\^emes) vers deux (ou plus) lecteurs en m\^eme temps. 
1307     Le nom de job {\bf job-name} est en principe le m\^eme que celui de la 
1308     ressource job courante (cr\'eant ainsi un clone). Cependant, ce peut \^etre 
1309     n'importe quel nom de job, de sorte qu'un job peut d\'emarrer d'autre jobs li\'es. 
1310     La partie apr\`es le signe \'egale doit \^etre encadr\'ee de double quotes, et peut 
1311     contenir toute cha\^ine ou jeu d'options (surcharges) qui pourraient \^etre 
1312     sp\'ecifi\'ees \`a l'utilisation de la commande Run dans la Console. Par exemple, 
1313     {\bf storage=DDS-4 ...}. De plus, deux mots-clef sp\'eciaux vous permettent de 
1314     cloner le job courant : {\bf level=\%l} et {\bf since=\%s}. le \%l du mot clef 
1315     level permet d'entrer le niveau r\'eel du job courant et le \%s du mot clef since 
1316     permet d'imposer la m\^eme date pour la comparaison que celle utilis\'ee par le job courant.a
1317     Notez que dans le cas du mot-clef since, le \%s doit \^etre encadr\'e de double quotes, 
1318     qui doivent \^etre elles m\^emes pr\'ec\'ed\'ees de barres obliques arri\`eres puisque elles sont 
1319     d\'ej\`a entre double quotes. Par exemple :
1320
1321     \begin{verbatim}
1322        run = "Nightly-backup level=%s since=\"%s\" storage=DDS-4"
1323     \end{verbatim}
1324     Un job clon\'e ne d\'emarrera pas de nouveaux clones, aussi il n'est pas possible de les cascader.
1325     
1326 \label{Priority}
1327 \item [ Priority = \lt{}number\gt{}]
1328    \index[dir]{Priority}
1329    \index[dir]{Directive!Priority}
1330    Cette directive vous permet de contr\^oler l'ordre d'ex\'ecution des jobs en 
1331    sp\'ecifiant un entier positif non nul. Plus grand est ce nombre, plus basse 
1332    est la priorit\'e du job. En supposant que vous n'ex\'ecutiez pas de jobs 
1333    simultan\'es, tous les jobs en file d'attente avec la priorit\'e 1 seront 
1334    ex\'ecut\'es avant ceux avec la priorit\'e 2, et ainsi de suite, sans prise en 
1335    compte de l'ordre original de planification.
1336    
1337    La priorit\'e affecte seulement les jobs en file d'attente, et non les jobs d\'eja 
1338    en cours d'ex\'ecution. Si un ou plusieurs jobs de priorit\'e 2 sont d\'ej\`a en cours 
1339    d'ex\'ecution, et si un nouveau job est programm\'e avec la priorit\'e 1, les jobs 
1340    en cours d'ex\'ecution doivent se terminer pour que le job de priorit\'e 1 puisse 
1341    d\'emarrer.
1342
1343    La priorit\'e par d\'efaut est 10.
1344
1345 Si vous voulez ex\'ecutez plusieurs jobs simultan\'es, ce qui n'est pas recommand\'e, 
1346 vous devriez garder les points suivants \`a l'esprit :
1347
1348 \begin{itemize}
1349 \item Pour ex\'ecuter plusieurs jobs simultan\'es, vous devez ajuster la directive 
1350       {\bf Maximum Concurrent Jobs } en cinq ou six endroits diff\'erents : dans le 
1351       fichier bacula-dir.conf, les ressources {\bf Job}, {\bf Client}, {\bf Storage};
1352       dans le fichier bacula-fd, la ressource {\bf FileDaemon}; et dans le fichier 
1353       bacula-sd.conf, la ressource {\bf Storage}. Si vous omettez l'un d'entre eux, 
1354       les jobs seront ex\'ecut\'es un par un.
1355 \item Bacula n'ex\'ecute pas simultan\'ement les jobs de priorit\'es distinctes. 
1356 \item Si Bacula ex\'ecute un job de priorit\'e 2 et si un nouveau job de priorit\'e 
1357       1 est programm\'e, il attendra la fin du job de priorit\'e 1, m\^eme si les 
1358       param\`etres {\bf Maximum Concurrent Jobs} pourraient permettre l'ex\'ecution 
1359       simultan\'ee de deux jobs.
1360 \item Supposons que Bacula soit en train d'ex\'ecuter un job de priorit\'e 2 et qu'un 
1361       job de priorit\'e 1 soit programm\'e et mis en queue en attente de la fin du 
1362       job de priorit\'e 2. Si vous d\'emarrez alors un second job de priorit\'e 2, le job 
1363       en attente de priorit\'e 1 emp\`echera le nouveau job de priorit\'e 2 de s'ex\'ecuter 
1364       en parall\`ele au premier. Ainsi : tant qu'il reste un job de priorit\'e sup\'erieure 
1365       \`a ex\'ecuter, aucun nouveau job de priorit\'e inf\'erieure ne pourra d\'emarrer, m\^eme si 
1366       les param\`etres {\bf Maximum Concurrent Jobs} devraient le permettre. Ceci permet 
1367       d'assurer que les jobs de priorit\'e sup\'erieure seront ex\'ecut\'es d\`es que possible.
1368 \end{itemize}
1369
1370 Si vous avez plusieurs jobs de priorit\'es diff\'erentes, il est pr\'ef\'erable de ne pas les 
1371 d\'emarrer exactement \`a la m\^eme heure, car Bacula doit les examiner un \`a la fois. Si, 
1372 par hazard, Bacula commence par traiter un job de priorit\'e inf\'erieure, il sera 
1373 ex\'ecut\'e avant votre job de priorit\'e \'elev\'e. Pour \'eviter cette situation, 
1374 d\'emarrez l'un quelconque des jobs de priorit\'e \'elev\'ee quelques secondes avant 
1375 ceux de basse priorit\'e. Ainsi, vous serez assur\'e que Bacula examine les jobs 
1376 dans l'ordre voulu et que votre sch\'ema de priorit\'es sera respect\'e.
1377
1378 \label{WritePartAfterJob}
1379
1380 \item [ Write Part After Job = \lt{}yes|no\gt{}]
1381    \index[sd]{Write Part After Job}
1382    \index[dir]{Directive!Write Part After Job}
1383 Cette directive est impl\'ement\'ee depuis la version 1.37.
1384 Si la valeur de cette directive est {\bf yes} ({\bf no} par d\'efaut), un nouveau 
1385 "fichier partition" (ndt : part file) sera cr\'e\'e apr\`es la fin du job. 
1386
1387 Cette directive devrait \^etre activ\'ee lors de l'\'ecriture sur des p\'eriph\'erique 
1388 qui requi\`erent un montage (par exemple, les DVDs), afin de vous assurer que 
1389 le fichier partition courant, celui qui contient les donn\'ees de ce job, est 
1390 envoy\'e vers le p\'eriph\'erique, et qu'aucune donn\'ee n'est laiss\'ee dans le fichier 
1391 temporaire sur le disque dur. Quoi qu'il en soit, avec certains supports tels 
1392 que les DVD+R et DVD-R, beaucoup d'espace (environ 10 Mb) est perdu \`a chaque fois 
1393 qu'un fichier partition est \'ecrit. Aussi, si vous ex\'ecutez plusieurs jobs \`a la 
1394 suite, vous devriez r\'egler cette directive \`a {\bf no} pour tous ces jobs sauf 
1395 le dernier, pour \'eviter un gaspillage important d'espace, tout en ayant la certitude 
1396 que les donn\'ees sont bien \'ecrites sur le m\'edium lorsque tous les jobs sont 
1397 achev\'es.
1398
1399 Cette directive est ignor\'ee avec les bandes et les p\'eriph\'eriques FIFO.
1400 \end{description}
1401
1402 Voici un exemple de d\'efinition de ressource Job valide.
1403
1404 \footnotesize
1405 \begin{verbatim}
1406 Job {
1407   Name = "Minou"
1408   Type = Backup
1409   Level = Incremental                 # default
1410   Client = Minou
1411   FileSet="Minou Full Set"
1412   Storage = DLTDrive
1413   Pool = Default
1414   Schedule = "MinouWeeklyCycle"
1415   Messages = Standard
1416 }
1417 \end{verbatim}
1418 \normalsize
1419
1420 \subsection*{La ressource JobDefs}
1421 \label{JobDefsResource}
1422 \index[general]{JobDefs Resource }
1423 \index[general]{Resource!JobDefs }
1424 \addcontentsline{toc}{subsection}{JobDefs Resource}
1425
1426 La ressource Jobdefs admet toutes les directives qui peuvent appara\^itre dans 
1427 une ressource Job. Une ressource Jobdefs ne cr\'e\'e en aucun cas un Job, son r\^ole 
1428 est de pouvoir \^etre d\'esign\'ee dans une ressource Job comme un ensemble de 
1429 param\`etres par d\'efaut. Ceci permet de d\'efinir plusieurs jobs similaires avec 
1430 concision, en ne mentionnant, pour chaque job, que les diff\'erences avec les 
1431 valeurs par d\'efaut sp\'ecifi\'ees dans la ressource Jobdefs.
1432
1433 \subsection*{La ressource Schedule}
1434 \label{ScheduleResource}
1435 \index[general]{Resource!Schedule }
1436 \index[general]{Schedule Resource }
1437 \addcontentsline{toc}{subsection}{Schedule Resource}
1438
1439 La ressource Schedule offre un moyen pour planifier automatiquement un Job, 
1440 mais aussi la possibilit\'e de surcharger les param\`etres par d\'efaut de Level, 
1441 Pool, Storage, et Messages ressources. Si une ressource Schedule n'est pas 
1442 sp\'ecifi\'ee dans un job, ce job ne peut \^etre ex\'ecut\'e que manuellement. 
1443 En g\'en\'eral, vous sp\'ecifierez une action et le moment de son lancement.
1444
1445 \begin{description}
1446
1447 \item [Schedule]
1448    \index[dir]{Schedule}
1449    \index[dir]{Directive!Schedule}
1450    D\'ebut des directives Schedule. La ressource {\bf Schedule} n'est pas requise, 
1451    mais il vous en faudra au moins une si vous souhaitez que vos jobs soient 
1452    ex\'ecut\'es automatiquement.
1453    
1454 \item [Name = \lt{}name\gt{}]
1455    \index[dir]{Name}
1456    \index[dir]{Directive!Name}
1457    Le nom du Schedule d\'efini. Cette directive est requise.
1458
1459 \item [Run = \lt{}Job-overrides\gt{} \lt{}Date-time-specification\gt{}  ]
1460    \index[dir]{Run}
1461    \index[dir]{Directive!Run}
1462    La directive Run d\'efinit quand un job doit \^etre ex\'ecut\'e, et les \'eventuelles 
1463    surcharges \`a appliquer. Il est possible de sp\'ecifier plusieurs directives 
1464    {\bf run} au sein d'une ressource {\bf Schedule}, elles seront toutes 
1465    appliqu\'ees. Si vous avez deux directives {\bf Run} qui d\'emarrent au m\^eme 
1466    moment, deux jobs seront lanc\'es simultan\'ement (en fait, avec une seconde d'\'ecart).
1467    
1468
1469 La directive {\bf Job-overrides} permet d'outrepasser les sp\'ecifications de 
1470 Level, Storage, Messages et Pool \'ecrites dans la ressource Job. De plus, 
1471 les sp\'ecifications FullPool, DifferentialPool et IncrementalPool permettent 
1472 de passer outre les sp\'ecification de Pool, en accord avec le niveau (level) 
1473 effectif d'ex\'ecution du job.
1474
1475 L'utilisation de surcharges permet de peaufiner le param\'etrage d'un job 
1476 particulier. Par exemple, vous pourriez surcharger une sp\'ecification 
1477 Messages qui enverrait vos logs de backups vers un fichier, de fa\\ 3on \`a ce qu'ils 
1478 vous soient envoy\'es par mails pour les Fulls hebdomadaires ou mensuelles.
1479
1480 Les directives {\bf Job-overrides} sont sp\'ecifi\'ees en tant que {\bf mot-clef=valeur} 
1481 o\`u le mot-clef est l'un des suivants : Level, Storage,  Messages, Pool, FullPool, 
1482 DifferentialPool ou IncrementalPool, et la {\bf valeur} est d\'efinie selon le format 
1483 adapt\'e \`a la directive. Vous pouvez sp\'ecifier plusieurs surcharges {\bf Job-overrides} 
1484 en une seule directive {\bf Run} en les s\'eparant par des espaces ou des 
1485 trailing comas (traduction ?). Par exemple :
1486
1487 \begin{description}
1488
1489 \item [Level=Full]
1490    \index[dir]{Level}
1491    \index[dir]{Directive!Level}
1492    Tous les fichiers du FileSet qu'ils aient ou non chang\'e.
1493
1494 \item [Level=Incremental]
1495    \index[dir]{Level}
1496    \index[dir]{Directive!Level}
1497    Tous les fichiers qui ont chang\'e depuis la derni\`ere sauvegarde.
1498
1499 \item [Pool=Weekly]
1500    \index[dir]{Pool}
1501    \index[dir]{Directive!Pool}
1502    Sp\'ecifie l'utilisation du Pool nomm\'e {\bf Weekly}.
1503
1504 \item [Storage=DLT\_Drive]
1505    \index[dir]{Storage }
1506    \index[dir]{Directive!Storage}
1507    Sp\'ecifie l'utilisation du lecteur {\bf DLT\_Drive} pour p\'eriph\'erique de stockage.
1508
1509 \item [Messages=Verbose]
1510    \index[dir]{Messages }
1511    \index[dir]{Directive!Messages}
1512    Sp\'ecifie l'utilisation de la ressource messages {\bf Verbose} pour le job.
1513
1514 \item [FullPool=Full]
1515    \index[dir]{FullPool}
1516    \index[dir]{Directive!FullPool}
1517
1518    Sp\'ecifie l'utilisation du Pool nomm\'e {\bf Full} si le job est une sauvegarde Full, 
1519    ou s'il a \'et\'e \'elev\'e en Full bien qu'ayant \'et\'e lanc\'e en tant que diff\'erentiel ou 
1520    incr\'emental.
1521
1522 \item [DifferentialPool=Differential]
1523    \index[dir]{DifferentialPool }
1524     \index[dir]{Directive!DifferentialPool}
1525     Sp\'ecifie l'utilisation du Pool nomm\'e {\bf Differential} si le job est une 
1526     sauvegarde diff\'erentielle.
1527
1528 \item [IncrementalPool=Incremental]
1529    \index[dir]{IncrementalPool}
1530    \index[dir]{Directive!IncrementalPool}
1531    Sp\'ecifie l'utilisation du Pool nomm\'e {\bf Incremental} si le job est une 
1532    sauvegarde incr\'ementale.
1533
1534 \item [SpoolData=yes|no]
1535    \index[dir]{SpoolData}
1536    \index[dir]{Directive!SpoolData}
1537    Indique \`a Bacula d'ordonner au Storage Daemon de placer les donn\'ees sur un 
1538    spool disque avant de les envoyer vers les cartouches.
1539
1540 \item [WritePartAfterJob=yes|no]
1541    \index[dir]{WritePartAfterJob}
1542    \index[dir]{Directive!WritePartAfterJob}
1543    Indique \`a Bacula d'ordonner au Storage Daemon d'\'ecrire le fichier partition 
1544    courant vers le p\'eriph\'erique lorsque le job s'ach\`eve (voir 
1545 \ilink{la directive Write Part After Job dans la ressource Job}{WritePartAfterJob}).  
1546 \end{description}
1547
1548 {\bf Date-time-specification} D\'etermine la planification d'ex\'ecution du job.
1549 La sp\'ecification est une r\'ep\'etition, et, par d\'efaut, Bacula est param\'etr\'e 
1550 pour ex\'ecuter un job au d\'ebut de chaque heure de chaque jour de chaque semaine 
1551 de chaque mois de chaque ann\'ee. Ce n'est probablement pas ce que vous souhaitez, 
1552 aussi vous devez pr\'eciser ou limiter les moments o\`u vous souhaitez voir vos jobs 
1553 ex\'ecut\'es. Toute sp\'ecification est suppos\'ee cyclique et servira \`a limiter le 
1554 cycle par d\'efaut. Ceci se fait en sp\'ecifiant des masques ou des horaires,  
1555 jours de la semaine, jours du mois, semaines du mois, semaines de l'ann\'ee et 
1556 mois de l'ann\'ee o\`u vous voulez ex\'ecuter le job. En combinant ces possibilit\'es, 
1557 vous pouvez d\'efinir une planification qui se r\'ep\`ete \`a presque n'importe quelle 
1558 fr\'equence.
1559
1560 Concr\`etement, vous devez d\'efinir les {\bf mois}, {\bf jour}, {\bf heure} et 
1561 {\bf minute} o\`u le job est \`a ex\'ecuter. Parmis ces quatre objets, le {\bf jour} 
1562 est particulier en ce qu'il peut sp\'ecifier un jour du mois (1,2,...31) ou de la 
1563 semaine (Monday, Tuesday,...Sunday). Enfin, vous pouvez aussi sp\'ecifier un 
1564 jour de la semaine pour restreindre la planification \`a la premi\`ere, deuxi\`eme, 
1565 troisi\`eme, quatri\`eme ou cinqui\`eme semaine du mois.
1566
1567 Par exemple, si vous sp\'ecifiez seulement un jour de la semaine, disons {\bf Mardi}, 
1568 le job sera ex\'ecut\'e toutes les heures de chaque mardi de chaque mois. La raison 
1569 en est que les param\`etres {\bf Mois} et {\bf Heure} sont rest\'es \`a leurs valeurs 
1570 par d\'efaut : chaque mois et chaque heure.
1571
1572 Notez que, par d\'efaut, sans autre sp\'ecification, votre job s'ex\'ecutera au 
1573 d\'ebut de chaque heure. Si vous souhaitez que votre job s'ex\'ecute plus souvent 
1574 qu'une fois par heure, il vous faudra d\'efinir plusieurs sp\'ecifications {\bf run} 
1575 avec pour chacune une minut diff\'erente.
1576
1577 Les dates et horaires d'ex\'ecutions des jobs peuvent \^etre sp\'ecifi\'es comme suit, 
1578 en pseudo-BNF :
1579
1580 \footnotesize
1581 \begin{verbatim}
1582 <void-keyword>    = on
1583 <at-keyword>      = at
1584 <week-keyword>    = 1st | 2nd | 3rd | 4th | 5th | first |
1585                     second | third | forth | fifth
1586 <wday-keyword>    = sun | mon | tue | wed | thu | fri | sat |
1587                     sunday | monday | tuesday | wednesday |
1588                     thursday | friday | saturday
1589 <week-of-year-keyword> = w00 | w01 | ... w52 | w53
1590 <month-keyword>   = jan | feb | mar | apr | may | jun | jul |
1591                     aug | sep | oct | nov | dec | january |
1592                     february | ... | december
1593 <daily-keyword>   = daily
1594 <weekly-keyword>  = weekly
1595 <monthly-keyword> = monthly
1596 <hourly-keyword>  = hourly
1597 <digit>           = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0
1598 <number>          = <digit> | <digit><number>
1599 <12hour>          = 0 | 1 | 2 | ... 12
1600 <hour>            = 0 | 1 | 2 | ... 23
1601 <minute>          = 0 | 1 | 2 | ... 59
1602 <day>             = 1 | 2 | ... 31
1603 <time>            = <hour>:<minute> |
1604                     <12hour>:<minute>am |
1605                     <12hour>:<minute>pm
1606 <time-spec>       = <at-keyword> <time> |
1607                     <hourly-keyword>
1608 <date-keyword>    = <void-keyword>  <weekly-keyword>
1609 <day-range>       = <day>-<day>
1610 <month-range>     = <month-keyword>-<month-keyword>
1611 <wday-range>      = <wday-keyword>-<wday-keyword>
1612 <range>           = <day-range> | <month-range> |
1613                           <wday-range>
1614 <date>            = <date-keyword> | <day> | <range>
1615 <date-spec>       = <date> | <date-spec>
1616 <day-spec>        = <day> | <wday-keyword> |
1617                     <day-range> | <wday-range> |
1618                     <week-keyword> <wday-keyword>
1619                     <day-range> | <wday-range> |
1620                     <daily-keyword>
1621 <month-spec>      = <month-keyword> | <month-range> |
1622                     <monthly-keyword>
1623 <date-time-spec>  = <month-spec> <day-spec> <time-spec>
1624 \end{verbatim}
1625 \normalsize
1626
1627 \end{description}
1628
1629 Notez que les sp\'ecifications de semaine et d'ann\'ee suivent les d\'efinitions ISO 
1630 standard de semaine et ann\'ee, o\`u la semaine 1 est la semaine qui contient le 
1631 premier jeudi de l'ann\'ee, ou alternativement, la semaine qui contient le 
1632 quatri\`eme jour de janvier. Les semaines sont num\'erot\'ees w01 \`a w53. w00 est 
1633 pour Bacula la semaine qui pr\'ec\`ede la premi\`ere semaine ISO (c'est \`a dire celle 
1634 qui contient les quelques premiers jours de l'ann\'ee si aucun n'est un jeudi). 
1635 w00 n'est pas d\'efinie dans les sp\'ecifications ISO. Une semaine commence le Lundi 
1636 et se termine le Dimanche.
1637
1638 Voici un exemple de ressource Schedule nomm\'ee {\bf WeeklyCycle} qui ex\'ecute 
1639 un job de niveau Full chaque Dimanche \`a 1h05 et un job de niveau incr\'emental 
1640 du Lundi au Samedi \`a 1h05 :
1641
1642 \footnotesize
1643 \begin{verbatim}
1644 Schedule {
1645   Name = "WeeklyCycle"
1646   Run = Level=Full sun at 1:05
1647   Run = Level=Incremental mon-sat at 1:05
1648 }
1649 \end{verbatim}
1650 \normalsize
1651
1652 Voici un exemple de cycle mensuel :
1653
1654 \footnotesize
1655 \begin{verbatim}
1656 Schedule {
1657   Name = "MonthlyCycle"
1658   Run = Level=Full Pool=Monthly 1st sun at 1:05
1659   Run = Level=Differential 2nd-5th sun at 1:05
1660   Run = Level=Incremental Pool=Daily mon-sat at 1:05
1661 }
1662 \end{verbatim}
1663 \normalsize
1664
1665 Le premier de chaque mois :
1666
1667 \footnotesize
1668 \begin{verbatim}
1669 Schedule {
1670   Name = "First"
1671   Run = Level=Full on 1 at 1:05
1672   Run = Level=Incremental on 2-31 at 1:05
1673 }
1674 \end{verbatim}
1675 \normalsize
1676
1677 Toutes les dix minutes :
1678
1679 \footnotesize
1680 \begin{verbatim}
1681 Schedule {
1682   Name = "TenMinutes"
1683   Run = Level=Full hourly at 0:05
1684   Run = Level=Full hourly at 0:15
1685   Run = Level=Full hourly at 0:25
1686   Run = Level=Full hourly at 0:35
1687   Run = Level=Full hourly at 0:45
1688   Run = Level=Full hourly at 0:55
1689 }
1690 \end{verbatim}
1691 \normalsize
1692
1693 \subsection*{Notes techniques sur les Schedules}
1694 \index[general]{Schedules!Technical Notes on }
1695 \index[general]{Technical Notes on Schedules }
1696 \addcontentsline{toc}{subsection}{Notes techniques sur les Schedules}
1697 Au niveau interne, Bacula consid\`ere un schedule en tant que bit masque. 
1698 Il y a six masques et un champ minute pour chaque schedule. Les masques sont 
1699 heure, jour du mois (mday), jour de la semaine (wday), semaine du mois (wom), 
1700 et semaine de l'ann\'ee (woy). Le schedule est initialis\'e de fa\\ 3on \`a avoir les 
1701 bits de chacun de ces masques positionn\'es, ce qui signifie qu'au d\'ebut de chaque 
1702 heure, le job sera ex\'ecut\'e. Quand vous sp\'ecifiez un mois pour la premi\`ere 
1703 fois, le masque est effac\'e et le bit correspondant au mois s\'electionn\'e est 
1704 ajout\'e au masque. Si vous sp\'ecifiez un second mois, le bit correspondant 
1705 est aussi ajout\'e. Ainsi, lorsque Bacula examine le masque pour voir si 
1706 les bits plac\'es correspondent \`a la date courante, votre job ne sera ex\'ecut\'e 
1707 que pendant les deux mois que vous avez sp\'ecifi\'es. De m\^eme, si vous sp\'ecifiez 
1708 un horaire, le masque Heure est effac\'e et le bit correspondant \`a l'heure que 
1709 vous avez sp\'ecifi\'ee est plac\'e, les minutes sont quant \`a elles stock\'ees dans le 
1710 champ Minutes.
1711
1712 Pour chacun de vos schedules, vous pouvez visualiser le masque associ\'e 
1713 grâce \`a la commande  {\bf show schedules} du programme Console. 
1714 Notez que le bit masque est "zero based", et que Dimanche est le premier 
1715 jour de la semaine (bit 0)
1716
1717 \subsection*{La ressource FileSet }
1718 \label{FileSetResource}
1719 \index[general]{Resource!FileSet }
1720 \index[general]{FileSet Resource }
1721 \addcontentsline{toc}{subsection}{FileSet Resource}
1722
1723 La ressource FileSet d\'efinit les fichiers \`a inclure dans une sauvegarde. Pour 
1724 chaque job de type sauvegarde, il est n\'ecessaire de d\'efinir au moins une 
1725 ressource {\bf FileSet}. Un {\bf FileSet} consiste en une liste de fichiers 
1726 ou r\'epertoires \`a inclure, une liste de fichiers ou r\'epertoires \`a exclure, et 
1727 diverses options de sauvegardes telles que compression, chiffrement et 
1728 signatures qui doivent \^etre appliqu\'ees \`a chaque fichier.
1729
1730 Toute modification de la liste des fichiers inclus provoque la cr\'eation par Bacula 
1731 d'un nouveau FileSet (d\'efini par le nom et la somme de contr\^ole MD5 du contenu 
1732 du paragraphe Include). Chaque fois qu'un nouveau FileSet est cr\'e\'e, Bacula 
1733 s'assure que la premi\`ere sauvegarde est une Full.
1734
1735 \begin{description}
1736
1737 \item [FileSet]
1738    \index[dir]{FileSet }
1739    D\'ebut de la ressource FileSet. Au moins une ressource {\bf FileSet} doit 
1740    \^etre d\'efinie.
1741
1742 \item [Name = \lt{}name\gt{}]
1743    \index[dir]{Name  }
1744    Le nom de la ressource FileSet. Cette directive est requise.
1745
1746 \item [Ignore FileSet Changes = \lt{}yes|no\gt{}]
1747    \index[dir]{Ignore FileSet Changes  }
1748 Si cette directive est activ\'ee ({\bf yes}), toute modification des listes 
1749 d'inclusion ou d'exclusion du FileSet sera ignor\'ee et Bacula n'\'el\`evera 
1750 pas la prochaine sauvegarde en Full. La valeur par d\'efaut est {\bf no}, ainsi, 
1751 si vous modifiez une des listes d'inclusion ou d'exclusion du FileSet, Bacula 
1752 forcera une sauvegarde Full pour assurer que tout soit bien sauvegard\'e 
1753 proprement. Il n'est pas recommand\'e d'activer cette directive. Cette directive 
1754 est disponible \`a partir de Bacula 1.35.4.
1755
1756 \item [{Include \ \{ [ Options \{\lt{}file-options\gt{}\} ...]
1757    \lt{}file-list\gt{} \} 
1758    }]
1759 \index[dir]{Include \  \{ [ Options \{\lt{}file-options\gt{}\} ...]
1760 \lt{}file-list\gt{} \}  }
1761
1762 \item [Options \ \{ \lt{}file-options\gt{} \} 
1763    ]
1764    \index[dir]{Options \  \{ \lt{}file-options\gt{} \}  }
1765
1766 \item [Exclude \ \{ \lt{}file-list\gt{} \}]
1767    \index[dir]{Exclude \  \{ \lt{}file-list\gt{} \} }
1768 \end{description}
1769 La ressource Include doit contenir une liste de r\'epertoires et/ou fichiers 
1770 \`a traiter lors de la sauvegarde. Normalement, tous les fichiers trouv\'es dans 
1771 tous les sous-r\'epertoires de tout r\'epertoire de la liste d'inclusion des 
1772 fichiers seront sauvegard\'es. La ressource Include peut aussi comporter une 
1773 ou plusieurs ressources Options qui sp\'ecifient des param\`etres tels que 
1774 la compression \`a appliquer \`a tous les fichiers ou \`a n'importe quel sous ensemble 
1775 de fichiers \`a sauvegarder.
1776
1777 Le nombre de ressources {\bf Include} par FileSet n'est pas limit\'e, chacune ayant 
1778 sa propre liste de r\'epertoires et/ou fichiers \`a sauvegarder et ses propres 
1779 param\`etres d\'efinis par une ou plusieurs ressources Options. La liste de fichiers 
1780 {\bf file-list} consiste en un nom de fichier ou r\'epertoire par ligne.
1781 Les noms de r\'epertoire doivent \^etre sp\'ecifi\'es sans slash final.
1782
1783 Vous devez toujours sp\'ecifier des chemins absolus pour tout fichier ou 
1784 r\'epertoire que vous placez dans un FileSet. De plus, sur les machines Windows, 
1785 vous devez {\bf toujours} pr\'efixer le r\'epertoire ou nom de fichier d'une 
1786 sp\'ecification de disque (par exemple : {\bf c:/xxx}) en utilisant le s\'eparateur 
1787 de r\'epertoire Unix (slash /).
1788
1789 Le comportement par d\'efaut de Bacula en ce qui concerne le traitement des 
1790 r\'epertoires est de descendre r\'ecursivement dans chaque r\'epertoire 
1791 et de sauvegarder tous les fichiers et sous-r\'epertoires. Par d\'efaut, Bacula 
1792 ne suit pas les syst\`emes de fichiers transverses (en terminologie Unix, les 
1793 points de montage). Ceci signifie que si vous sp\'ecifiez la partition racine 
1794 ( par exemple /), Bacula sauvegardera seulement la partition racine, et aucun 
1795 des syst\`emes de fichiers mont\'es. De fa\\ 3on analogue, sur les syst\`emes Windows, 
1796 vous devez expliciter chacun des disques que vous souhaitez sauvegarder (par 
1797 exemple {\bf c:/} et {\bf d:/}...). De plus, au moins pour les syst\`emes 
1798 Windows, il sera la plupart du temps n\'ecessaire d'encadrer chaque sp\'ecification 
1799 de doubles quotes, particuli\`erement si le nom du r\'epertoire (ou du fichier) 
1800 comporte des espaces. La commande {\bf df} des syst\`emes Unix vous fournira 
1801 la liste des r\'epertoires qu'il vous faudra sp\'ecifier pour tout sauvegarder.
1802 Voyez ci-dessous pour un exemple.
1803
1804 Soyez attentif \`a ne pas inclure un r\'epertoire deux fois, car il serait 
1805 sauvegard\'e deux fois, ce qui gaspillerait l'espace sur votre p\'eriph\'erique 
1806 de sauvegarde. Cette erreur est facile \`a commettre. Par exemple :
1807
1808 \footnotesize
1809 \begin{verbatim}
1810   Include {
1811     File = /
1812     File = /usr
1813     Options { compression=GZIP }
1814   }
1815 \end{verbatim}
1816 \normalsize
1817
1818 Sur un syst\`eme Unix o\`u /usr est un sous r\'epertoire (plut\^ot qu'un syst\`eme de 
1819 fichiers mont\'e), cette ressource Include sauvegarderait /usr deux fois.
1820 Dans ce cas, sur les versions ant\'erieures \`a 1.32f-5-09Mar04, en raison 
1821 d'un bug, vous ne pourriez restaurer les fichiers li\'es physiquement sauvegard\'es 
1822 deux fois.
1823
1824 Si vous avez utilis\'e des versions de Bacula ant\'erieures \`a 1.34.3, vous noterez 
1825 ces modifications dans la syntaxe des FileSets :
1826
1827 \begin{enumerate}
1828 \item il n'y a pas de signe \'egale (=) apr\`es le "include" et avant l'accolade 
1829 ouvrante (\{) ;
1830 \item chaque r\'epertoire (ou nom de fichier) \`a sauvegarder est pr\'ec\'ed\'e de 
1831 "{\bf File =}" ;
1832 \item les options qui apparaissaient pr\'ec\'edemmant sur la ligne Include doivent 
1833 d\'esormais \^etre sp\'ecifi\'ees dans leur propre ressource Options.
1834 \end{enumerate}
1835
1836 La ressource Options est optionnelle, mais lorsqu'elle est sp\'ecifi\'ee, elle doit 
1837 contenir une liste de lignes "{\bf mot-clef=valeur}" relatives aux options \`a appliquer 
1838 \`a la liste de fichiers/r\'epertoires. Plusieurs ressources Options peuvent \^etre 
1839 sp\'ecifi\'ees l'une apr\`es l'autre. Lorsqu'un fichier se trouve dans un dossier 
1840 sp\'ecifi\'e, les options sont appliqu\'ees au nom de fichier pour savoir s'il doit 
1841 \^etre sauvegard\'e, et comment. Les ressources Options sont appliqu\'ees dans l'ordre 
1842 o\`u elles appara\^issent dans le FileSet jusqu'\`a ce qu'il y en ait une qui corresponde. 
1843 Une ressource Options qui ne contient pas de directive  {\bf wild} (sp\'ecification 
1844 de caract\`ere joker, voir ci-dessous) est consid\'er\'ee comme concernant tous les 
1845 fichiers. Il est important de bien comprendre ceci, car une fois que Bacula a 
1846 d\'etermin\'e que des Options s'appliquent \`a un fichier donn\'e, ce fichier sera 
1847 sauvegard\'e sans tenir compte d'aucunes des \'eventuelles autres ressources Options. 
1848 Ceci signifie que toute ressource Options avec caract\`eres joker doit appara\^itre 
1849 avant une ressource Options sans caract\`eres joker. 
1850
1851 Si, pour quelque raison, Bacula applique toutes les ressources Options \`a un 
1852 fichier sans qu'aucune ne corresponde (en g\'en\'eral \`a cause de caract\`eres joker 
1853 qui ne correspondent pas), par d\'efaut Bacula sauvegardera le fichier. Ceci est 
1854 assez logique si vous consid\'erez la situation sans options, o\`u vous souhaitez 
1855 que tout soit sauvegard\'e. De plus, dans le cas ou aucune correspondance n'est  
1856 trouv\'ee, Bacula utilise les options de la derni\`ere ressource Options. Par cons\'equent, 
1857 si vous souhaitez d\'efinir un jeu d'options par d\'efaut, vous devriez les placer 
1858 dans la derni\`ere ressource Options.
1859
1860 Les directives disponibles pour les ressources Options sont les suivantes :
1861
1862 \begin{description}
1863    \item [compression=GZIP]
1864    \index[dir]{compression }
1865    Tous les fichiers sauvegard\'es sont compress\'es (NDT : compression logicielle, 
1866    par opposition \`a la compression mat\'erielle effectu\'ee par le lecteur) au 
1867    format GNU ZIP. Chaque fichier est compress\'e individuellement par le File 
1868    Daemon. S'il y a un probl\`eme \`a la lecture d'une cartouche au niveau de 
1869    l'enregistrement d'un fichier, il affectera tout au plus ce fichier et aucun 
1870    des autres fichiers de la cartouche. La plupart du temps, cette option n'est 
1871    pas n\'ecessaire si vous avez un lecteur de bandes moderne qui applique sa 
1872    propre compression. En fait, si vous activez les deux compressions 
1873    simultan\'ement, il se peut que vos fichiers occupent plus d'espace sur le 
1874    volume qu'avec une seule.
1875
1876    La compression logicielle est particuli\`erement int\'eressante lorsque vous 
1877    sauvegardez sur disque, et peut \^etre d'un grand secours si vous avez un 
1878    ordinateur rapide mais un r\'eseau lent.
1879
1880    La sp\'ecification {\bf GZIP}  utilise le niveau de compression six par d\'efaut 
1881    (i.e. {\bf GZIP} est \'equivalent \`a {\bf GZIP6}). Si vous voulez utiliser un 
1882    niveau diff\'erent (de 1 \`a 9), vous pouvez le sp\'ecifier en ajoutant le num\'ero 
1883    du niveau voulu \`a la fin du mot {\bf GZIP}, sans espace. Ainsi, {\bf compression=GZIP1} 
1884    d\'esigne la compression la moins efficace, mais l'algorithme le plus rapide, 
1885    tandis que {\bf compression=GZIP9} est le niveau de compression le plus \'elev\'e, 
1886    mais requi\`ere plus de puissance de calcul. Selon la documentation GZIP, les 
1887    niveaux de compression sup\'erieurs \`a 6 ne procurent g\'en\'eralement que peu 
1888    de compression suppl\'ementaire alors qu'ils sont plut\^ot exigeants en puissance 
1889    de calcul.
1890
1891    \item [signature=SHA1]
1892    \index[dir]{signature }
1893    La signature SHA1 est calcul\'ee pour tous les fichiers sauvegard\'es. 
1894    L'algorithme SHA1 est 
1895    r\'eput\'e plus lent que MD5, mais bien meilleur d'un point de vue cryptographique 
1896    (i.e. beaucoup moins de collisions et probabilit\'e de piratage bien inf\'erieure.). 
1897    Nous recommandons fortement d'activer l'une ou l'autre des options SHA1 ou MD5 
1898    par d\'efaut pour tous les fichiers. Notez que seule l'une de ces deux options 
1899    peut \^etre activ\'ee pour tout fichier.
1900    
1901    \item [signature=MD5]
1902    \index[dir]{signature }
1903    La signature MD5 est calcul\'ee pour tous les fichiers sauvegard\'es. Activer cette 
1904    option r\'esulte en une charge CPU suppl\'ementaire de l'ordre de 5\% pour chaque 
1905    fichier sauvegard\'e. D'autre part, la signature MD5 ajoute 16 octets 
1906    suppl\'ementaires au catalogue pour chaque fichier sauvegard\'e. Nous recommandons 
1907    fortement d'activer l'une ou l'autre des options SHA1 ou MD5 par d\'efaut pour tous
1908    les fichiers. 
1909
1910    \item [verify=\lt{}options\gt{}]
1911    \index[dir]{verify }
1912    Les "options-lettres" sont utilis\'ees lors de l'ex\'ecution de jobs de type {\bf Verify}
1913    de niveau {\bf Level=Catalog} et de niveau {\bf Level=DiskToCatalog}. Les options
1914    peuvent \^etre n'importe quelle combinaison de ces lettres.
1915
1916 \begin{description}
1917
1918 \item [i]
1919    compare les inodes  
1920
1921 \item [p]
1922    compare bits de permissions  
1923
1924 \item [n]
1925    compare le nombre de liens  
1926
1927 \item [u]
1928    compare les user ids  
1929
1930 \item [g]
1931    compare les group ids  
1932
1933 \item [s]
1934    compare les tailles  
1935
1936 \item [a]
1937    compare les date d'acc\`es (access time)  
1938
1939 \item [m]
1940    compare les dates de modification (st\_mtime)  
1941
1942 \item [c]
1943    compare les dates de changement (st\_ctime)  
1944
1945 \item [s]
1946    signale tout fichier dont la taille a diminu\'e  
1947
1948 \item [5]
1949    compare les signatures MD5  
1950
1951 \item [1]
1952    compare les signatures SHA1  
1953 \end{description}
1954
1955 Le jeu d'options {\bf pins5} (qui compare les bits de permissions, les inodes, 
1956 les nombres de liens, la taille des fichiers et les signatures MD5) est tr\`es 
1957 utile pour des jobs de type verify de niveaux {\bf Level=Catalog} ou 
1958 {\bf Level=DiskToCatalog}.
1959
1960 \item [{\bf onefs=yes|no}]
1961    \index[dir]{onefs }
1962    Si cette option est activ\'ee (valeur {\bf yes}, par d\'efaut), Bacula ne 
1963    changera pas de syst\`eme de fichiers. Autrement dit, il ne sauvegardera pas 
1964    les syst\`emes de fichiers mont\'es sur des sous-r\'epertoires. Si vous souhaitez 
1965    sauvegarder plusieurs syst\`emes de fichiers, vous pouvez les \'enum\'erer 
1966    explicitement. Une autre possibilit\'e consiste \`a d\'esactiver l'option onefs 
1967    ({\bf onefs=no}) afin que Bacula sauvegarde les syst\`emes de fichiers mont\'es 
1968    trouv\'es dans les r\'epertoires list\'es dans votre FileSet. Ainsi, si vous avez 
1969    des syst\`emes de fichiers NFS ou Samba mont\'es sur un r\'epertoire list\'e dans le 
1970    FileSet, ils seront aussi sauvegard\'es. En principe, il est pr\'ef\'erable 
1971    d'activer cette option et de nommer explicitement chaque syst\`eme de fichier 
1972    que vous voulez sauvegarder. Ce nommage explicite \'evite le risque de tomber 
1973    dans une boucle infinie de syst\`emes de fichiers. Voyez l'exemple ci-dessous 
1974    pour plus de d\'etails.
1975
1976 \label{portable}
1977
1978 \item [{\bf portable=yes|no}]
1979    \index[dir]{portable }
1980    Si cette option est activ\'ee (la valeur par d\'efaut est {\bf no}), le File Daemon 
1981    sauvegarde les fichiers win32 dans un format portable, mais tous les attributs 
1982    de fichiers win32 ne seront pas sauvegard\'es ni restaurables. La valeur par 
1983    d\'efaut est {\bf no}, ce qui signifie que sur les syst\`emes Win32, les donn\'ees 
1984    sont sauvegard\'ees en utilisant les appels Windows API et sur les WinNT/2k/XP, 
1985    tous les attributs de s\'ecurit\'e et de propri\'et\'e sont correctement sauvegard\'es 
1986    et restaur\'es. Cependant, ce format n'est pas portable aux autres syst\`emes 
1987    -- par exemple UNIX, Win95/98/Me. Lors de la sauvegarde de syst\`emes Unix, 
1988    cette option est ignor\'ee, et \`a moins que vous n'ayez un besoin sp\'ecifique de 
1989    portabilit\'e de vos sauvegardes, nous recommandons d'accepter la valeur par 
1990    d\'efaut ({\bf no}) de sorte qu'un maximum d'informations concernant vos 
1991    fichiers soit sauvegard\'e.
1992
1993 \item [{\bf recurse=yes|no}]
1994    \index[dir]{recurse }
1995    Si cette option est activ\'ee (la valeur par d\'efaut est {\bf yes}), Bacula 
1996    descend r\'ecursivement dans tout sous-r\'epertoire trouv\'e, \`a moins qu'il ne soit 
1997    explicitement exclu par une d\'efinition {\bf exclude}. Si vous d\'esactivez cette 
1998    option ({\bf recurse=no}), Bacula sauvegardera toutes les entr\'ees de sous-
1999    r\'epertoires, mais n'entrera pas dans ces sous-r\'epertoires, et ainsi ne 
2000    sauvegardera pas les fichiers ou \'epertoires contenus dans ces sous-r\'epertoires.
2001    En principe, vous pr\'ef\`ererez la valeur par d\'efaut ({\bf yes}).
2002
2003 \item [{\bf sparse=yes|no}]
2004    \index[dir]{sparse }
2005    Cette option active un code sp\'ecial qui d\'etecte les fichiers clairsem\'es tels 
2006    ceux cr\'e\'es par ndbm. Elle est d\'esactiv\'ee par d\'efaut ({\bf sparse=no}), de sorte 
2007    qu'aucun contr\^ole n'est fait pour rechercher les fichiers clairsem\'es. Vous 
2008    pouvez l'activer sans danger sur des fichiers non clairsem\'es, cependant elle 
2009    entra\^ine une l\'eg\`ere charge suppl\'ementaire pour la d\'etection de tampons remplis 
2010    de z\'eros (buffers of all zero), et un l\'eger surplus d'espace sur l'archive 
2011    de sortie sera utilis\'e pour ssauver les adresses de recherche de chaque 
2012    enregistrement non-nul trouv\'e.
2013
2014 {\bf Restrictions:} Bacula lit les fichiers dans des tampons de 32K. Si le tampon 
2015 entier est rempli de z\'eros, il sera trait\'e en tant que bloc clairsem\'e, et ne sera pas 
2016 \'ecrit sur la cartouche. En revanche, si une partie quelconque du tampon est 
2017 non-nulle, le tampon sera int\'egralement copi\'e sur la cartouche, avec \'eventuellement 
2018 des secteurs de disque (g\'en\'eralement 4098 octets) enti\`erement nuls. La d\'etection par 
2019 Bacula des blocs clairsem\'es a lieu sur des blocs de 32K plut\^ot que sur des blocs de 
2020 taille d\'etermin\'ee par le syst\`eme. Si quelqu'un consid\`ere ceci comme un r\'eelle 
2021 probl\`eme, merci d'envoyer une demande de modification en exposant les raisons.
2022 Ce code est apparu avec la version 1.27 de Bacula. 
2023
2024 Si vous n'\^etes pas familier avec les notions de fichiers clairsem\'es, prenons 
2025 pour exemple un fichier o\`u vous \'ecrivez 512 octets \`a l'adresse 0, puis 512 octets 
2026 \`a l'adresse 1 million. Le syst\`eme d'exploitation n'allouera que deux blocs, et 
2027 rien n'est allou\'e pour l'espace vide. Pourtant, lorsque vous lisez le fichier 
2028 clairsem\'e, le syst\`eme retourne tous les z\'eros comme si l'espace \'etait allou\'e, 
2029 et si vous sauvegardez un tel fichier, vous utiliserez beaucoup d'espace 
2030 sur le volume pour \'ecrire des z\'eros. Pire encore, lorsque vous restaurez ce 
2031 fichier \`a son emplacement initial, tous les emplacements pr\'ec\'edemment vides 
2032 seront cette fois allou\'es, occupant ainsi beaucoup plus d'espace disque.
2033 En activant l'option {\bf sparse}, Bacula recherchera sp\'ecifiquement l'espace 
2034 vide dans les fichiers afin d'\'eviter ces inconv\'enients. Le prix \`a payer est que 
2035 Bacula doit d'abord examiner chaque bloc lu avant de l'\'ecrire. Sur un syst\`eme lent, 
2036 ceci peut-\^etre important. Si vous suspectez certains de vos fichiers d'\^etre 
2037 clairsem\'es, vous devriez mesurer les performances et gains d'espace avec et 
2038 sans l'options, ou ne l'activer que pour les fichiers effectivement 
2039 clairsem\'es.
2040
2041 \label{readfifo}
2042
2043 \item [{\bf readfifo=yes|no}]
2044    \index[dir]{readfifo }
2045 Cette option, si elle est activ\'ee, indique au client de lire les donn\'ees 
2046 (lors d'une sauvegarde) et de les \'ecrire (lors d'une restauration) sur 
2047 un FIFO (pipe) explicitement explicitement mentionn\'e dans le FileSet.
2048 Dans ce cas, vous devez avoir un programme actif qui \'ecrit sur ce FIFO 
2049 dans le cas d'une sauvegarde, ou qui le lit dans le cas d'une restauration.
2050 (Ceci peut \^etre accompli par la directive {\bf RunBeforeJob}). Si cette 
2051 condition n'est pas satisfaite, Bacula demeurera en suspens ind\'efiniment 
2052 en lecture/\'ecriture du FIFO. Lorsque cette option est d\'esactiv\'ee (par d\'efaut), 
2053 le Client sauvegarde simplement l'entr\'ee du r\'epertoire pour le FIFO.
2054
2055 \item [{\bf mtimeonly=yes|no}]
2056    \index[dir]{mtimeonly }
2057 Cette option, si elle est activ\'ee, indique au client que la s\'election de fichiers 
2058 lors d'une sauvegarde incr\'ementale ou diff\'erentielle ne doit se r\'ef\'erer qu'aux valeurs 
2059 de  st\_mtime du paquet stat(). La valeur par d\'efaut est {\bf no}, ce qui signifie 
2060 que la s\'election de fichiers \`a sauvegarder se base sur les deux valeurs st\_mtime et 
2061 st\_ctime. En g\'en\'eral, il n'est pas recommand\'e d'activer cette option.
2062    
2063 \item [{\bf keepatime=yes|no}]
2064    \index[dir]{keepatime }
2065 Avec cette option activ\'ee, Bacula r\'etablit le champ st\_atime (date d'acc\`es) des 
2066 fichiers qu'il sauvegarde \`a leur valeur d'avant la sauvegarde. Cette option 
2067 n'est g\'en\'eralement pas recommand\'ee car il existe peu de programmes qui utilisent 
2068 st\_atime, et la charge de la sauvegarde se trouve augment\'ee par les appels 
2069 syst\`emes n\'ecessaires pour r\'etablir les dates. (Je ne suis pas sur que ceci 
2070 fonctionne sous Win32).
2071
2072 \item [{\bf wild=\lt{}string\gt{}}]
2073    \index[dir]{wild }
2074 Sp\'ecifie une cha\^ine de caract\`eres jokers \`a appliquer aux fichiers. Notez 
2075 que si {\bf Exclude} n'est pas activ\'ee, cette cha\^ine s\'electionnera les fichiers 
2076 \`a sauvegarder. Si au contraire {\bf Exclude=yes} est sp\'ecifi\'e, la cha\^ine 
2077 s\'electionnera les fichiers \`a exclure de la sauvegarde. Plusieurs directives 
2078 wild-card peuvent \^etre sp\'ecifi\'ees et sont appliqu\'ees s\'equentiellement 
2079 jusqu'\`a ce que l'une d'elles corresponde.
2080
2081 \item [{\bf regex=\lt{}string\gt{}}]
2082    \index[dir]{regex }
2083 Sp\'ecifie une expression r\'eguli\`ere \'etendue POSIX \`a appliquer aux fichiers.
2084 Cette directive est disponible \`a partir de Bacula 1.35. Si {\bf Exclude} n'est 
2085  pas activ\'ee, cette expression r\'eguli\`ere s\'electionnera les fichiers \`a 
2086  sauvegarder. Si au contraire {\bf Exclude=yes} est sp\'ecifi\'e, elle s\'electionnera 
2087  les fichiers \`a exclure de la sauvegarde. Plusieurs directives regex  peuvent \^etre 
2088  sp\'ecifi\'ees et sont appliqu\'ees s\'equentiellement jusqu'\`a ce que l'une d'elles corresponde.
2089
2090 \item [{\bf exclude=yes|no}]
2091    \index[dir]{exclude }
2092 Lorsque cette option est activ\'ee, tout fichier qui correspond aux options est exclu de 
2093 la sauvegarde. La valeur par d\'efaut est {\bf no}.
2094
2095 \label{ACLSupport}
2096
2097 \item [{\bf aclsupport=yes|no}]
2098    \index[dir]{aclsupport }
2099    Si cette option est activ\'ee, et si vous avez install\'e la librarie POSIX {\bf libacl} 
2100    sur votre syst\`eme, Bacula sauvegardera Listes de Contr\^oles d'Acc\`es (ACL) UNIX des 
2101    fichiers et r\'epertoires telles que d\'efinies dans IEEE Std 1003.1e version 17 et 
2102    "POSIX.1e" (abandonn\'e). Cette fonction n'est disponible que sur UNIX et d\'epend de 
2103    la librairie ACL. Bacula est automatiquement compil\'e avec le support ACL si la 
2104    librairie {\bf libacl} est install\'ee sur votre syst\`eme (ceci est report\'e dans 
2105    le fichier config.out). Lors de la restauration, Bacula tentera de restaurer les 
2106    ACLs. S'il n'y a pas de support ACL sur le syst\`eme cible, Bacula ne restaurera que les 
2107    fichiers et r\'epertoires sans les informations ACL. Veuillez noter que si vous 
2108    sauvegardez un syst\`eme de fichiers EXT3 ou XFS avec le support des ACLs, et que vous 
2109    restaurez vers un syst\`eme de fichiers sans ACLs (tel , peut-\^etre reiserfs), les 
2110    ACLs seront ignor\'ees.
2111
2112 \end{description}
2113
2114 {\bf \lt{}file-list\gt{}} est une liste de r\'epertoires et/ou noms de fichiers sp\'ecifi\'es 
2115 avec la directive  {\bf File =}. Pour inclure des noms contenant des espaces, 
2116 entourez-les de guillemets (doubles quotes).
2117
2118 Il existe quelques notations particuli\`eres pour sp\'ecifier des fichiers et r\'epertoires 
2119 dans une liste de fichiers {\bf file-list}. Les voici :
2120
2121 \begin{itemize}
2122 \item Tout nom pr\'ec\'ed\'e d'un signe "at" (@) est compris comme le nom d'un fichier, 
2123    lequel contient une liste de fichiers, chacun pr\'ec\'ed\'e d'une directive "File=". 
2124    Ce fichier est lu lorsque le fichier de configuration est parcouru au d\'emarrage 
2125    du Director. Notez bien que le fichier est lu sur sur la machine qui h\'eberge le 
2126    Director (autrement dit, le serveur de sauvegardes) et non sur le Client.
2127    En fait, le "@NomDeFichier" peut appara\^itre n'importe o\`u dans le fichier de 
2128    configuration o\`u un objet pourrait \^etre lu, le contenu du fichier d\'esign\'e sera 
2129    logiquement ins\'er\'e \`a l'emplacement du "@NomDeFichier". Ce qui doit figurer dans le 
2130    fichier d\'epend de l'emplacement du "@NomDeFichier" au sein du fichier de 
2131    configuration.
2132 \item Tout nom pr\'ec\'ed\'e d'une barre verticale (|) est compris comme le nom d'un 
2133    programme. Ce programme sera ex\'ecut\'e sur la machine qui h\'eberge le Director au 
2134    moment o\`u le job d\'emarre (et non lorsque le Director lit son fichier de 
2135    configuration), et toute sortie de ce programme sera per\\ 3u en tant que liste 
2136    de fichiers ou r\'epertoires, un par ligne, \`a inclure. Ceci vous permet d'avoir un 
2137    job qui, par exemple, inclue toutes les partitions locales m\^eme si vous changez le 
2138    partitionnement en ajoutant des disques. En g\'en\'eral, il vous faudra pr\'ec\'eder 
2139    votre commande d'un "{\bf sh -c}" afin qu'elle soit invoqu\'ee par un shell. 
2140    Ce ne sera pas le cas si vous invoquez un script comme dans le second exemple 
2141    ci-dessous.  Vous devez aussi prendre soin d'\'echapper (pr\'ec\'eder d'un \textbackslash{}) 
2142    les caract\`eres jokers, les caract\`eres du shell, ainsi que toute espace dans votre 
2143    commande. Si vous utilisez des simples quotes (') dans des doubles quotes (``), 
2144    Bacula traitera tout ce qui est entre simples quotes comme un seul champ, et il ne 
2145    dera donc pas n\'ecessaire d'\'echapper les espaces. En g\'en\'eral, parvenir \`a avoir 
2146    toutes les quotes et \'echappements corrects est un calvaire, comme vous pouvez 
2147    le constater dans le prochain exemple. Par cons\'equent, il est souvent plus facile 
2148    de tout mettre dans un fichier et d'utiliser simplement le nom de fichier dans 
2149    Bacula. Dans ce cas le "{\bf sh -c}" ne sera plus n\'ecessaire, pourvu que la 
2150    premi\`ere ligne du fichier soit {\bf \#!/bin/sh}.
2151
2152
2153 Par exemple : 
2154
2155 \footnotesize
2156 \begin{verbatim}
2157  
2158 Include {
2159    Options { signature = SHA1 }
2160    File = "|sh -c 'df -l | grep \"^/dev/hd[ab]\" | grep -v \".*/tmp\" \
2161       | awk \"{print \\$6}\"'"
2162 }
2163 \end{verbatim}
2164 \normalsize
2165
2166 produira une liste de toutes les partitions locales sur un syst\`eme RedHat Linux. 
2167 Notez que la ligne si dessus a \'et\'e coup\'ee, mais devrait normalement \^etre \'ecrite 
2168 sur une seule ligne. Quoter est un r\'eel probl\`eme car vous devez d'une part le faire 
2169 pour Bacula - ce qui consiste \`a pr\'ec\'eder tout \textbackslash{} et tout '' avec un 
2170 \textbackslash{} - et d'autre part pour les commandes shell. En d\'efinitive, il est 
2171 probablement plus ais\'e d'ex\'ecuter un petit fichier tel que :
2172
2173 \footnotesize
2174 \begin{verbatim}
2175 Include {
2176   Options {
2177     signature=MD5
2178   }
2179   File = "|my_partitions"
2180 }
2181 \end{verbatim}
2182 \normalsize
2183
2184 o\`u le fichier my\_partitions contient :
2185
2186 \footnotesize
2187 \begin{verbatim}
2188 #!/bin/sh
2189 df -l | grep "^/dev/hd[ab]" | grep -v ".*/tmp" \
2190       | awk "{print \$6}"
2191 \end{verbatim}
2192 \normalsize
2193
2194 Si la barre verticale (|) devant "my\_partitions" est pr\'ec\'ed\'ee d'une barre oblique 
2195 (\textbackslash{}), le programme sera ex\'ecut\'e sur la machine cliente plut\^ot que sur 
2196 la machine h\'ebergeant le Director -- (ceci est impl\'ement\'e, mais n'est pas compl\`etement 
2197 test\'e, et a \'et\'e rapport\'e fonctionner sous Windows). Veuillez noter que si le nom de 
2198 fichier est donn\'e entre quotes, vous devrez utiliser deux barres obliques. Voci un 
2199 exemple, fourni par John Donagher, qui sauvegarde toutes les partitions UFS locales 
2200 sur un syst\`eme distant :
2201
2202 \footnotesize
2203 \begin{verbatim}
2204 FileSet {
2205   Name = "All local partitions"
2206   Include {
2207     Options { signature=SHA1; onefs=yes; }
2208     File = "\\|bash -c \"df -klF ufs | tail +2 | awk '{print \$6}'\""
2209   }
2210 }
2211 \end{verbatim}
2212 \normalsize
2213
2214 Notez que deux barres obliques \textbackslash{} sont requises apr\`es les doubles quotes 
2215 (l'une pr\'eserve l'autre). Si vous utilisez Linux, changez simplement {\bf ufs} en {\bf ext3} 
2216 (ou votre syst\`eme de fichiers pr\'ef\'er\'e) et l'affaire sera dans le sac.
2217
2218 \item Tout \'el\'ement de la liste de fichiers file-list pr\'ec\'ed\'e par un signe "inf\'erieur" (\lt{}) 
2219 est interpr\'et\'e comme un fichier qui sera lu sur la machine qui h\'eberge le Director 
2220 au moment o\`u le job d\'emarre. Son contenu est suppos\'e \^etre une liste de r\'epertoires ou 
2221 fichiers, un par ligne, \`a inclure dans la sauvegarde. Les noms ne doivent pas \^etre quot\'es, m\^eme 
2222 s'ils comportent des espaces. Cette fonction vous permet de modifier le fichier externe, 
2223 et ainsi ce qui est sauvegard\'e sans avoir \`a red\'emarrer Bacula comme il le faudrait avec 
2224 le modificateur @ d\'ecrit plus haut.
2225
2226 Si vous pr\'ec\'edez le signe "inf\'erieur" (\lt{}) d'une barre oblique \textbackslash{}\lt{}, le 
2227 fichier mentionn\'e sera lu sur la machine cliente au lieu de celle h\'ebergeant le Director. 
2228 Veullez noter que si le nom de fichier est donn\'e entre quotes, il vous faudra utiliser deux 
2229 barres obliques.
2230
2231 \item Si vous sp\'ecifiez explicitement un block device (NDT ?) tel que {\bf /dev/hda1}, alors 
2232 Bacula consid\`erera ceci comme une partition raw \`a sauvegarder. Dans ce cas, vous \^etes 
2233 fortement invit\'e \`a utiliser l'option {\bf sparse=yes}, faute de quoi vous sauvegarderez 
2234 la partition enti\`ere plut\^ot que seulement les donn\'ees r\'eellement contenues dans la 
2235 partition. Par exemple :
2236
2237 \footnotesize
2238 \begin{verbatim}
2239 Include {
2240   Options { signature=MD5; sparse=yes }
2241   File = /dev/hd6
2242 }
2243 \end{verbatim}
2244 \normalsize
2245
2246 va sauvegarder les donn\'ees de la partition /dev/hd6.
2247
2248 will backup the data in device /dev/hd6.  
2249
2250 Ludovic Strappazon a fait remarquer que cette fonction pouvait servir \`a sauvegarder 
2251 un disque Microsoft Windows. Il suffit de booter avec un Linux Rescue Disk, puis de 
2252 charger un client Bacula statiquement li\'e comme d\'ecrit dans le chapitre 
2253 \ilink{ Disaster Recovery avec Bacula}{_ChapterStart38} de ce manuel. Sauvegardez alors 
2254 la partition compl\`ete. En cas de d\'esastre, vous pouvez alors restaurer la partition 
2255 d\'esir\'ee en bootant une fois encore sur le Linux Rescue Disk et en utilisant le 
2256 client Bacula  statiquement li\'e.
2257
2258
2259 \item Si vous sp\'ecifiez explicitement un p\'eriph\'erique FIFO nomm\'e (cr\'e\'e avec mkfifo), 
2260 ets si vous ajoutez l'option {\bf readfifo=yes}, Bacula lira le FIFO et sauvegardera ses 
2261 donn\'ees sur le volume. Par exemple :
2262
2263 \footnotesize
2264 \begin{verbatim}
2265 Include {
2266   Options {
2267     signature=SHA1
2268     readfifo=yes
2269   }
2270   File = /home/abc/fifo
2271 }
2272 \end{verbatim}
2273 \normalsize
2274
2275 si {\bf /home/abc/fifo} est un FIFO, Bacula va l'ouvrir, le lire, et stocker 
2276 toutes les donn\'ees ainsi obtenues sur le volume. Notez qu'il faut que vous ayez 
2277 un processus qui \'ecrit sur le FIFO, faute de quoi Bacula restera en suspens, et 
2278 abandonnera au bout d'une minute pour passer au fichier suivant. Les donn\'ees 
2279 lues peuvent \^etre de nature quelconque puisque Bacula les traite comme un flux.
2280
2281 Cette fonction est un excellent moyen de faire une sauvegarde "\`a chaud" d'une 
2282 tr\`es grosse base de donn\'ees. Vous pouvez utiliser la directive {\bf RunBeforeJob} 
2283 pour cr\'eer le FIFO et d\'emarrer un programme qui lit dynamiquement votre base de 
2284 donn\'ees et l'\'ecrit sur le FIFO. Bacula l'\'ecrira alors sur le volume.
2285
2286 Lors de l'op\'eration de restauration, l'inverse se produit : apr\`es que Bacula ait cr\'e\'e 
2287 le FIFO, s'il y avait des donn\'ees stock\'ees par son biais (inutile de les lister 
2288 explicitement ni d'ajouter aucune option), elles seront renvoy\'ees vers le FIFO. 
2289 Par cons\'equent, s'il existe un tel FIFO \`a restaurer, vous devez vous assurer 
2290 qu'il y a un programme lecteur ou Bacula se bloquera et passera au fichier suivant 
2291 apr\`es une minute.
2292
2293 \end{itemize}
2294
2295 \end{description}
2296
2297 Voici un exemple de d\'efinition de ressource FileSet valide. Notez que le premier 
2298 Include  ins\`ere le contenu du fichier {\bf /etc/backup.list} lors du d\'emarrage 
2299 de Bacula (i.e. le @). 
2300
2301 \footnotesize
2302 \begin{verbatim}
2303 FileSet {
2304   Name = "Full Set"
2305   Include {
2306     Options {
2307       Compression=GZIP
2308       signature=SHA1
2309       Sparse = yes
2310     }
2311     File = @/etc/backup.list
2312   }
2313   Include {
2314      Options {
2315         wild = *.o
2316         Exclude = yes
2317      }
2318      File = /root/myfile
2319      File = /usr/lib/another_file
2320   }
2321 }
2322 \end{verbatim}
2323 \normalsize
2324
2325 Notez que dans l'exemple ci-dessus, tous les fichiers mentionn\'es dans 
2326 /etc/backup.list seront compress\'e avec GZIP, qu'une signature SHA1 sera 
2327 calcul\'ee sur le contenu des fichiers (leurs donn\'ees), et que la prise en 
2328 charge particuli\`ere des fichiers clairsem\'es (sparse) s'appliquera.
2329
2330 Les deux r\'epertoires /root/myfile et /usr/lib/another\_file seront aussi 
2331 sauvegard\'es sans aucune option, mais tous les fichiers \`a extension  {\bf .o} 
2332 de ces r\'epertoires seront exlus de la sauvegarde.  
2333
2334 Supposons que vous vouliez sauvegarder tout sauf {\bf /tmp} sur votre syst\`eme.
2335 La commande {\bf df} vous fournit le r\'esultat suivant :
2336
2337 \footnotesize
2338 \begin{verbatim}
2339 [kern@rufus k]$ df
2340 Filesystem      1k-blocks      Used Available Use% Mounted on
2341 /dev/hda5         5044156    439232   4348692  10% /
2342 /dev/hda1           62193      4935     54047   9% /boot
2343 /dev/hda9        20161172   5524660  13612372  29% /home
2344 /dev/hda2           62217      6843     52161  12% /rescue
2345 /dev/hda8         5044156     42548   4745376   1% /tmp
2346 /dev/hda6         5044156   2613132   2174792  55% /usr
2347 none               127708         0    127708   0% /dev/shm
2348 //minimatou/c$   14099200   9895424   4203776  71% /mnt/mmatou
2349 lmatou:/          1554264    215884   1258056  15% /mnt/matou
2350 lmatou:/home      2478140   1589952    760072  68% /mnt/matou/home
2351 lmatou:/usr       1981000   1199960    678628  64% /mnt/matou/usr
2352 lpmatou:/          995116    484112    459596  52% /mnt/pmatou
2353 lpmatou:/home    19222656   2787880  15458228  16% /mnt/pmatou/home
2354 lpmatou:/usr      2478140   2038764    311260  87% /mnt/pmatou/usr
2355 deuter:/          4806936     97684   4465064   3% /mnt/deuter
2356 deuter:/home      4806904    280100   4282620   7% /mnt/deuter/home
2357 deuter:/files    44133352  27652876  14238608  67% /mnt/deuter/files
2358 \end{verbatim}
2359 \normalsize
2360
2361 Si vous vous contentez de sp\'ecifier {\bf /} dans votre liste d'inclusions, 
2362 Bacula ne sauvegardera que le syst\`eme de fichiers {\bf /dev/hda5}. Pour 
2363 sauvegarder tous vos syst\`emes de fichiers sans inclure les syst\`emes de fichiers 
2364 mont\'es Samba ou NFS et en excluant /tmp, /proc, .journal, et .autofsck, que 
2365 vous ne voulez ni sauvegarder ni restaurer, vous pouvez utiliser ce qui suit :
2366
2367 \footnotesize
2368 \begin{verbatim}
2369 FileSet {
2370   Name = Include_example
2371   Include {
2372     Options {
2373        wild = /proc
2374        wild = /tmp
2375        wild = \.journal
2376        wild = \.autofsck
2377        exclude = yes
2378     }
2379     File = /
2380     File = /boot
2381     File = /home
2382     File = /rescue
2383     File = /usr
2384   }
2385 }
2386 \end{verbatim}
2387 \normalsize
2388
2389 /tmp \'etant sur son propre syst\`eme de fichiers et n'\'etant pas explicitement nomm\'e 
2390 dans la liste d'inclusion, il n'est pas n\'ecessaire de le sp\'ecifier dans la liste 
2391 d'exclusion. Cependant, il peut \^etre pr\'ef\'erable de le faire malgr\'e tout par 
2392 souci de clart\'e et au cas o\`u il ne serait plus sur sa propre partition apr\`es un 
2393 remplacement de disques.
2394
2395 Ayez conscience qu'il peut \^etre {\bf tr\`es} dangereux de permettre \`a Bacula de traverser ou 
2396 changer de syst\`eme de fichiers au gr\'e des ppoints de montage. Par exemple, avec ce qui suit : 
2397
2398 \footnotesize
2399 \begin{verbatim}
2400 FileSet {
2401   Name = "Bad example"
2402   Include {
2403     Options { onefs=no }
2404     File = /mnt/matou
2405   }
2406 }
2407 \end{verbatim}
2408 \normalsize
2409
2410 vous sauvegardez une partition NFS mont\'ee ({\bf /mnt/matou}), et puisque 
2411 {\bf onefs} est d\'esactiv\'ee, Bacula traverse les syst\`emes de fichiers. 
2412 Si jamais {\bf /mnt/matou} contient lui m\^eme un point de montage o\`u le syst\`eme 
2413 de fichiers de la machine sauvegard\'ee est mont\'e, ce qui est souvent le cas, 
2414 vous vous retrouvez pris dans un boucle r\'ecursive, et la sauvegarde ne se 
2415 terminera jamais.
2416
2417 Le FileSet suivant sauvegarde une partition raw :
2418
2419 \footnotesize
2420 \begin{verbatim}
2421 FileSet {
2422   Name = "RawPartition"
2423   Include {
2424     Options { sparse=yes }
2425     File = /dev/hda2
2426   }
2427 }
2428 \end{verbatim}
2429 \normalsize
2430
2431 Lorsque vous sauvegardez et restaurez une partition raw, vous devriez vous 
2432 assurer qu'aucun autre processus, y compris le syst\`eme, n'\'ecrit sur cette 
2433 partition. En guise de pr\'ecaution, nous recommandons ardemment de ne sauvegarder 
2434 en mode raw que des partitions non mont\'ees, ou mont\'ees en lecture seule. Ceci peut 
2435 \^etre fait si n\'ecessaire avec la directive {\bf RunBeforeJob}.
2436
2437 \label{win32}
2438
2439 \subsection*{Consid\'erations sur les FileSets Windows}
2440 \index[general]{FileSets!Windows Considerations for }
2441 \index[general]{Windows Considerations for FileSets }
2442 \addcontentsline{toc}{subsection}{Windows Considerations for FileSets}
2443
2444 Si vous saisissez des noms de fichiers Windows, les chemins des r\'epertoires devraient 
2445 \^etre pr\'ec\'ed\'es de double-points (comme dans "c:"). Cependant, les s\'eparateurs de 
2446 champs doivent \^etre sp\'ecifi\'es selon la convention Unix (c'est \`a dire, la barre oblique 
2447 avant : "/"). Si vous souhaitez inclure une apostrophe dans un nom de fichier, pr\'ec\'edez-la 
2448 d'une barre oblique arri\`ere (\textbackslash{}\textbackslash{}). Par exemple, vous pourriez 
2449 utiliser ce qui suit pour sauvegarder le r\'epertoire "My Documents" d'une machine Windows :
2450
2451 \footnotesize
2452 \begin{verbatim}
2453 FileSet {
2454   Name = "Windows Set"
2455   Include {
2456     Options {
2457        wild = *.obj
2458        wild = *.exe
2459        exclude = yes
2460      }
2461      File = "c:/My Documents"
2462   }
2463 }
2464 \end{verbatim}
2465 \normalsize
2466
2467 Pour que les listes d'exclusion fonctionnent correctement sous Windows, vous devez 
2468 observer les r\`egles suivante :
2469
2470 \begin{itemize}
2471 \item les noms de fichiers sont sensibles \`a la casse, aussi vous devez utilise la 
2472 casse correcte ;
2473 \item vous ne devez pas sp\'ecifier de barre oblique finale pour exclure un r\'epertoire ;
2474 \item si vos noms de fichiers comportent des espaces, vous devez les encadrer de 
2475 quillemets. Les barres obliques arri\`eres (\textbackslash{}\textbackslash{}) ne 
2476 fonctionnent pas ;
2477 \item si vous utilisez l'ancienne syntaxe des listes d'exclusion (mentionn\'ee ci-dessous), 
2478 vous ne devriez pas sp\'ecifier la lettre r\'ef\'eren\\ 3ant le disque dans une liste d'exclusion. 
2479 La nouvelle syntaxe d\'ecrite ci-dessus devrait fonctionner correctement en incluant la lettre 
2480 du disque.
2481 \end{itemize}
2482
2483 Merci \`a Thiago Lima pour nous avoir r\'esum\'e les points ci-dessus. Si vous rencontrez 
2484 des difficult\'es pour faire fonctionner vos listes d'inclusion ou d'exclusion, 
2485 songez \`a utiliser la commande {\bf estimate job=xxx listing} document\'ee 
2486 dans le chapitre \ilink{Console chapter}{estimate} de ce manuel.
2487
2488 Sur les syst\`emes Win32, si vous d\'eplacez un r\'epertoire ou si vous renommez 
2489 un fichier de la liste \`a sauvegarder, et si une Full a d\'ej\`a eu lieu, Bacula 
2490 ne saura reconna\^itre qu'il existe de nouveaux fichiers \`a sauvegarder lors d'une 
2491 incr\'ementale ou d'une diff\'erentielle (faites-en le reproche \`a Microsoft, pas \`a moi !). 
2492 Pour pallier \`a ce probl\`eme, veuillez copier tout r\'epertoire ou fichier de la 
2493 zone sauvegard\'ee. Si vous ne disposez pas de suffisamment d'espace disque, 
2494 d\'eplacez-les, mais lancez alors une sauvegarde Full.
2495
2496 \subsubsection*{Exclusion de fichiers et r\'epertoires}
2497 \index[general]{Directories!Excluding Files and }
2498 \index[general]{Excluding Files and Directories }
2499 \addcontentsline{toc}{subsubsection}{Exclusion de fichiers et r\'epertoires}
2500
2501 Vous pouvez aussi inclure des noms de fichiers ou chemins absolus, en plus 
2502 de l'utilisation de caract\`eres jokers et de la directive {\bf Exclude=yes} dans 
2503 les ressources Options comme expos\'e ci-dessus, en ajoutant simplement 
2504 les fichiers \`a exclure dans une ressource Exclude du FileSet. Par exemple :
2505
2506 \footnotesize
2507 \begin{verbatim}
2508 FileSet {
2509   Name = Exclusion_example
2510   Include {
2511     Options {
2512       Signature = SHA1
2513     }
2514     File = /
2515     File = /boot
2516     File = /home
2517     File = /rescue
2518     File = /usr
2519   }
2520   Exclude {
2521     File = /proc
2522     File = /tmp
2523     File = .journal
2524     File = .autofsck
2525   }
2526 }
2527 \end{verbatim}
2528 \normalsize
2529
2530 \subsection*{Un exemple de FileSet Windows}
2531 \index[general]{FileSet!Windows Example }
2532 \index[general]{Un exemple de FileSet Windows}
2533 \addcontentsline{toc}{subsection}{Un exemple de FileSet Windows}
2534
2535 Cet exemple est une contribution de Phil Stracchino :
2536
2537 \footnotesize
2538 \begin{verbatim}
2539 This is my Windows 2000 fileset:
2540 FileSet {
2541   Name = "Windows 2000 Full Set"
2542   Include {
2543     Options {
2544        signature=MD5
2545     }
2546     File = c:/
2547   }
2548   Exclude {
2549 # Most of these files are excluded not because we don't want
2550 #  them, but because Win2K won't allow them to be backed up
2551 #  except via proprietary Win32 API calls.
2552     File = "/Documents and Settings/*/Application Data/*/Profiles/
2553            */*/Cache/*"
2554     File = "/Documents and Settings/*/Local Settings/Application Data/
2555            Microsoft/Windows/[Uu][Ss][Rr][Cc][Ll][Aa][Ss][Ss].*"
2556     File = "/Documents and Settings/*/[Nn][Tt][Uu][Ss][Ee][Rr].*"
2557     File = "/Documents and Settings/*/Cookies/*"
2558     File = "/Documents and Settings/*/Local Settings/History/*"
2559     File = "/Documents and Settings/*/Local Settings/
2560            Temporary Internet Files/*"
2561     File = "/Documents and Settings/*/Local Settings/Temp/*"
2562     File = "/WINNT/CSC"
2563     File = "/WINNT/security/logs/scepol.log"
2564     File = "/WINNT/system32/config/*"
2565     File = "/WINNT/msdownld.tmp/*"
2566     File = "/WINNT/Internet Logs/*"
2567     File = "/WINNT/$Nt*Uninstall*"
2568     File = "/WINNT/Temp/*"
2569     File = "/temp/*"
2570     File = "/tmp/*"
2571     File = "/pagefile.sys"
2572   }
2573 }
2574 \end{verbatim}
2575 \normalsize
2576
2577 Remarque : les trois lignes coup\'ees de cette liste d'exclusion ne l'ont \'et\'e 
2578 que pour des motifs de mise en page, elles doivent en r\'ealit\'e \^etre \'ecrites 
2579 sur une seule ligne.
2580
2581 \subsection*{L'ancienne ressource FileSet}
2582 \index[general]{Resource!Old FileSet }
2583 \index[general]{L'ancienne ressource FileSet}
2584 \addcontentsline{toc}{subsection}{L'ancienne ressource FileSet}
2585
2586 L'ancienne Ressource FileSet des versions ant\'erieures \`a 1.34.3 est obsol\`ete, 
2587 mais fonctionne encore. Nous vous encourageons \`a utiliser la nouvelle forme, 
2588 car le code correspondant sera supprim\'e \`a partir de la version 1.37.
2589
2590 \subsection*{Tester vos FileSets}
2591 \index[general]{FileSet!Testing Your }
2592 \index[general]{Tester vos FileSets }
2593 \addcontentsline{toc}{subsection}{Tester vos FileSets}
2594
2595 Si vous voulez vous faire une id\'ee pr\'ecise de ce qui sera effectivement 
2596 sauvegard\'e par un FileSet, ou si vous voulez vous assurer de l'efficacit\'e  
2597 d'une liste d'exclusion, vous pouvez utiliser la commande {\bf estimate} 
2598 du programme Console. Voyez \ilink{estimate command}{estimate} dans le 
2599 chapitre Console de ce manuel.
2600
2601 \subsection*{Considerations sur le nommage Windows NTFS}
2602 \index[general]{Considerations sur le nommage Windows NTFS}
2603 \index[general]{Considerations!Windows NTFS Naming }
2604 \addcontentsline{toc}{subsection}{Considerations sur le nommage Windows NTFS}
2605
2606 Les noms de fichiers NTFS contenant des caract\`eres Unicode (i.e. \gt{} 0xFF) ne 
2607 peuvent, pour le moment, \^etre nomm\'e eplicitement. Vous devez inclure de tels 
2608 fichiers en d\'esignant un r\'epertoire de niveau sup\'erieur ou une lettre de disque 
2609 ne contenant pas de caract\`ere Unicode.
2610
2611 \subsection*{La ressource Client}
2612 \label{ClientResource2}
2613 \index[general]{Resource!Client }
2614 \index[general]{La ressource Client}
2615 \addcontentsline{toc}{subsection}{La ressource Client} 
2616
2617 La ressource Client d\'efinit les attributs des clients servis (sauvegard\'es) 
2618 par ce Director. Il faut une ressource Client par machine sauvegard\'ee.
2619
2620 \begin{description}
2621
2622 \item [Client (ou FileDaemon)]
2623    \index[dir]{Client (ou FileDaemon)}
2624    \index[dir]{Directive!Client (or FileDaemon)}
2625    D\'ebut des directives Client.
2626
2627 \item [Name = \lt{}name\gt{}]
2628    \index[dir]{Name}
2629    \index[dir]{Directive!Name}
2630 Le nom du client qui sera utilis\'e dans la directive Job de la ressource ou 
2631 dans une commande run de la Console. Cette directive est requise.
2632
2633 \item [Address = \lt{}address\gt{}]
2634    \index[dir]{Address}
2635    \index[dir]{Directive!Address}
2636 L'adresse d'un File Daemon Bacula est un nom d'h\^ote, un nom pleinement qualifi\'e 
2637 ou une adresse r\'eseau au format quatre octets point\'es. Cette directive est requise.
2638
2639 \item [FD Port = \lt{}port-number\gt{}]
2640    \index[dir]{FD Port}
2641    \index[dir]{Directive!FD Port}
2642 O\`u le port est le num\'ero de port auquel le le File Daemon peut \^etre contact\'e. 
2643 La valeur par d\'efaut est 9102.
2644
2645
2646 \item [Catalog = \lt{}Catalog-resource-name\gt{}]
2647    \index[dir]{Catalog}
2648    \index[dir]{Directive!Catalog}
2649 Cette directive sp\'ecifie le nom de la ressource catalog \`a utiliser pour ce 
2650 client. Cette directive est requise.
2651
2652 \item [Password = \lt{}password\gt{}]
2653    \index[dir]{Password}
2654    \index[dir]{Directive!Password}
2655 Il s'agit ici du mot de passe \`a utiliser lors de la connection avec le 
2656 File Daemon, aussi le fichier de configuration de la machine \`a sauvegarder 
2657 doit d\'efinir le m\^eme mot de passe pour \^etre connect\'e par ce Director. 
2658 Cette directive est requise. Si vous disposez de {\bf /dev/random} ou de {\bf bc} 
2659 sur votre machine, Bacula g\'en\`ere des mots de passe al\'eatoires lors du processus 
2660 de configuration. Dans le cas contraire, le mot de passe est laiss\'e blanc.
2661
2662 \label{FileRetention}
2663
2664 \item [File Retention = \lt{}time-period-specification\gt{}  ]
2665    \index[dir]{File Retention  }
2666    \index[dir]{Directive!Password}
2667 La directive File Retention d\'efinit la p\'eriode pendant laquelle Bacula conservera 
2668 les enregistrements File dans le catalogue. Lors de l'expiration de cette p\'eriode, 
2669 si la directive {\bf AutoPrune} est active ({\bf yes}), Bacula \'elague le catalogue 
2670 des enregistrements File dont l'âge est sup\'erieur \`a la p\'eriode de r\'etention. 
2671 Notez que ceci n'affecte que les enregistrements du catalogue, et non vos 
2672 sauvegardes archiv\'ees.
2673
2674 Les enregistrements File peuvent en fait \^etre conserv\'es pour une p\'eriode inf\'erieure 
2675 \`a celle affect\'ee \`a cette directive dans les cas o\`u vous avez sp\'ecifi\'e des p\'eriodes 
2676 plus courtes pour les directives  {\bf Job Retention} ou {\bf Volume Retention}. 
2677 La plus courte des trois prend le pas sur les autres. Les dur\'ees peuvent \^etre exprim\'ees 
2678 en secondes, minutes, heures, jours, semaines, mois, trimestres ou ann\'ees. Consultez 
2679 le chapitre \ilink{Adapter les fichiers de configuration}{Time} de ce manuel pour plus de d\'etails sur les 
2680 sp\'ecifications de dur\'ees.
2681
2682 La valeur par d\'efaut est de 60 jours.
2683 \label{JobRetention}
2684
2685 \item [Job Retention = \lt{}time-period-specification\gt{}  ]
2686    \index[dir]{Job Retention}
2687    \index[dir]{Directive!Job Retention}
2688 La directive Job Retention d\'efinit la p\'eriode pendant laquelle Bacula conservera
2689 les enregistrements Job dans le catalogue. Lors de l'expiration de cette p\'eriode,
2690 si la directive {\bf AutoPrune} est active ({\bf yes}), Bacula \'elague le catalogue
2691 des enregistrements File dont l'âge est sup\'erieur \`a la p\'eriode de r\'etention.
2692 Notez que ceci n'affecte que les enregistrements du catalogue, et non vos
2693 sauvegardes archiv\'ees.
2694    
2695 Si un enregistrement de Job est s\'electionn\'e pour \'elagage, tous les enregistrements File 
2696 et JobMedia associ\'es seront aussi \'elagu\'es du catalogue, sans qu'il ne soit tenu compte 
2697 de la p\'eriode File Retention d\'efinie. Par cons\'equent, vous utiliserez, en principe, 
2698 une p\'eriode File Retention inf\'erieure \`a la p\'eriode Job retention. La p\'eriode 
2699 Job retention peut en fait s'av\'erer inf\'erieure \`a la valeur que vous avez sp\'ecifi\'ee 
2700 si vous avez affect\'e une valeur inf\'erieure \`a la directive {\bf Volume Retention} dans 
2701 la ressource Pool. Les p\'eriodes Job retention et  Volume retention sont appliqu\'ees 
2702 ind\'ependamment, la plus petite prend le pas sur l'autre.
2703
2704 Les dur\'ees peuvent \^etre exprim\'ees
2705 en secondes, minutes, heures, jours, semaines, mois, trimestres ou ann\'ees. Consultez
2706 le chapitre \ilink{Adapter les fichiers de configuration}{Time} de ce manuel pour plus de d\'etails sur les
2707 sp\'ecifications de dur\'ees.
2708
2709 La valeur par d\'efaut est 180 jours.  
2710 \label{AutoPrune}
2711
2712 \item [AutoPrune = \lt{}yes|no\gt{}]
2713    \index[dir]{AutoPrune}
2714    \index[dir]{Directive!AutoPrune}
2715 Si AutoPrune est r\'egl\'e \`a {\bf yes} (valeur par d\'efaut), Bacula (dans les versions au del\`a 
2716 de 1.20) applique automatiquement les p\'eriodes File retention et Job  retention pour le 
2717 client \`a la fin du job. Si vous sp\'ecifiez {\bf AutoPrune = no}, l'\'elagage ne se fera pas 
2718 et votre catalogue grossira \`a chaque job. L'\'elagage n'affecte que les donn\'ees du catalogue, 
2719 et non les donn\'ees stock\'ees sur les volumes.
2720
2721 \item [Maximum Concurrent Jobs = \lt{}number\gt{}]
2722    \index[dir]{Maximum Concurrent Jobs}
2723    \index[dir]{Directive!Maximum Concurrent Jobs}
2724 \lt{}number\gt{} d\'esigne le nombre maximum de jobs qui peuvent \^etre lanc\'es simultan\'ement 
2725 sur le client concern\'e. Notez que cette directive ne limite que les jobs pour les clients 
2726 qui ont le m\^eme nom que la ressource dans laquelle elle appara\^it. Toutes les autres restrictions 
2727 du nombre maximum de jobs simultan\'es telles que celles sp\'ecifi\'ees dans les ressources 
2728 Director, Job, ou Storage s'appliquent aussi en plus de toute limite fix\'ee ici. La valeur 
2729 par d\'efaut est 1, mais vous pouvez sp\'ecifier une valeur plus grande. Nous recommandons 
2730 fortement de lire les MISES EN GARDE de la section \ilink{ Maximum Concurrent 
2731 Jobs}{DirMaxConJobs} du chapitre Configurer le Director.
2732
2733
2734 \item [Priority = \lt{}number\gt{}]
2735    \index[dir]{Priority}
2736    \index[dir]{Directive!Priority}
2737 \lt{}number\gt{} sp\'ecifie la priorit\'e de ce client par rapport aux autres clients 
2738 que le Director sauvegarde simultan\'ement. La priorit\'e admet une valeur entre 1 et 1000.
2739 Les clients sont ordonn\'es de sorte que ceux dont la valeur de priorit\'e sont les plus petites 
2740 sont trait\'es les premiers (Ceci n'est pas encore impl\'ement\'e).
2741 \end{description}
2742
2743 Voici un exemple d'une d\'efinition de ressource Client valide :
2744
2745 \footnotesize
2746 \begin{verbatim}
2747 Client {
2748   Name = Minimatou
2749   Address = minimatou
2750   Catalog = MySQL
2751   Password = very_good
2752 }
2753 \end{verbatim}
2754 \normalsize
2755
2756 \subsection*{La ressource Storage}
2757 \label{StorageResource2}
2758 \index[general]{Resource!Storage }
2759 \index[general]{Storage Resource }
2760 \addcontentsline{toc}{subsection}{Storage Resource}
2761
2762 La ressource Storage d\'efinit les Storage Daemons disponibles pour le Director.
2763
2764 \begin{description}
2765
2766 \item [Storage]
2767    \index[dir]{Storage}
2768    \index[dir]{Directive!Storage}
2769 D\'ebut des ressources Storage. Il faut en sp\'ecifier au moins une.
2770
2771 \item [Name = \lt{}name\gt{}]
2772    \index[dir]{Name}
2773    \index[dir]{Directive!Name}
2774 Le nom de la ressource Storage. Ce nom appara\^it au niveau de la directive 
2775 Storage sp\'ecifi\'ee dans la ressource Job et est requise.
2776
2777 \item [Address = \lt{}address\gt{}]
2778    \index[dir]{Address}
2779    \index[dir]{Directive!Address}
2780 O\`u l'adresse est un nom d'h\^ote, une {\bf adresse pleinement qualifi\'ee}, ou une 
2781 {\bf adresse IP}. Notez bien que l'adresse sp\'ecifi\'ee ici sera transmise au 
2782 File Daemon qui l'utilisera alors pour contacter le Storage Daemon. Aussi, ce 
2783 n'est {\bf pas} une bonne id\'ee d'utiliser {\bf localhost} en tant que nom, 
2784 il vaut mieux utiliser un nom de machine pleinement qualifi\'e, ou une adresse IP.
2785 Cette directive est requise.
2786
2787 \item [SD Port = \lt{}port\gt{}]
2788    \index[dir]{SD Port}
2789    \index[dir]{Directive!SD Port}
2790 O\`u "port" est le port \`a utiliser pour contacter le Storage Daemon pour les 
2791 informations et pour ex\'ecuter les jobs. Ce m\^eme num\'ero de port doit 
2792 appara\^itre dans la ressource Storage du fichier de configuration du 
2793 Storage Daemon. Le port par d\'efaut est 9103.
2794
2795 \item [Password = \lt{}password\gt{}]
2796    \index[dir]{Password}
2797    \index[dir]{Directive!Password}
2798 Il s'agit du mot de passe \`a utiliser lors de l'\'etablissement de la connection 
2799 avec les services Storage. Ce m\^eme mot de passe doit aussi appara\^itre dans la 
2800 ressource Director du fichier de configuration du Storage Daemon. Cette 
2801 directive est requise. Si vous avez soit {\bf /dev/random}, soit {\bf bc} 
2802 sur votre machine, Bacula g\'en\`erera un mot de passe al\'eatoire lors du processus 
2803 de configuration. Dans le cas contraire, ce champ sera laiss\'e blanc.
2804
2805 \item [Device = \lt{}device-name\gt{}]
2806    \index[dir]{Device}
2807    \index[dir]{Directive!Device}
2808 Cette directive sp\'ecifie le nom (pour le Storage Daemon) du p\'eriph\'erique \`a 
2809 utiliser pour le stockage. 
2810 Ce nom n'est pas le nom de p\'eriph\'erique physique, mais le nom de p\'eriph\'erique 
2811 logique qui a \'et\'e d\'efini par la directive {\bf Name} de la ressource {\bf Device} 
2812 du fichier de configuration du Storage Daemon. Si le p\'eriph\'erique est une librairie, vous 
2813 devez utiliser le nom d\'efini au niveau de la directive {\bf Name} d\'efini dans la d\'efinition 
2814 de la ressource  {\bf Autochanger} du Storage Daemon. Vous pouvez utiliser le nom de 
2815 votre choix (y compris le nom de p\'eriph\'erique physique) \`a concurrence de 
2816 127 caract\`eres. Le nom de p\'eriph\'erique physique associ\'e \`a ce p\'eriph\'erique est 
2817 sp\'ecifi\'e dans le fichier de configuration du Storage Daemon 
2818 (en tant qu'{\bf Archive  Device}). Prenez garde \`a ne pas d\'efinir deux directives 
2819 Storage Resource dans le Director qui pointent vers le m\^eme p\'eriph\'erique du 
2820 Storage Daemon. Il pourrait en r\'esulter un blocage du Storage Daemon si celui-ci 
2821 tente d'utiliser le m\^eme p\'eriph\'erique deux fois. Cette directive est requise.
2822
2823 \item [Media Type = \lt{}MediaType\gt{}]
2824    \index[dir]{Media Type}
2825    \index[dir]{Directive!Media Type}
2826 Cette directive sp\'ecifie le type de m\'edia \`a utiliser pour stocker les donn\'ees. 
2827 Il s'agit d'une cha\^ine de caract\`eres arbitraire n'exc\'edant pas 127 caract\`eres. 
2828 Ce peut \^etre ce que vous voulez, cependant, il est pr\'ef\'erable de la choisir de 
2829 mani\`ere \`a d\'ecrire le m\'edium de stockage utilis\'e (par exemple : Fichier, DAT, 
2830 ''HP  DLT8000``, 8mm,...). D'autre part, il est esentiel d'avoir une sp\'ecification 
2831 {\bf Media Type} unique pour chaque type de m\'edia de stockage. Si vous avez deux 
2832 lecteurs DDS-4 avec des formats incompatibles et une librairie DDS-4, vous devriez 
2833 certainement sp\'ecifier des {\bf Media Types} distincts. Lors d'une restauration, 
2834 supposons qu'un Media Type {\bf DDS-4} est associ\'e avec le le job, Bacula peut 
2835 d\'ecider d'utiliser tout Storage Daemon qui supporte le Media Type {\bf DDS-4} sur 
2836 tout lecteur qui le supporte. 
2837
2838 Actuellement, Bacula n'autorise qu'un seul type de media. Par cons\'equent, si vous 
2839 disposez d'un lecteur qui en supporte plusieurs, vous pouvez utiliser une cha\^ine 
2840 unique pour d\'esigner les volumes de l'un ou l'autre type, par exemple Media Type = DDS-3-4 
2841 pour les types DDS-3 et DDS-4, mais ces volumes ne seront mont\'es que sur les lecteurs 
2842 sp\'ecifi\'es comme acceptant les deux types : DDS-3-4
2843
2844 Si vous voulez contraindre Bacula \`a utiliser un 
2845 seul Storage Daemon ou un seul lecteur, vous devez sp\'ecifier un Media Type unique 
2846 pour ce lecteur. C'est un point important qui devrait \^etre bien compris. Notez que 
2847 ceci s'applique \'egalement aux volumes disque. Si vous d\'efinissez plus d'une ressource 
2848 Device disque dans votre fichier de configuration du Storage Daemon, les volumes sur ces 
2849 deux devices seront en fait incompatibles car l'un ne pourra \^etre mont\'e sur l'autre 
2850 puisqu'ils se trouvent dans des r\'epertoires diff\'erents. C'est pourquoi vous devriez 
2851 probablement plut\^ot utiliser deux Media Types distincts pour vos deux devices disque 
2852 (m\^eme si vous pensez \`a eux comme ayant l'un et l'autre le type File).
2853
2854 Vous trouverez pus de d\'etails \`a ce sujet dans le chapitre 
2855 \ilink{Gestion des volumes : fondements (NDT:basic volumes management)}
2856 {_ChapterStart39} de ce manuel.
2857
2858 Le {\bf MediaType} sp\'ecifi\'e ici {\bf doit} correspondre au {\bf MediaType} 
2859 sp\'ecifi\'e dans la ressource {\bf Device} du fichier de configuration du 
2860 Storage Daemon. Cette directive est requise, et est utilis\'ee par le Director 
2861 et le Storage Daemon pour s'assurer qu'un volume s\'electionn\'e automatiquement 
2862 dans un Pool correspond \`a un p\'eriph\'erique physique. Si un Storage Daemon 
2863 g\`ere plusieurs p\'eriph\'eriques (par exemple, s'il \'ecrit sur plusieurs volumes 
2864 de type File sur diff\'erentes partitions), cette directive vous permet de 
2865 pr\'eciser exactement quel p\'eriph\'erique utiliser.
2866
2867 Comme mentionn\'e ci-dessus, la valeur sp\'ecifi\'ee dans la ressource Storage du 
2868 Director doit s'accorder avec celle sp\'ecifi\'ee dans la ressource Device du 
2869 fichier de configuration du Storage Daemon. Ceci repr\'esente aussi un contr\^ole 
2870 suppl\'ementaire pour assurer que vous n'essayez pas d'\'ecrire les donn\'ees destin\'ees 
2871 \`a un lecteur DLT sur un lecteur 8mm.
2872
2873 \label{Autochanger1}
2874
2875 \item [Autochanger = \lt{}yes|no\gt{}  ]
2876    \index[dir]{Autochanger  }
2877    \index[dir]{Directive!Autochanger}
2878 Si vous sp\'ecifiez {\bf yes} pour cette commande (la valeur par d\'efaut est {\bf no}), 
2879 alors Bacula requ\'erira un num\'ero de Slot lorsque vous utiliserez les commandes 
2880 {\bf label} et {\bf add} pour cr\'eer un nouveau volume. Ceci simplifie la cr\'eation 
2881 des enregistrements de Volumes dans le catalogue si vous disposez d'une librairie. 
2882 Si vous omettez de sp\'ecifier le Slot, la robotique ne sera pas utilis\'ee. Cependant, 
2883 vous pouvez modifier le Slot associ\'e \`a un volume \`a tout moment grâce \`a la commande 
2884 {\bf update volume} du programme Console. Lorqu'{\bf autochanger} est activ\'ee, 
2885 l'algorithme utilis\'e par Bacula pour rechercher des volumes utilisables est 
2886 modifi\'e de fa\\ 3on \`a prendre en compte tout volume suppos\'e contenu dans la librairie. 
2887 Si aucun volume {\bf in changer} n'est trouv\'e, Bacula tente de recycler, \'elaguer..., 
2888 et s'il ne trouve toujours aucun volume, Bacula recherche un volume pr\'esent ou non 
2889 dans la librairie. Privil\'egier les volumes pr\'esents dans la librairie permet de 
2890 minimiser les interventions d'un op\'erateur. 
2891
2892 Pour que la robotique soit utilis\'ee, vous devez aussi sp\'ecifier {\bf Autochanger = yes} 
2893 dans la ressource \ilink{La Ressource Device}{Autochanger} du fichier de configuration du 
2894 Storage Daemon, ainsi que d'autres param\`etres importants du Storage Daemon. Vous 
2895 trouverez plus d'information \`a ce sujet dans le chapitre 
2896 \ilink{ Utiliser une librairie}{_ChapterStart18} de ce manuel.
2897
2898 \item [Maximum Concurrent Jobs = \lt{}number\gt{}]
2899    \index[dir]{Maximum Concurrent Jobs}
2900    \index[dir]{Directive!Maximum Concurrent Jobs}
2901 O\`u \lt{}number\gt{} est le nombre maximum de jobs utilisant la 
2902 ressource Storage courante qui peuvent \^etre ex\'ecut\'es simultan\'ement. Notez que cette 
2903 directive ne limite que les jobs qui utilisent ce Storage Daemon. Toute autre 
2904 limitation du nombre maximum de jobs simultan\'es au niveau des ressources 
2905 Director, Job ou Client est aussi appliqu\'ee en plus de celle fix\'ee ici. La valeur 
2906 par d\'efaut est 1, mais vous pouvez utiliser une valeur plus importante. Nous vous 
2907 recommandons fortement de lire les MISES EN GARDE de la section \ilink{ Maximum Concurrent
2908 Jobs}{DirMaxConJobs} du chapitre Configurer le Director.
2909
2910 Alors qu'il est possible de d\'efinir des nombres maximum de jobs simultan\'es sup\'erieurs 
2911 \`a 1 dans les ressource Director, Job et Client, vous devriez porter une attention 
2912 particuli\`ere au param\'etrage de cette directive pour le Storage Daemon. En conservant 
2913 la valeur 1, vous \'evitez que deux jobs \'ecrivent simultan\'ement sur le m\^eme volume ce qui, 
2914 quoique support\'e, n'est pas recommand\'e actuellement.
2915 \end{description}
2916
2917 Voici un exemple de ressource Storage valide :
2918
2919 \footnotesize
2920 \begin{verbatim}
2921 # Definition of tape storage device
2922 Storage {
2923   Name = DLTDrive
2924   Address = lpmatou
2925   Password = storage_password # password for Storage daemon
2926   Device = "HP DLT 80"    # same as Device in Storage daemon
2927   Media Type = DLT8000    # same as MediaType in Storage daemon
2928 }
2929 \end{verbatim}
2930 \normalsize
2931
2932 \subsection*{La ressource Pool}
2933 \label{PoolResource}
2934 \index[general]{Resource!Pool }
2935 \index[general]{Pool Resource }
2936 \addcontentsline{toc}{subsection}{Pool Resource}
2937 La ressource Pool d\'efinit l'ensemble des volumes de stockage (cartouches ou fichiers) 
2938 \`a la disposition de Bacula pour \'ecrire les donn\'ees. En configurant diff\'erents 
2939 Pools, vous pouvez d\'eterminer quel ensemble de volumes (ou m\'edia) re\\ 3oit les 
2940 donn\'ees sauvegard\'ees. Ceci permet, par exemple, de stocker toutes les sauvegardes 
2941 Full sur un ensemble de volumes, et les sauvegardes diff\'erentielles et 
2942 incr\'ementales sur un autre. De m\^eme, vous pouvez assigner un ensemble de volumes 
2943 \`a chaque machine sauvegard\'ee. Tout ceci peut \^etre r\'ealis\'e ais\'ement en d\'efinissant 
2944 plusieurs pools.
2945
2946 Un autre aspect important d'un pool est qu'il contient des attributs par d\'efaut 
2947 (Nombre maximum de jobs, p\'eriode de r\'etention, drapeau de recyclage,...) qui sont 
2948 conf\'er\'es \`a tout volume lui appartenant lors de sa cr\'eation. Ceci vous \'evite d'avoir 
2949 \`a r\'epondre \`a un grand nombre de questions lorsque vous \'etiquettez (label) un nouveau 
2950 volume. Chacun de ces attributs peut ensuite \^etre modifi\'e sur chaque volume 
2951 individuellement avec la commande {\bf update} du programme Console. Notez que 
2952 vous devez pr\'eciser explicitement quel pool est \`a utiliser avec chaque job. Bacula 
2953 ne recherche pas automatiquement le pool correct.
2954
2955 Dans la plupart des installations de Bacula, toutes les sauvegardes de toutes 
2956 les machines vont vers un unique jeu de volumes. Dans ce cas, vous n'utiliserez 
2957 probablement que le pool par d\'efaut {\bf Default}. Si votre strat\'egie de 
2958 sauvegarde vous impose \`a monter chaque jour une cartouche diff\'erente, vous voudrez 
2959 probablement d\'efinir des pools distincts pour chaque jour. Pour plus d'informations 
2960 \`a ce sujet, consultez le chapitre \ilink{Strat\'egies de sauvegarde}{_ChapterStart3} 
2961 de ce manuel.
2962
2963 Pour utiliser un pool, vous devez suivre trois \'etapes :
2964
2965 D'abord, le pool doit 
2966 \^etre d\'efini dans le fichier de configuration du Director. Ensuite le pool doit 
2967 \^etre enregistr\'e dans le catalogue. Ceci est fait automatiquement par le Director 
2968 \`a chaque fois qu'il d\'emarre, ou peut \^etre r\'ealis\'e manuellement \`a l'aide de la 
2969 commande {\bf create} du programme Console. Enfin, si vous modifiez la d\'efinition 
2970 du pool dans le fichier de configuration du Director et red\'emarrez Bacula, 
2971 le pool sera mis \`a jour automatiquement, ce qui peut aussi \^etre r\'ealis\'e 
2972 manuellement avec la commande {\bf update pool} du programme Console pour 
2973 rafraichir l'image du catalogue. C'est cette image du catalogue plut\^ot 
2974 que l'image de la ressource du Director qui est utilis\'ee pour les attributs 
2975 de volume par d\'efaut. Notez que pour que le pool soit automatiquement 
2976 cr\'e\'e ou mis \`a jour, il doit \^etre r\'ef\'erenc\'e explicitement par une ressource Job.
2977
2978 Ensuite le m\'edium physique doit \^etre \'etiquett\'e. L'\'etiquettage peut \^etre r\'ealis\'e 
2979 soit par la commande {\bf label} du programme Console, soit en utilisant le 
2980 programme {\bf btape}. La m\'ethode \`a privil\'egier est la premi\`ere.
2981
2982 Finallement, vous devez ajouter des noms de volumes (et leurs attributs) au 
2983 pool. Pour que les volumes soient utilis\'es par Bacula, ils doivent \^etre 
2984 du m\^eme {\bf Media Type} que l'Archive Device sp\'ecifi\'ee pour le job. 
2985 (Autrement dit, si vous vous appr\'etez \`a sauvegarder vers un lecteur DLT, 
2986 le pool doit contenir des volumes DLT, puisque des volumes 8mm ne peuvent 
2987 \^etre mont\'es sur un lecteur DLT). Le {\bf Media Type} rev\^et une importance 
2988 particuli\`ere si vous sauvegardez vers des fichiers. Lorsque vous ex\'ecutez 
2989 un job, vous devez explicitement pr\'eciser le pool. Bacula s\'electionne d\`es lors 
2990 automatiquement le prochain volume du pool \`a utiliser, en s'assurant que le 
2991 {\bf Media Type} de tout volume s\'electionn\'e est bien celui requis par la 
2992 ressource Storage sp\'ecifi\'ee pour le job.
2993
2994 Si vous utilisez la commande {\bf label} du programme Console pour 
2995 \'etiquetter les volumes, il sont automatiquement ajout\'es au pool, aussi cette 
2996 derni\`ere \'etape n'est g\'en\'eralement pas requise.
2997
2998 Il est aussi possible d'ajouter des volumes au catalogue sans avoir 
2999 explicitement \'etiquett\'e les volumes physiques. Ceci s'effectue avec la commande 
3000 {\bf add} du programme Console.
3001
3002 Comme mentionn\'e plus haut, \`a chaque d\'emarrage, Bacula examine tous les pools 
3003 associ\'es \`a chaque catalogue, et si un enregistrement n'existe pas encore, il 
3004 est cr\'e\'e \`a partir de la d\'efinition du pool dans la ressource. Bacula devrait 
3005 probablement effectuer un {\bf update pool} si vous modifiez la d\'efinition 
3006 du pool mais, actuellement, vous devez le faire manuellement avec la 
3007 commande {\bf update pool} du programme Console.
3008
3009 La ressource Pool d\'efinie dans le fichier de configuration du Director peut 
3010 contenir les directives suivantes :
3011
3012
3013 \begin{description}
3014
3015 \item [Pool]
3016    \index[dir]{Pool}
3017    \index[dir]{Directive!Pool}
3018 D\'ebut de la ressource Pool. Il faut d\'efinir au moins une ressource Pool.
3019
3020 \item [Name = \lt{}name\gt{}]
3021    \index[dir]{Name}
3022    \index[dir]{Directive!Name}
3023 Le nom du pool. Pour la plupart des applications, vous utiliserez le pool 
3024 par d\'efaut nomm\'e {\bf Default}. Cette directive est requise.
3025
3026 \item [Number of Volumes = \lt{}number\gt{}]
3027    \index[dir]{Number of Volumes  }
3028 Cette directive sp\'ecifie le nombre de volumes (cartouches ou fichiers) contenus 
3029 dans le pool. En principe, il est d\'efini et mis \`a jour automatiquement par la 
3030 routine de maintenance du catalogue de Bacula.
3031 \label{MaxVolumes}
3032
3033 \item [Maximum Volumes = \lt{}number\gt{}]
3034    \index[dir]{Maximum Volumes}
3035     \index[dir]{Directive!Maximum Volumes}
3036 Cette directive sp\'ecifie le nombre maximum de volumes contenus dans le pool.
3037 Cette directive est optionnelle. Si elle est omise ou r\'egl\'ee \`a 0, tout nombre 
3038 de volumes est permis. En g\'en\'eral, cette directive est utile pour les librairies, 
3039 o\`u il y a un nombre fix\'e de volumes, ou pour le stockage sur fichier si vous voulez 
3040 vous assurer que les sauvegardes sur disque ne deviennent pas trop nombreuses ou ne 
3041 consomment pas trop d'espace.
3042
3043 \item [Pool Type = \lt{}type\gt{}]
3044    \index[dir]{Pool Type  }
3045    \index[dir]{Directive!Pool Type}
3046 Cette directive d\'efinit le type du pool, qui correspond au type du job 
3047 ex\'ecut\'e. Cette directive est requise et peut prendre l'une des valeurs suivantes :
3048
3049 \begin{itemize}
3050 \item [Backup]  
3051 \item [*Archive]  
3052 \item [*Cloned]  
3053 \item [*Migration]  
3054 \item [*Copy]  
3055 \item [*Save]  
3056    \end{itemize}
3057
3058 \item [Use Volume Once = \lt{}yes|no\gt{}]
3059    \index[dir]{Use Volume Once}
3060    \index[dir]{Directive!Use Volume Once}
3061 Cette directive, si elle est active (valeur {\bf yes}) stipule que chaque volume 
3062 ne doit \^etre utilis\'e qu'une seule fois. C'est particuli\`erement utile si le 
3063 volume est un fichier et si vous voulez un nouveau fichier pour chaque nouvelle 
3064 sauvegarde. La valeur par d\'efaut est {\bf no} (autrement dit, les volumes peuvent 
3065 \^etre utilis\'es plusieurs fois). Cette directive sera tr\`es certainement bient\^ot 
3066 obsol\`ete, aussi nous vous recommandons d'utiliser {\bf Maximum Volume Jobs = 1} 
3067 \`a la place.
3068    
3069 La valeur d\'efinie par cette directive dans le fichier de 
3070 configuration du Director est la valeur par d\'efaut utilis\'ee lorsqu'un nouveau 
3071 volume est cr\'e\'e. Modifier la valeur dans le fichier de configuration ne changera 
3072 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume 
3073 existant, vous devez utiliser la commande {\bf update} du programme Console.
3074
3075 \item [Maximum Volume Jobs = \lt{}positive-integer\gt{}]
3076    \index[dir]{Maximum Volume Jobs}
3077    \index[dir]{Directive!Maximum Volume Jobs}
3078 Cette directive sp\'ecifie le nombre maximum de jobs qui peuvent \^etre \'ecrits sur le volume. 
3079 La valeur par d\'efaut est z\'ero, ce qui signifie que le nombre de jobs sur un volume 
3080 n'est pas limit\'e. Sinon, lorsque le nombre de jobs sauvegard\'es sur le volume atteint 
3081 la valeur {\bf positive-integer} sp\'ecifi\'ee, le volume est marqu\'e {\bf Used}. D\`es lors, 
3082 il ne peut plus \^etre utilis\'e pour y ajouter des jobs, tout comme dans le cas d'un volume 
3083 avec le statut {\bf Full}, mais il peut \^etre recycl\'e si le recyclage est activ\'e. En 
3084 sp\'ecifiant {\bf MaximumVolumeJobs = 1} vous obtenez le m\^eme effet que celui que vous 
3085 obtiendriez avec {\bf UseVolumeOnce = yes}.
3086
3087 Notez que la valeur d\'efinie par cette directive dans le fichier de configuration du 
3088 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois 
3089 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3090 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3091 existant, vous devez utiliser la commande {\bf update} du programme Console.
3092
3093 \item [Maximum Volume Files = \lt{}positive-integer\gt{}]
3094    \index[dir]{Maximum Volume Files}
3095    \index[dir]{Directive!Maximum Volume Files}
3096 Cette directive sp\'ecifie le nombre maximum de fichiers qui peuvent \^etre \'ecrits sur 
3097 le volume. La valeur par d\'efaut est z\'ero, ce qui signifie que le nombre de fichiers 
3098 sur un volume n'est pas limit\'e. Sinon, lorsque le nombre de fichiers sauvegard\'es sur 
3099 le volume atteint la valeur {\bf positive-integer} sp\'ecifi\'ee, le volume est marqu\'e 
3100 {\bf Used}. D\`es lors, il ne peut plus \^etre utilis\'e pour y ajouter des jobs, tout comme 
3101 dans le cas d'un volume avec le statut {\bf Full}, mais il peut \^etre recycl\'e si le 
3102 recyclage est activ\'e. Ce n'est qu'\`a la fin d'un job que Cette valeur est control\'ee, 
3103 et que le statut du volume est \'eventuellement chang\'e en {\bf Used}.
3104
3105 La valeur d\'efinie par cette directive dans le fichier de configuration du
3106 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3107 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3108 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3109 existant, vous devez utiliser la commande {\bf update} du programme Console.
3110
3111 \item [Maximum Volume Bytes = \lt{}size\gt{}]
3112    \index[dir]{Maximum Volume Bytes}
3113    \index[dir]{Directive!Maximum Volume Bytes}
3114 Cette directive sp\'ecifie le nombre maximum d'octets qui peuvent \^etre \'ecrits sur le 
3115 volume. La valeur par d\'efaut est z\'ero, ce qui signifie qu'il n'y a d'autre limite 
3116 que la capacit\'e physique du volume. Sinon, lorsque le nombre d'octets sauvegard\'es sur 
3117 le volume atteint la valeur {\bf size} sp\'ecifi\'ee, le volume est marqu\'e 
3118 {\bf Used}. D\`es lors, il ne peut plus \^etre utilis\'e pour y ajouter des jobs, tout comme 
3119 dans le cas d'un volume avec le statut {\bf Full}, mais il peut \^etre recycl\'e si le 
3120 recyclage est activ\'e. Ce n'est qu'\`a la fin d'un job que Cette valeur est control\'ee,
3121 et que le statut du volume est \'eventuellement chang\'e en {\bf Used}.
3122
3123 La valeur d\'efinie par cette directive dans le fichier de configuration du
3124 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3125 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3126 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3127 existant, vous devez utiliser la commande {\bf update} du programme Console.
3128
3129 \item [Volume Use Duration = \lt{}time-period-specification\gt{}]
3130    \index[dir]{Volume Use Duration}
3131    \index[dir]{Directive!Volume Use Duration}
3132 Cette directive d\'efinit la p\'eriode durant laquelle le volume peut \^etre utilis\'e en 
3133 \'ecriture, \`a compter de la premi\`ere op\'eration d'\'ecriture de donn\'ees. 
3134 La valeur par d\'efaut est z\'ero, ce qui signifie que le volume peut \^etre \'ecrit 
3135 ind\'efiniment . Sinon, lorsque la dur\'ee depuis la premi\`ere \'ecriture exc\`ede la p\'eriode 
3136 {\bf time-period-specification} sp\'ecifi\'ee, le volume est marqu\'e
3137 {\bf Used}. D\`es lors, il ne peut plus \^etre utilis\'e pour y ajouter des jobs, tout comme
3138 dans le cas d'un volume avec le statut {\bf Full}, mais il peut \^etre recycl\'e si le
3139 recyclage est activ\'e. L'usage de la commande {\bf status dir} applique des algorithmes 
3140 similaires \`a l'\'execution de jobs, aussi lors d'une telle commande, le statut du volume 
3141 peut \^etre modifi\'e. Lorsque le volume est recycl\'e, il peut \`a nouveau \^etre utilis\'e.
3142
3143 Vous pourriez utiliser cette directive, par exemple, si vous avez un volume d\'edi\'e 
3144 aux sauvegardes incr\'ementales, et un volume d\'edi\'e aux Fulls hebdomadaires. Une fois que 
3145 la Full est pass\'ee, vous pouvez pr\'ef\'erer utiliser un autre volume pour les incr\'ementales. 
3146 Ceci peut \^etre accompli en r\`eglant la p\'eriode {\bf Volume Use Duration} \`a six jours pour 
3147 les volumes des incr\'ementales. Autrement dit, celui-ci sera utilis\'e durant les six jours 
3148 qui suivent une full, puis un autre volume d'incr\'ementales sera utilis\'e. Veillez \`a utiliser 
3149 des p\'eriodes relativement courtes telles que 23 heures, ou vous pourriez placer Bacula en situation 
3150 de devoir attendre tout un week-end le montage d'une cartouche par l'op\'erateur pour pouvoir terminer 
3151 une sauvegarde.
3152
3153 Ce n'est qu'\`a la fin d'un job que Cette valeur est control\'ee,
3154 et que le statut du volume est \'eventuellement chang\'e en {\bf Used}, ce qui signifie que 
3155 bien que la p\'eriode {\bf Volume Use Duration} puisse avoir expir\'e, l'entr\'ee correspondante 
3156 du catalogue ne sera pas mise \`a jour jusqu'\`a ce que le prochain job utilisant ce 
3157 volume soit ex\'ecut\'e.
3158
3159 La valeur d\'efinie par cette directive dans le fichier de configuration du
3160 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3161 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3162 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3163 existant, vous devez utiliser la commande \ilink{\bf update volume}{UpdateCommand} du 
3164 programme Console.
3165
3166 \item [Catalog Files = \lt{}yes|no\gt{}]
3167    \index[dir]{Catalog Files}
3168    \index[dir]{Directive!Catalog Files}
3169 Cette directive pr\'ecise si les noms des fichiers sauvegard\'es doivent ou non \^etre 
3170 enregistr\'es dans le catalogue. La valeur par d\'efaut est {\bf yes}. L'avantage de 
3171 d\'esactiver cette option ({\bf Catalog Files = No}) est d'avoir un catalogue 
3172 significativement plus petit. L'inconv\'enient est de ne pas pouvoir produire de 
3173 liste des fichiers sauvegard\'es pour chaque job \`a partir du catalogue (autrement 
3174 dit, vous ne pourrez naviguer dans les fichiers sauvegard\'es). Ainsi, sans les 
3175 enregistrements de fichiers, vous ne pourrez utiliser la commande {\bf restore}, 
3176 ni aucune des autres commandes du programme Console qui se r\'ef\`erent aux 
3177 enregistrements de fichiers.
3178
3179 \label{PoolAutoPrune}
3180
3181 \item [AutoPrune = \lt{}yes|no\gt{}]
3182    \index[dir]{AutoPrune}
3183    \index[dir]{Directive!AutoPrune}
3184 Si AutoPrune est activ\'ee ({\bf yes}), ce qui est le cas par d\'efaut, Bacula 
3185 (depuis la version 1.20) applique automatiquement la p\'eriode de r\'etention des 
3186 volumes lorsqu'un nouveau volumes est requis ou lorsqu'il n'existe aucun volume 
3187 utilisable dans le pool. L'\'elagage des volumes consiste \`a supprimer du catalogue 
3188 les jobs expir\'es (ceux qui sont plus anciens que la p\'eriode de r\'etention), et rend 
3189 possible le recyclage de ces volumes
3190
3191 \label{VolRetention}
3192
3193 \item [Volume Retention = \lt{}time-period-specification\gt{}]
3194    \index[dir]{Volume Retention}
3195    \index[dir]{Directive!Volume Retention}
3196 La directive Volume Retention d\'efinit la p\'eriode durant laquelle {\bf Bacula} 
3197 conserve les enregistrements Job associ\'es au volume dans le catalogue. 
3198 Lors de l'expiration de cette p\'eriode, si {\bf AutoPrune} est activ\'ee, Bacula 
3199 peut supprimer les enregistrements Job plus anciens que la p\'eriode {\bf time-period-specification} 
3200 sp\'ecifi\'ee s'il est n\'ecessaire de lib\'erer un volume. Tous les enregistrements de fichiers 
3201 associ\'es \`a des jobs supprim\'es sont aussi supprim\'es. Les dur\'ees peuvent \^etre exprim\'ees 
3202 en secondes, minutes, heures, jours, semaines, mois, trimestres ou ann\'ees. 
3203 La p\'eriode {\bf Volume Retention} s'applique ind\'ependamment des p\'eriodes {\bf Job Retention} 
3204 et {\bf File Retention} d\'efinies dans la ressource Client. Ceci signifie que la 
3205 p\'eriode la plus courte est celle qui s'applique.Notez bien que lorsque la p\'eriode 
3206 {\bf Volume Retention} a \'et\'e atteinte les enregistrements de Job et ceux de fichiers 
3207 sont supprimm\'es les uns et les autres.
3208 Cet \'elagage peut aussi se produire \`a l'ex\'ecution de la commande {\bf status dir} car elle 
3209 applique des algorithmes similaires \`a ceux utilis\'es pour d\'eterminer le prochain volume 
3210 disponible.
3211
3212 Il est important de savoir que lorsque la p\'eriode Volume Retention expire, 
3213 Bacula ne recycle pas syst\'ematiquement le volume concern\'e. Il tente de conserver 
3214 les donn\'ees intactes aussi longtemps que possible avant d'\'ecrire sur ce volume.
3215
3216 La valeur par d\'efaut est 365 jours. Notez que cette directive r\`egle la valeur par 
3217 d\'efaut pour chaque enregistrement de volume du catalogue lorsque le volume 
3218 est cr\'e\'e. Cette valeur du catalogue peut ensuite \^etre modifi\'ee avec la commande 
3219 {\bf update } du programme Console.
3220
3221 En d\'efinissant plusieurs pools avec diff\'erentes p\'eriodes de r\'etention (volume 
3222 retention), vous pouvez efficacement g\'erer vos cartouches avec, par exemple 
3223 un pool de cartouches recycl\'e chaque semaine, un autre recycl\'e chaque mois, et 
3224 ainsi de suite. Cependant, il faut bien garder \`a l'esprit que si votre p\'eriode 
3225 de r\'etention {\bf Volume Retention} est trop courte, il peut arriver que votre 
3226 derni\`ere sauvegarde Full valide soit supprim\'ee, de sorte que vous n'ayez plus 
3227 une sauvegarde compl\`ete de votre syst\`eme, et que votre prochaine incr\'ementale 
3228 soit \'elev\'ee en une Full. Par cons\'equent, la valeur minimum de la p\'eriode 
3229 {\bf Volume Retention} devrait \^etre au moins le double de l'intervalle 
3230 s\'eparant vos Fulls. Autrement dit, pour des Fulls mensuelles, la p\'eriode 
3231 {\bf Volume Retention} devrait \^etre sup\'erieure ou \'egale \`a deux mois.
3232
3233 Notez que la valeur d\'efinie par cette directive dans le fichier de configuration du
3234 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3235 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3236 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3237 existant, vous devez utiliser la commande {\bf update} du programme Console.
3238
3239 \label{PoolRecycle}
3240
3241 \item [Recycle = \lt{}yes|no\gt{}]
3242    \index[dir]{Recycle}
3243    \index[dir]{Directive!Recycle}
3244 Cette directive sp\'ecifie la valeur par d\'efaut pour le recyclage des volumes purg\'es.
3245 Si elle est activ\'ee ({\bf yes}) et si Bacula a besoin d'un volume mais n'en trouve 
3246 aucun utilisable, il recherche alors les volumes purg\'es (c'est \`a dire ceux dont tous 
3247 les jobs et fichiers ont expir\'e et ont, de fait, \'et\'e supprim\'es du catalogue). Si un 
3248 volume est recycl\'e, toutes les donn\'ees pr\'ecedemment \'ecrites sur ce volumes seront 
3249 \'ecras\'ees. Si le recyclage est d\'esactiv\'e ({\bf no}), le volume ne sera pas recycl\'e, et ainsi 
3250 les donn\'ees resteront valides. Si vous souhaitez r\'eutiliser un volume dont le drapeau de 
3251 recyclage est no (0 dans le catalogue), vous devez manuellement le changer en yes (commande 
3252 update).
3253
3254 Notez que la valeur d\'efinie par cette directive dans le fichier de configuration du
3255 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3256 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3257 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3258 existant, vous devez utiliser la commande {\bf update} du programme Console.
3259
3260 \label{RecycleOldest}
3261
3262 \item [Recycle Oldest Volume = \lt{}yes|no\gt{}]
3263    \index[dir]{Recycle Oldest Volume}
3264    \index[dir]{Directive!Recycle Oldest Volume}
3265 Cette directive indique au Director de rechercher le volume le plus ancien 
3266 du pool lorsq'un nouveau est requis par le Storage Daemon et qu'aucun autre 
3267 n'est disponible. Le catalog est alors {\bf \'elagu\'e} dans le respect des 
3268 p\'eriodes {\bf Job}, {\bf File} et {\bf Volume Retention}, c'est pourquoi cette 
3269 directive est, de {\bf tr\`es} loin, pr\'ef\'erable \`a directive Purge Oldest Volume. 
3270
3271 Cette directive peut \^etre utile si vous avez un nombre fixe de volumes dans 
3272 un pool et que vous voulez cycler sur ces volumes apr\`es avoir sp\'ecifi\'e 
3273 les p\'eriodes de r\'etention qui conviennent.  
3274
3275 \label{RecycleCurrent}
3276
3277 \item [Recycle Current Volume = \lt{}yes|no\gt{}]
3278    \index[dir]{Recycle Current Volume}
3279    \index[dir]{Directive!Recycle Current Volume}
3280 Si Bacula a besoin d'un nouveau volume, cette directive lui indique d'\'elaguer 
3281 le volume dans le respect des p\'eriodes {\bf Job}, {\bf File} et 
3282 {\bf Volume Retention}. Si tous les jobs sont \'elagu\'es, (c'est \`a dire si le 
3283 volume est purg\'e), alors le volume est recycl\'e et sera utilis\'e pour la 
3284 prochaine op\'eration d'\'ecriture. Cette directive respecte toutes les 
3285 p\'eriodes {\bf Job}, {\bf File} et {\bf Volume Retention}, c'est pourquoi 
3286 elle est , de {\bf tr\`es} loin, pr\'ef\'erable \`a la directive Purge Oldest Volume.
3287
3288 Cette directive peut \^etre utile si vous avez un nombre fixe de volumes dans
3289 un pool et que vous voulez cycler sur ces volumes apr\`es avoir sp\'ecifi\'e
3290 les p\'eriodes de r\'etention qui \'elaguent les volumes avant que vous n'ayez 
3291 termin\'e le cycle sur les volumes.
3292
3293 \label{PurgeOldest}
3294
3295 \item [Purge Oldest Volume = \lt{}yes|no\gt{}]
3296    \index[dir]{Purge Oldest Volume}
3297    \index[dir]{Directive!Purge Oldest Volume}
3298 Cette directive indique au Director de rechercher le volume utilis\'e le plus 
3299 ancien dans le pool lorsqu'un nouveau volume est requis par le Storage 
3300 Daemon et qu'aucun n'est disponible. Le catalogue est alors purg\'e sans 
3301 \'egards pour les p\'eriodes de r\'etention des fichiers et jobs \'ecrits sur ce 
3302 volume. Le volume est alors recycl\'e pour \^etre utilis\'e pour la prochaine 
3303 op\'eration d'\'ecriture. Cette directive outrepasse toute p\'eriode de r\'etention 
3304 (Job,  File, ou Volume) que vous avez pu sp\'ecifier par ailleurs.
3305
3306 Cette directive peut \^etre utile si vous avez un nombre fixe de volumes dans
3307 un pool et que vous voulez cycler sur ces volumes lorsque tous les volumes 
3308 sont pleins, sans avoir \`a vous soucier de param\'etrer les p\'eriodes de 
3309 r\'etentions qui conviendraient. Cependant, en l'utilisant, vous courrez le 
3310 risque de perdre toutes vos donn\'ees.
3311
3312 {\bf Soyez conscient que {\bf Purge Oldest Volume} ne fait aucun cas d'aucune 
3313 p\'eriode de r\'etention.} Si vous activez cette directive alors que vous ne poss\'edez 
3314 qu'un seul volume, ce volume sera syst\'ematiquement \'ecras\'e tout de suite apr\`es 
3315 avoir \'et\'e rempli ! Aussi, assurez vous au moins d'avoir un nombre d\'ecent de 
3316 volumes dans votre pool avant d'ex\'ecuter un job. Si vous voulez que les p\'eriodes 
3317 de r\'etention soient prises en compte, n'utilisez pas cette directive. Pour 
3318 sp\'ecifier une p\'eriode de r\'etention, utilisez la directive {\bf Volume Retention} 
3319 (voir ci dessus).
3320
3321 Je recommande fortement de ne pas utiliser cette directive, car il est certain que 
3322 t\^ot ou tard, Bacula recyclera un volume contenant des donn\'ees valides et r\'ecentes.
3323 La valeur par d\'efaut est {\bf no}
3324
3325 \item [Cleaning Prefix = \lt{}string\gt{}]
3326    \index[dir]{Cleaning Prefix}
3327    \index[dir]{Directive!Cleaning Prefix}
3328 Cette directive d\'efinit un pr\'efixe qui, s'il correspond au d\'ebut du nom d'un 
3329 volume lors de son \'etiquettage, indique \`a Bacula que le volume en question est 
3330 une cartouche de nettoyage, qui aura le statut {\bf VolStatus = Cleaning}. 
3331 Ainsi Bacula ne tentera jamais d'utiliser cette cartouche. Cette option est 
3332 particuli\`erement utile avec les librairies \'equip\'ees de lecteurs de codes barres o\`u, 
3333 conventionnellement, les codes barres commen\\ 3ant par {\bf CLN} sont trait\'es en 
3334 tant que cartouches de nettoyage.
3335
3336 \label{Label}
3337
3338 \item [Label Format = \lt{}format\gt{}]
3339    \index[dir]{Label Format}
3340    \index[dir]{Directive!Label Format}
3341 Cette directive pr\'ecise le format des \'etiquettes des volumes de ce pool. 
3342 La directive {\bf Format} est utilis\'ee comme un patron pour cr\'eer de nouveaux 
3343 noms de volumes lors de l'\'etiquettage automatique.
3344
3345 Le {\bf format} devrait \^etre sp\'ecifi\'e entre guillemets, et consiste en une 
3346 cha\^ine de lettres, chiffres et caract\`eres sp\'eciaux tiret  ({\bf -}), soulign\'e 
3347 ({\bf \_}), double point ({\bf :}) et point ({\bf .}), qui sont consid\'er\'es valides 
3348 pour un nom de volume.
3349
3350 De plus, le {\bf format} peut comporter des caract\`eres variables qui seront 
3351 substitu\'ees par un algorithme complexe, ce qui permet de cr\'eer des noms de volumes 
3352 avec plusieurs formats diff\'erents. En tous les cas, le processus d'expansion des 
3353 variables doit aboutir au jeu de caract\`eres d\'efinis comme l\'egaux dans le 
3354 dernier paragraphe. G\'en\'eralement, ces caract\`eres variables commencent par 
3355 un signe dollar ({\bf \$}) ou un crochet droit  ({\bf [}). Si vous sp\'ecifiez 
3356 des caract\`eres variables vous devriez toujours les encadrer de guillemets. 
3357 Pour plus de d\'etails sur ce sujet, veuillez consulter le chapitre 
3358 \ilink{Variable Expansion}{_ChapterStart50} de ce manuel.
3359
3360 Si aucun caract\`ere variable n'est d\'ecouvert dans la cha\^ine, le nom de volume 
3361 sera constitu\'e de la cha\^ine {\bf format} suffix\'ee du nombre de volumes dans le 
3362 pool plus un, au format 4 chiffres et avec des z\'eros en t\^ete. Par exemple, 
3363 avec {\bf Label Format = ''File-``}, les volumes seront nomm\'es 
3364 {\bf File-0001}, {\bf File-0002}, ...
3365
3366 Exception faite des variables sp\'ecifiques aux jobs, vous pouvez tester votre 
3367 {\bf LabelFormat} en utilisant la section \ilink{ var command}{var} du 
3368 chapitre Console de ce manuel.
3369
3370 Dans la plupart des cas, vous devriez encadrer la sp\'ecification de format (la 
3371 partie \`a droite du signe \'egale) entre guillemets. Notez que cette directive est 
3372 obsol\`ete et qu'elle est remplac\'ee, \`a partir de la version 1.37 par un script Python 
3373 pour la cr\'eation des noms de volumes.
3374
3375 \end{description}
3376
3377 Pour qu'un pool puisse \^etre utilis\'e lors d'une sauvegarde, il faut qu'il lui soit 
3378 associ\'e au moins un volume. Les volumes sont cr\'e\'es et affect\'es aux pools avec les 
3379 commandes {\bf label} ou {\bf add} du programme {\bf Bacula Console}. Outre 
3380 l'affectation du volume au pool (c'est \`a dire son r\'ef\'erencement 
3381 dans le catalogue), le volume physique doit recevoir une \'etiquette logicielle 
3382 valide pour que Bacula l'accepte. Ceci peut \^etre r\'ealis\'e automatiquement grâce 
3383 \`a la commande {\bf label}. D'autre part, Bacula peut effectuer cette op\'eration 
3384 automatiquement si l'instruction lui en est donn\'e, mais cette fonctionnalit\'e 
3385 n'est pas encore pleinement impl\'ement\'ee.
3386
3387 Voici un exemple d'une d\'efinition de ressource Pool valide :
3388
3389 \footnotesize
3390 \begin{verbatim}
3391  
3392 Pool {
3393   Name = Default
3394   Pool Type = Backup
3395 }
3396 \end{verbatim}
3397 \normalsize
3398
3399 \subsubsection*{Le Scratch Pool}
3400 \addcontentsline{toc}{subsection}{Scratch Pool}
3401 \index[general]{Scratch Pool}
3402 En g\'en\'eral, vous pouvez nommer vos pool \`a votre guise, il existe cependant 
3403 une importante restriction : le pool nomm\'e {\bf Scratch}, s'il existe, 
3404 se comporte comme une r\'eserve de volumes o\`u Bacula pourra puiser s'il ne trouve 
3405 aucun volume utilisable dans le pool normalement utilis\'e par le job. Le volume 
3406 est alors d\'eplac\'e du pool Scratch vers le pool en d\'efaut.
3407
3408 \subsection*{La ressource Catalog}
3409 \label{CatalogResource}
3410 \index[general]{Resource!Catalog }
3411 \index[general]{Ressource Catalog}
3412 \addcontentsline{toc}{subsection}{La ressource Catalog}
3413
3414 La ressource Catalog pr\'ecise quel catalogue utiliser pour le job courant. 
3415 Actuellement, Bacula ne peut utiliser qu'un type de serveur de bases de 
3416 donn\'ees d\'efini lors de sa configuration : SQLite, MySQL, PostgreSQL. 
3417 En revanche, vous pouvez utiliser autant de 
3418 catalogues que vous le souhaitez. Par exemple, vous pouvez avoir un 
3419 catalogue par client, ou encore un catalogue pour les sauvegardes, un autre 
3420 pour les jobs de type Verify et un troisi\`eme pour les restaurations.
3421
3422 \begin{description}
3423
3424 \item [Catalog]
3425    \index[dir]{Catalog}
3426    \index[dir]{Directive!Catalog}
3427 D\'ebut de la ressource Catalog. Il faut au moins une ressource Catalogue.
3428
3429 \item [Name = \lt{}name\gt{}]
3430    \index[dir]{Name}
3431    \index[dir]{Directive!Name}
3432 Le nom du Catalog. Il n'a pas besoin d'\^etre en relation avec le nom sur le serveur 
3433 de base de donn\'ees. Ce nom sera repris dans la ressource Client, indiquant ainsi 
3434 que toutes les donn\'ees relatives \`a ce client sont maintenues dans ce catalogue.
3435 Cette directive est requise.*
3436
3437
3438 \item [password = \lt{}password\gt{}]
3439    \index[dir]{password}
3440    \index[dir]{Directive!password}
3441 Cette directive sp\'ecifie le mot de passe \`a utiliser pour se connecter au 
3442 catalogue. Cette directive est requise.
3443
3444 \item [DB Name = \lt{}name\gt{}]
3445    \index[dir]{DB Name}
3446    \index[dir]{Directive!DB Name}
3447 Cette directive sp\'ecifie le nom de la base de donn\'ees. Si vous utilisez plusieurs 
3448 catalogues, vous sp\'ecifiez lequel ici. Si vous utilisez un serveur de bases de 
3449 donn\'ees externe plut\^ot que l'int\'egr\'e, vous devez sp\'ecifier un nom connu du 
3450 serveur (autrement dit, le nom que vous avez utilis\'e lorsque vous avez cr\'e\'e les 
3451 tables Bacula.). Cette directive est requise.
3452
3453 \item [user = \lt{}user\gt{}]
3454    \index[dir]{user}
3455    \index[dir]{Directive!user}
3456 L'utilisateur habilit\'e \`a se connecter au catalogue.  Cette directive est requise.
3457
3458 \item [DB Socket = \lt{}socket-name\gt{}]
3459    \index[dir]{DB Socket}
3460    \index[dir]{Directive!DB Socket}
3461 Il s'agit du nom d'un {\it socket} \`a utiliser sur la machine locale pour se 
3462 connecter au catalogue. Cette directive n'est utilis\'ee que par MySQL, elle est 
3463 ignor\'ee par SQLite. Normalement, si ni {\bf DB Socket}, ni {\bf DB Address} ne sont 
3464 sp\'ecifi\'ees, MySQL utilise le socket par d\'efaut.
3465
3466 \item [DB Address = \lt{}address\gt{}]
3467    \index[dir]{DB Address}
3468    \index[dir]{Directive!DB Address}
3469 Il s'agit de l'adresse du serveur de bases de donn\'ees. En principe, vous  
3470 utiliserez cette directive plut\^ot que {\bf DB Socket} si le serveur de bases de 
3471 donn\'ees est une autre machine. Dans ce cas, vous sp\'ecifierez aussi le port {\bf DB Port}. 
3472 Cette directive n'est utilis\'ee que par MySQL, et ignor\'ee par SQLite. Elle est 
3473 optionnelle.
3474
3475 \item [DB Port = \lt{}port\gt{}]
3476    \index[dir]{DB Port}
3477    \index[dir]{Directive!DB Port}
3478 Cette directive d\'efinit le port \`a utiliser en conjonction avec {\bf DB Address} pour 
3479 acc\'eder au catalogue s'il est h\'eberg\'e sur une autre machine. Elle n'est utilis\'ee que par 
3480  MySQL, et ignor\'ee par SQLite. Elle est optionnelle.
3481
3482 %% \item [Multiple Connections = \lt{}yes|no\gt{}]
3483 %%   \index[dir]{Multiple Connections}
3484 %%   \index[dir]{Directive!Multiple Connections}
3485 %% Par d\'efaut, cette directive est d\'esactiv\'ee, ce qui implique que tous les jobs utilisant  
3486 %% le m\^eme catalogue se partagent une m\^eme  connection au catalogue, et que Bacula n'autorise 
3487 %% qu'un job \`a la fois \`a communiquer. Si vous activez cette directive ({\bf yes}), Bacula 
3488 %% permettra les connection multiples au catalogue, c'est pourquoi la base de donn\'ees 
3489 %% doit supporter le {\it multi thread}. Pour SQLite et PostgreSQL, ce n'est pas un probl\`eme. 
3490 %% Pour MySQL, vous devez vous assurer {\bf attentivement} d'avoir la version {\it multi thread} 
3491 %% de la librairie cliente sur votre syst\`eme. Une fois cette directive activ\'ee, chaque job 
3492 %% disposera de sa propre connection au catalogue, la base de donn\'ees contr\^olant les interactions 
3493 %% entre les diff\'erents jobs. Ceci peut accro\^itre significativement les op\'erations de la 
3494 %% base de donn\'ees si vous ex\'ecutez plusieurs jobs simultan\'es. De plus, pour SQLite et PostgreSQL, 
3495 %% Bacula activera automatiquement les transactions dans la base de donn\'ees. Ceci peut accro\^itre 
3496 %% significativement les insertions d'attributs dans le catalogue, que ce soit pour un job unique 
3497 %% ou pour plusieurs jobs simultan\'es.
3498
3499 %% Cette directive n'a pas \'et\'e test\'ee. Veuillez, s'il vous pla\^it, la tester scrupuleusement avant 
3500 %% de l'activer en production, et nous fournir un retour de vos tests.
3501
3502 \end{description}
3503
3504 Voici un exemple d'une d\'efinition de ressource Catalog valide :
3505
3506 \footnotesize
3507 \begin{verbatim}
3508 Catalog
3509 {
3510   Name = SQLite
3511   dbname = bacula;
3512   user = bacula;
3513   password = ""                       # no password = no security
3514 }
3515 \end{verbatim}
3516 \normalsize
3517
3518 en voici une deuxi\`eme pour un catalogue sur une autre machine :
3519
3520 \footnotesize
3521 \begin{verbatim}
3522 Catalog
3523 {
3524   Name = MySQL
3525   dbname = bacula
3526   user = bacula
3527   password = ""
3528   DB Address = remote.acme.com
3529   DB Port = 1234
3530 }
3531 \end{verbatim}
3532 \normalsize
3533
3534 \subection*{La ressource Messages}
3535 \label{MessagesResource2}
3536 \index[general]{Resource!Messages }
3537 \index[general]{Messages Ressource }
3538 \addcontentsline{toc}{subsection}{Messages Resource}
3539
3540 Pour les d\'etails sur la ressource Messages, veuillez consulter 
3541 le chapitre \ilink{La ressource Messages}{_ChapterStart15} de ce manuel.
3542
3543 \subsection*{La ressource Console}
3544 \label{ConsoleResource1}
3545 \index[general]{Console Resource }
3546 \index[general]{Resource!Console }
3547 \addcontentsline{toc}{subsection}{Console Resource}
3548
3549 A partir de la version 1.33 de Bacula, l'administrateur dispose de trois sortes de 
3550 consoles diff\'erentes pour interagir avec le Director. Ces trois types de consoles 
3551 comportent trois niveaux de s\'ecurit\'e diff\'erents.
3552
3553 \begin{itemize}
3554 \item Le premier type de console est une console {\bf anonyme} ou {\bf par d\'efaut}, 
3555   qui d\'etient tous les privil\`eges. La ressource Console n'est pas requise pour 
3556   ce type puisque le mot de passe est sp\'ecifi\'e dans la ressource Director et par 
3557   cons\'equent, de telles consoles n'ont pas de nom d\'efini par une directive {\bf Name =}. 
3558   C'est le premier type de console impl\'ement\'e dans les versions ant\'erieures \`a 1.33, il 
3559   demeure valide. Sont usage est typiquement r\'eserv\'e aux administrateurs.
3560 \item Le second type de console, apparu avec la version 1.33 est une console "nomm\'ee" 
3561   d\'efinie dans une ressource Console simultan\'ement dans le fichier de configuration du 
3562   Director et dans le fichier de configuration de la Console, les noms et mots de passe 
3563   devant \^etre en conjonction dans ces deux fichiers. 
3564   Ce type de console ne d\'etient absolument aucun privil\`ege, except\'es ceux explicitement 
3565   sp\'ecifi\'es dans la ressource Console du fichier de configuration du Director. 
3566   Ainsi, vous pouvez d\'efinir plusieurs consoles avec des noms et mots de passe distincts 
3567   destin\'ees \`a diff\'erents utilisateurs avec diff\'erents privil\`eges. Par d\'efaut ces consoles 
3568   ne peuvent absolument rien faire. Il vous revient de leur accorder des privil\`eges 
3569   ou plut\^ot des acc\`es aux commandes et ressources en sp\'ecifiant des listes de 
3570   contr\^ole d'acc\`es (ACL) dans la ressource Console du fichier de configuration du 
3571   Director. Les ACLs sont sp\'ecifi\'ees par une directive suivie d'une liste de noms 
3572   d'acc\`es. Vous trouverez des exemples ci-dessous. 
3573 \item Le troisi\`eme type de console est similaire au second en ce qu'il requiert 
3574   une d\'efinition de ressource Console dans le fichier de configuration du
3575   Director et dans le fichier de configuration de la Console. De plus, si le nom de 
3576   la console sp\'ecifi\'e par la directive {\bf Name =} est le m\^eme que le nom du client, 
3577   cette console est autoris\'ee \`a utiliser la commande {\bf SetIP} pour modifier la 
3578   directive Address dans la ressource client du fichier de configuration du
3579   Director en l'adresse IP de la console. Ceci permet aux portables et autres machines 
3580   utilisant DHCP (adresses IP dynamiques) de "notifier" le Director de leur adresse 
3581   IP courante.
3582 \end{itemize}
3583
3584 La ressource Console est optionnelle. Les directives suivantes sont permises 
3585 dans le fichier de configuration du Director.
3586
3587 \begin{description}
3588
3589 \item [Name = \lt{}name\gt{}]
3590    \index[dir]{Name}
3591    \index[dir]{Directive!Name}
3592 Le nom de la console. Ce nom doit \^etre en conjonction avec celui sp\'ecifi\'e 
3593 dans le fichier de configuration de la Console (comme c'est le cas pour les 
3594 d\'efinitions de clients).
3595
3596 \item [Password = \lt{}password\gt{}]
3597    \index[dir]{Password}
3598    \index[dir]{Directive!Password}
3599 Sp\'ecifie le mot de passe qu'une console nomm\'ee doit fournir pour \^etre autoris\'ee. 
3600 Le m\^eme mot de passe doit appara\^itre dans la ressource Console du fichier 
3601 de configuration de la Console. Pour plus de s\'ecurit\'e, le mot de passe n'est 
3602 jamais r\'eellement transmis \`a travers le r\'eseau, mais plut\^ot un code de 
3603 hachage de type {\it challenge response} cr\'e\'e \`a partir du mot de passe. 
3604 Cette directive est requise. Si vous disposez de {\bf /dev/random} ou  {\bf bc} 
3605 sur votre machine, Bacula g\'en\`erera al\'eatoirement ce mot de passe lors du 
3606 processus de configuration, autrement, il sera laiss\'e blanc.
3607
3608 \item [JobACL = \lt{}name-list\gt{}]
3609    \index[dir]{JobACL}
3610    \index[dir]{Directive!JobACL}
3611 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Job 
3612 qui peuvent \^etre acc\'ed\'es par la console. Sans cette directive, la console ne peut 
3613 acc\'eder \`a aucune des ressources Job d\'efinies dans le fichier de configuration 
3614 du Director. Plusieurs ressources Job peuvent \^etre sp\'ecifi\'ees en les s\'eparant par 
3615 des virgules, et/ou en sp\'ecifiant plusieurs directives JobACL. Par exemple, la 
3616 directive peut \^etre sp\'ecifi\'ee ainsi :
3617
3618 \footnotesize
3619 \begin{verbatim}
3620     JobACL = kernsave, "Backup client 1", "Backup client 2"
3621     JobACL = "RestoreFiles"
3622     
3623 \end{verbatim}
3624 \normalsize
3625
3626 Avec cette sp\'ecificaton, la console peut acc\'eder aux ressources du Director pour 
3627 les quatre jobs d\'esign\'es par la directive JobACL, et uniquement \`a eux.
3628
3629 \item [ClientACL = \lt{}name-list\gt{}]
3630    \index[dir]{ClientACL}
3631    \index[dir]{Directive!ClientACL}
3632 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Client 
3633 iaccessibles par la console.
3634
3635 \item [StorageACL = \lt{}name-list\gt{}]
3636    \index[dir]{StorageACL}
3637    \index[dir]{Directive!StorageACL}
3638 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Storage 
3639 accessibles par la console.
3640
3641 \item [ScheduleACL = \lt{}name-list\gt{}]
3642    \index[dir]{ScheduleACL}
3643    \index[dir]{Directive!ScheduleACL}
3644 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Schedule
3645 accessibles par la console.
3646
3647 \item [PoolACL = \lt{}name-list\gt{}]
3648    \index[dir]{PoolACL}
3649    \index[dir]{Directive!PoolACL}
3650 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Pool
3651 accesibles ar la console.
3652
3653 \item [FileSetACL = \lt{}name-list\gt{}]
3654    \index[dir]{FileSetACL}
3655    \index[dir]{Directive!FileSetACL}
3656 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources FileSet
3657 accessibles par la console.
3658
3659 \item [CatalogACL = \lt{}name-list\gt{}]
3660    \index[dir]{CatalogACL}
3661    \index[dir]{Directive!CatalogACL}
3662 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Catalog
3663 accessibles par la console.
3664
3665 \item [CommandACL = \lt{}name-list\gt{}]
3666    \index[dir]{CommandACL}
3667    \index[dir]{Directive!CommandACL}
3668 Cette directive est utilis\'ee pour sp\'ecifier une liste de commandes de la console
3669 qui peuvent \^etre ex\'ecut\'ees par la console.
3670
3671 \end{description}
3672
3673 En plus des diff\'erents noms de ressources du Director et de commandes, le mot-clef 
3674 sp\'ecial {\bf *all*} peut \^etre sp\'ecifi\'e dans chacune des directives ACL ci-dessus.
3675 Sa pr\'esence signifie que toute ressource ou commande (pourvu qu'elle soit appropri\'ee 
3676 \`a la directive) est accept\'ee. Pour un exemple de fichier de configuration, voyez le 
3677 chapitre \ilink{Configuration de la console}{_ChapterStart36} de ce manuel
3678
3679 \subsection*{La ressource Counter}
3680 \label{CounterResource}
3681 \index[general]{Ressource!Counter }
3682 \index[general]{Ressource Counter }
3683 \addcontentsline{toc}{subsection}{Ressource Counter}
3684 La ressource Counter d\'efinit une variable-compteur qui peut \^etre acc\'ed\'ee par le 
3685 processus d'expansion de variables utilis\'e pour la cr\'eation de d'\'etiquettes (labels) 
3686 de volumes avec la directive {\bf LabelFormat}. Consultez le paragraphe sur la directive 
3687 \ilink{LabelFormat}{Label} de ce chapitre pour plus de d\'etails.
3688
3689 \begin{description}
3690
3691 \item [Counter]
3692    \index[dir]{Counter}
3693    \index[dir]{Directive!Counter}
3694 D\'ebut de la ressource Counter. les directives Counter sont optionnelles.
3695
3696 \item [Name = \lt{}name\gt{}]
3697    \index[dir]{Name}
3698    \index[dir]{Directive!Name}
3699 iLe nom de la variable-compteur. Il s'agit du nom que vous utiliserez pour vous r\'ef\'erer 
3700 \`a cette variable et acc\'eder \`a sa valeur.
3701
3702 \item [Minimum = \lt{}integer\gt{}]
3703    \index[dir]{Minimum}
3704     \index[dir]{Directive!Minimum}
3705 Sp\'ecifie la valeur minimale de la variable-compteur. Cette valeur devient celle par d\'efaut. 
3706 Si elle n'est pas fournie, sa valeur est z\'ero.
3707
3708 \item [Maximum = \lt{}integer\gt{}]
3709    \index[dir]{Maximum}
3710     \index[dir]{Directive!Maximum}
3711 Sp\'ecifie la valeur maximale de la variable-compteur. Si elle n'est pas fournie, ou si elles 
3712 est r\'egl\'ee \`a z\'ero, la variable compteur peut prendre une valeur maximale de 2 147 483 648 
3713 ($2^{31}$). Au del\`a de cette valeur, le compteur est remis au minimum.
3714
3715 \item [*WrapCounter = \lt{}counter-name\gt{}]
3716    \index[dir]{*WrapCounter}
3717    \index[dir]{Directive!*WrapCounter}
3718 Si cette valeur est sp\'ecifi\'ee, lorsque la variable-compteur d\'epasse le maximum et 
3719 est remise au minimum, le compteur sp\'ecifi\'e par la directive {\bf WrapCounter} est 
3720 incr\'ement\'e. (Ceci n'est, pour le moment, pas impl\'ement\'e.)
3721
3722 \item [Catalog = \lt{}catalog-name\gt{}]
3723    \index[dir]{Catalog}
3724    \index[dir]{Directive!Catalog}
3725 Si cette directive est sp\'ecifi\'ee, le compteur et sa valeur sont sauvegard\'es dans le 
3726 catalogue sp\'ecifi\'e. Dans le cas contraire, le compteur est red\'efini \`a chaque 
3727 d\'emarrage de Bacula.
3728
3729 \end{description}
3730
3731 \subsection*{ Voici un exemple complet de fichier de configuration du Director.}
3732 \label{SampleDirectorConfiguration}
3733 \index[general]{File!Exemple Complet Director Configuration }
3734 \index[general]{Exemple Complet Fichier Configuration Director}
3735 \addcontentsline{toc}{subsection}{Exemple Complet Fichier Configuration Directo}
3736 Un exemple de fichier de configuration du Director pourrait \^etre le suivant :
3737
3738
3739 \footnotesize
3740 \begin{verbatim}
3741 #
3742 # Default Bacula Director Configuration file
3743 #
3744 #  The only thing that MUST be changed is to add one or more
3745 #   file or directory names in the Include directive of the
3746 #   FileSet resource.
3747 #
3748 #  For Bacula release 1.15 (5 March 2002) -- redhat
3749 #
3750 #  You might also want to change the default email address
3751 #   from root to your address.  See the "mail" and "operator"
3752 #   directives in the Messages resource.
3753 #
3754 Director {                            # define myself
3755   Name = rufus-dir
3756   QueryFile = "/home/kern/bacula/bin/query.sql"
3757   WorkingDirectory = "/home/kern/bacula/bin/working"
3758   PidDirectory = "/home/kern/bacula/bin/working"
3759   Password = "XkSfzu/Cf/wX4L8Zh4G4/yhCbpLcz3YVdmVoQvU3EyF/"
3760 }
3761 # Define the backup Job
3762 Job {
3763   Name = "NightlySave"
3764   Type = Backup
3765   Level = Incremental                 # default
3766   Client=rufus-fd
3767   FileSet="Full Set"
3768   Schedule = "WeeklyCycle"
3769   Storage = DLTDrive
3770   Messages = Standard
3771   Pool = Default
3772 }
3773 Job {
3774   Name = "Restore"
3775   Type = Restore
3776   Client=rufus-fd
3777   FileSet="Full Set"
3778   Where = /tmp/bacula-restores
3779   Storage = DLTDrive
3780   Messages = Standard
3781   Pool = Default
3782 }
3783    
3784 # List of files to be backed up
3785 FileSet {
3786   Name = "Full Set"
3787   Include {
3788     Options { signature=SHA1 }
3789 #
3790 #  Put your list of files here, one per line or include an
3791 #    external list with:
3792 #
3793 #    @file-name
3794 #
3795 #  Note: / backs up everything
3796   File = /
3797   }
3798   Exclude { }
3799 }
3800 # When to do the backups
3801 Schedule {
3802   Name = "WeeklyCycle"
3803   Run = Full sun at 1:05
3804   Run = Incremental mon-sat at 1:05
3805 }
3806 # Client (File Services) to backup
3807 Client {
3808   Name = rufus-fd
3809   Address = rufus
3810   Catalog = MyCatalog
3811   Password = "MQk6lVinz4GG2hdIZk1dsKE/LxMZGo6znMHiD7t7vzF+"
3812   File Retention = 60d      # sixty day file retention
3813   Job Retention = 1y        # 1 year Job retention
3814   AutoPrune = yes           # Auto apply retention periods
3815 }
3816 # Definition of DLT tape storage device
3817 Storage {
3818   Name = DLTDrive
3819   Address = rufus
3820   Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3821   Device = "HP DLT 80"      # same as Device in Storage daemon
3822   Media Type = DLT8000      # same as MediaType in Storage daemon
3823 }
3824 # Definition for a DLT autochanger device
3825 Storage {
3826   Name = Autochanger
3827   Address = rufus
3828   Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3829   Device = "Autochanger"    # same as Device in Storage daemon
3830   Media Type = DLT-8000     # Different from DLTDrive
3831   Autochanger = yes
3832 }
3833 # Definition of DDS tape storage device
3834 Storage {
3835   Name = SDT-10000
3836   Address = rufus
3837   Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3838   Device = SDT-10000        # same as Device in Storage daemon
3839   Media Type = DDS-4        # same as MediaType in Storage daemon
3840 }
3841 # Definition of 8mm tape storage device
3842 Storage {
3843   Name = "8mmDrive"
3844   Address = rufus
3845   Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3846   Device = "Exabyte 8mm"
3847   MediaType = "8mm"
3848 }
3849 # Definition of file storage device
3850 Storage {
3851   Name = File
3852   Address = rufus
3853   Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3854   Device = FileStorage
3855   Media Type = File
3856 }
3857 # Generic catalog service
3858 Catalog {
3859   Name = MyCatalog
3860   dbname = bacula; user = bacula; password = ""
3861 }
3862 # Reasonable message delivery -- send most everything to
3863 #   the email address and to the console
3864 Messages {
3865   Name = Standard
3866   mail = root@localhost = all, !skipped, !terminate
3867   operator = root@localhost = mount
3868   console = all, !skipped, !saved
3869 }
3870     
3871 # Default pool definition
3872 Pool {
3873   Name = Default
3874   Pool Type = Backup
3875   AutoPrune = yes
3876   Recycle = yes
3877 }
3878 #
3879 # Restricted console used by tray-monitor to get the status of the director
3880 #
3881 Console {
3882   Name = Monitor
3883   Password = "GN0uRo7PTUmlMbqrJ2Gr1p0fk0HQJTxwnFyE4WSST3MWZseR"
3884   CommandACL = status, .status
3885 }
3886 \end{verbatim}
3887 \normalsize