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