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