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}
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.
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
17 \ilink{Configuration}{_ChapterStart16} de ce manuel.
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}
24 Les types de ressources du Director sont :
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) :
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.
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.
43 \ilink{JobDefs}{JobDefsResource} -- Ressource optionnelle destin\'ee \`a
44 fournir des valeurs par d\'efaut pour les ressources Job.
46 \ilink{Schedule}{ScheduleResource} -- Pour d\'efinir le moment
47 o\`u un Job doit \^etre lanc\'e automatiquement par le {\it scheduler}
50 \ilink{FileSet}{FileSetResource} -- Pour d\'efinir l'ensemble des
51 fichiers \`a sauvegarder pour chaque client.
53 \ilink{Client}{ClientResource2} -- Pour d\'efinir quel Client est
56 \ilink{Storage}{StorageResource2} -- Pour d\'efinir sur quel
57 p\'eriph\'erique physique les volumes seront mont\'es.
59 \ilink{Pool}{PoolResource} -- Pour d\'efinir quel le pool de volumes
60 qui peut \^etre utilis\'e pour un Job donn\'e
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.
66 \ilink{Messages}{_ChapterStart15} -- Pour d\'efinir les
67 destinataires (ou les fichiers de logs) des messages d'erreur et
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}
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.
86 D\'ebut de la ressource Director. Une ressource Director et une seule doit
89 \item [Name = \lt{}nom\gt{}]
91 \index[dir]{Directive!Name}
92 Le nom du Director utilis\'e par l'administrateur syst\`eme. Cette directive
95 \item [Description = \lt{ }texte\gt{}]
96 \index[dir]{Description}
97 \index[dir]{Directive!Description}
98 Le champ texte contient une description du Director qui sera affich\'ee dans
99 l'interface graphique. Cette directive est optionnelle.
101 \item [Password = \lt{}UA-password\gt{}]
102 \index[dir]{Password}
103 \index[dir]{Directive!Password}
104 Sp\'ecifie le mot de passe qui doit \^etre fourni par la Console Bacula par
105 d\'efaut pour \^etre autoris\'ee. Le m\^eme mot de passe doit appara{\^\i}tre
106 dans la ressource {\bf Director} du fichier de configuration de la console.
107 Pour plus de s\'ecurit\'e, le mot de passe ne transite jamais sur le r\'eseau,
108 l'authentification se fait via un \'echange de type {\it challenge-response}
109 d'un {\it hash code} cr\'e\'e avec le mot de passe. Cette directive est
110 requise. Si vous disposez de {\bf /dev/random} ou {\bf bc} sur votre machine,
111 Bacula g\'en\`erera un mot de passe al\'eatoire lors du processus
112 d'installation, sinon il sera laiss\'e blanc et vous devrez en d\'efinir un
115 \item [Messages = \lt{}Nom-de-ressource-Messages\gt{}]
116 \index[dir]{Messages}
117 \index[dir]{Directive!Messages}
118 La ressource {\bf messages} sp\'ecifie o\`u doivent \^etre d\'elivr\'es les messages du Director
119 qui ne sont pas associ\'es \`a un job sp\'ecifique. La plupart des messages sont relatifs
120 \`a un job et seront dirig\'es vers la ressource {\bf messages} sp\'ecifi\'ee par le job.
121 Cependant, quelques messages peuvent \^etre g\'en\'er\'es lorsque aucun job n'est actif.
122 Cette directive est requise.
124 \item [Working Directory = \lt{}R\'epertoire\gt{}]
125 \index[dir]{Working Directory}
126 \index[dir]{Directive!Working Directory}
127 Cette directive sp\'ecifie un r\'epertoire o\`u le Director peut d\'eposer ses fichiers
128 d'\'etats. Ce r\'epertoire ne devrait \^etre utilis\'e que par Bacula, mais il peut \^etre
129 partag\'e par d'autres {\it daemons} Bacula. Notez cependant que si ce r\'epertoire est
130 partag\'e avec d'autres daemons Bacula, vous devez vous assurer que le nom {\bf Name}
131 donn\'e \`a chaque daemon est unique afin d'\'eviter des collisions entre les fichiers
132 temporaires utilis\'es. Par d\'efaut, le processus de configuration de Bacula cr\'e\'e des noms
133 de daemons uniques en les postfixant avec -dir, -fd et -sd.
134 Les substitutions shell standard sont effectu\'ees \`a la lecture du fichier de
135 configuration, de sorte que des valeurs telles que {\bf \$HOME} seront correctement
136 substitu\'ees. Cette directive est requise.
138 Si vous avez spécifié un utilisateur et/ou un groupe pour le Director lors de la
139 configuration avec les options {\bf {-}{-}with-dir-user} et/ou {\bf {-}{-}with-dir-group} de
140 la commande ./configure, le répertoire de travail Working Directory doit appartenir
141 doit appartenir à ce groupe et à cet utilisateur.
143 \item [Pid Directory = \lt{}R\'epertoire\gt{}]
144 \index[dir]{Pid Directory}
145 \index[dir]{Directive!Pid Directory}
146 Cette directive sp\'ecifie un r\'epertoire o\`u le Director peut d\'eposer son fichier
147 d'Id de processus. Ce fichier est utilis\'e pour stopper Bacula et pr\'evenir l'ex\'ecution
148 simultan\'ee de plusieurs copies de Bacula. Les substitutions shell standard sont
149 effectu\'ees \`a la lecture du fichier de configuration, de sorte que des valeurs
150 telles que {\bf \$HOME} seront correctement substitu\'ees.
152 Typiquement, sur les syst\`emes Linux, vous utiliserez ici {\bf /var/run}. Si vous
153 n'installez pas Bacula dans les r\'epertoires syst\`eme, vous pouvez utiliser le
154 r\'epertoire de travail {\bf Working Directory} d\'efini plus haut.
155 Cette directive est requise.
157 \item [Scripts Directory = \lt{}Directory\gt{}]
158 \index[dir]{Scripts Directory}
159 \index[dir]{Directive!Scripts Directory}
160 Cette directive sp\'ecifie le r\'epertoire dans lequel le Director devra rechercher
161 le script Python de d\'emarrage {\bf DirStartup.py}. Ce r\'epertoire peut \^etre
162 partag\'e par d'autres daemons Bacula.Les substitutions shell standard sont effectu\'ees
163 \`a la lecture du fichier de configuration, de sorte que des valeurs telles que
164 {\bf \$HOME} seront correctement substitu\'ees. Cette directive est optionnelle.
166 \item [QueryFile = \lt{}Path\gt{}]
167 \index[dir]{QueryFile}
168 \index[dir]{Directive!QueryFile}
169 Cette directive sp\'ecifie un r\'epertoire et un fichier dans lequel le
170 Director peut trouver les requ\^etes SQL pr\'e\'etablies pour la commande
171 {\bf Query} de la Console. Les substitutions shell standard sont
172 effectu\'ees \`a la lecture du fichier de configuration, de sorte que des valeurs
173 telles que {\bf \$HOME} seront correctement substitu\'ees.
174 Cette directive est requise.
176 \label{DirMaxConJobs}
178 \item [Maximum Concurrent Jobs = \lt{}nombre\gt{}]
179 \index[dir]{Maximum Concurrent Jobs}
180 \index[dir]{Directive!Maximum Concurrent Jobs}
181 \index[general]{Jobs Simultan\'es}
182 \index[general]{Jobs Concurrents}
184 O\`u \lt{}nombre\gt{} est le nombre maximal de jobs qui peuvent \^etre ex\'ecut\'es
185 simultan\'ement par le Director. La valeur par d\'efaut est 1, mais vous pouvez utiliser
186 une valeur plus grande.
187 Notez que le format des volumes devient beaucoup plus compliqu\'e avec plusieurs jobs
188 ex\'ecut\'es simultan\'ement. De ce fait, les restaurations peuvent prendre beaucoup plus
189 de temps si Bacula doit faire le tri parmi les segments entrem\'el\'es de ces jobs. Ceci
190 peut \^etre \'evit\'e en s'arrangeant pour que chacun des jobs ex\'ecut\'es simultan\'ement
191 \'ecrive sur un volume distinct. Une autre possibilit\'e consiste \`a utiliser le
192 {\it data spooling} : les donn\'ees seront d'abord "spool\'ees" sur disque
193 simultan\'ement, ensuite les fichiers "spool" seront \'ecrits s\'equentiellement
196 Dans certains cas, des directives telles que {\bf Maximum Volume Jobs} ne sont pas
197 correctement synchronis\'ees avec le nombre de jobs simultan\'es, et des probl\`emes
198 de synchronisation subtils peuvent survenir, aussi des tests minutieux sont recommand\'es.
200 Actuellement, il n'y a aucun param\`etre de configuration pour r\'egler ou limiter
201 le nombre de connections par console. Un maximum de cinq connection simultan\'ees
204 Pour plus de d\'etails concernant l'ex\'ecution simultan\'ee de plusieurs jobs, consultez la
205 partie \ilink{Ex\'ecution simultan\'ee de plusieurs jobs}{ConcurrentJobs} du chapitre Astuces de ce manuel.
208 \item [FD Connect Timeout = \lt{}dur\'ee\gt{}]
209 \index[dir]{FD Connect Timeout}
210 \index[dir]{Directive!FD Connect Timeout}
211 O\`u {\bf dur\'ee} est le d\'elai durant lequel le Director tente de contacter
212 le File Daemon pour d\'emarrer un job. Une fois ce d\'elai \'ecoul\'e, le Director supprimera le job.
213 La valeur par d\'efaut est 30 minutes.
215 \item [SD Connect Timeout = \lt{}dur\'ee\gt{}]
216 \index[dir]{SD Connect Timeout}
217 \index[dir]{Directive!SD Connect Timeout}
218 O\`u {\bf dur\'ee} est le d\'elai durant lequel le Director tente de contacter
219 le Storage Daemon pour d\'emarrer un job. Une fois ce d\'elai \'ecoul\'e, le Director supprimera le job.
220 La valeur par d\'efaut est 30 minutes.
222 \item [DirAddresses = \lt{}Sp\'ecification-adresses-IP\gt{}]
223 \index[dir]{DirAddresses}
224 \index[dir]{Directive!DirAddresses}
225 Sp\'ecifie les ports et adresses sur lesquels le Director se met en attente de
226 connections de Consoles Bacula. La meilleure explication est sans doute un exemple :
230 DirAddresses = { ip = {
231 addr = 1.2.3.4; port = 1205;}
233 addr = 1.2.3.4; port = http;}
246 addr = 201:220:222::2
249 addr = bluedot.thun.net
255 o\`u "ip", "ip4", "ip6", "addr", et "port sont les mots clef. Notez que
256 les adresses peuvent \^etre sp\'ecifi\'ees sous forme de quadruplets point\'es, ou
257 suivant la notation \`a doubles points IPv6, ou encore sous forme de nom symbolique
258 (seulement pour la sp\'ecification ip). D'autre part, le port peut \^etre sp\'ecifi\'e
259 par un nombre, ou par une valeur mn\'emonique du fichier /etc/services. Si un port
260 n'est pas pr\'ecis\'e, celui par d\'efaut sera utilis\'e. Si une section ip est sp\'ecifi\'ee,
261 la r\'esolution peut \^etre faite soit par IPv4, soit par IPv6. Si ip4 est sp\'ecifi\'e,
262 seules les r\'esolutions IPv4 seront permises. Il en va de m\^eme avec ip6.
264 Notez que si vous utilisez la directive DirAddresses, vous ne devez utiliser ni la directive
265 DirPort, ni la directive DirAddress dans la même ressource.
267 \item [DIRport = \lt{}num\'ero-de-port\gt{}]
269 \index[dir]{Directive!DIRport}
270 Sp\'ecifie le port (un entier positif) sur lequel le Director est \`a l'\'ecoute
271 de connections de Consoles Bacula. Ce m\^eme num\'ero de port doit \^etre sp\'ecifi\'e
272 dans la ressource Director du fichier de configuration de la console. La
273 valeur par d\'efaut est 9101, aussi, il n'est en principe pas n\'ecessaire
274 de renseigner cette directive. Elle n'est pas requise si vous sp\'ecifiez des
277 \item [DirAddress = \lt{}Adresse-IP\gt{}]
278 \index[dir]{DirAddress}
279 \index[dir]{Directive!DirAddress}
280 Cette directive est optionnelle. Lorsqu'elle est sp\'ecifi\'ee, le Director n'accepte
281 de connections Console que de l'adresse sp\'ecifi\'ee {\bf Adresse-IP}, qui peut \^etre
282 soit un nom de domaine, soit une adresse IP au format quadruplet point\'e ou chaîne quot\'ee.
283 Si cette directive n'est pas sp\'ecifi\'ee, le Director acceptera des connections de Console
284 de toute adresse valide. Notez que contrairement \`a la sp\'ecification DirAdresses d\'ecrite
285 plus haut, cette directive ne permet de sp\'ecifier qu'une seule adresse. Cette directive
286 n'est pas requise si vous utilisez la directive DirAdresses.
290 Voici un exemple d'une ressource Director valide :
296 WorkingDirectory = "$HOME/bacula/bin/working"
297 Password = UA_password
298 PidDirectory = "$HOME/bacula/bin/working"
299 QueryFile = "$HOME/bacula/bin/query.sql"
305 \subsection*{La ressource Job}
307 \index[general]{Resource!Job }
308 \index[general]{Job Resource }
309 \addcontentsline{toc}{subsection}{Job Resource}
311 La ressource Job d\'efinit un Job (sauvegarde, restauration,...) que Bacula doit
312 ex\'ecuter. Chaque d\'efinition de ressource Job contient le nom d'un client, la
313 liste des \'el\'ements \`a sauvegarder (FileSet), la planification (Schedule) pour
314 ce Job, le lieu o\`u sauvegarder ces donn\'ees (Storage Device) et quel groupe de
315 media utiliser (Pool). En effet, chaque ressource Job doit r\'epondre aux questions :
316 "Quoi ?", "O\`u ?", "Quand ?" et "Comment ?" soit, respectivement Fileset, Storage,
317 Schedule, Type et Niveau (Sauvegarde/Restauration - Full/Differentielle/Incr\'ementale).
318 Notez que le FileSet doit \^etre sp\'ecifi\'e lors des restaurations pour des raisons
319 historiques, mais il n'est plus utilis\'e.
321 Un seul type ({\bf Backup}, {\bf Restore}, ...) peut \^etre sp\'ecifi\'e pour un Job donn\'e.
322 Si vous voulez sauvegarder plusieurs FileSets sur le m\^eme client, vous devez d\'efinir un
323 Job pour chacun d'entre eux.
329 \index[dir]{Directive!Job}
330 D\'ebut de la ressource Job. Il faut d\'efinir au moins une ressource Job.
332 \item [Name = \lt{}name\gt{}]
334 \index[dir]{Directive!Name}
335 Le nom du Job. Ce nom peut \^etre utilis\'e avec la commande {\bf Run} du
336 programme Console pour lancer un Job. Si le nom contient des espaces,
337 il doit \^etre plac\'e entre quotes. C'est g\'en\'eralement une bonne id\'ee de
338 nommer vos Jobs du nom du Client qu'ils sauvegardent, afin de les
339 identifier ais\'ement.
341 Lors de l'ex\'ecution d'un Job, son nom unique est compos\'e du nom que vous avez
342 sp\'ecifi\'e ici suffix\'e avec la date et l'heure de sa planification.
343 Cette directive est requise.
345 \item [Enabled = \lt{}yes|no\gt{}]
347 \index[dir]Directive!Enable}
348 Cette directive permet d'activer ou désactiver l'exécution automatique d'un job
349 par le planificateur.
351 \item [Type = \lt{}job-type\gt{}]
353 \index[dir]{Directive!Type}
354 La directive {\bf Type} sp\'ecifie le type de Job, qui peut \^etre l'un des
355 suivants : {\bf Backup}, {\bf Restore}, {\bf Verify}, ou {\bf Admin}.
356 Cette directive est requise. Pour chaque type de Job, il existe diff\'erents
357 niveaux, qui seront d\'ecrits dans les prochains paragraphes.
363 D\'efinit une sauvegarde. En principe, vous aurez au moins un job de type Backup
364 par client sauvegard\'e. A moins que vous ne d\'esactiviez le catalogue, la
365 plupart des donn\'ees et statistiques concernant les fichiers sauvegard\'ees
366 seront \'ecrites dans le catalogue.
370 D\'efinit une restauration. En principe, vous ne cr\'eerez qu'un seul job de ce
371 type, que vous utiliserez comme un prototype que vous modifierez \`a l'aide
372 de la console lorsque vous devrez restaurer. Bien que certaines informations
373 basiques soient conserv\'ees dans le catalogue lors de restaurations, leur
374 quantit\'e est infime en regard des informations stock\'ees pour une sauvegarde --
375 par exemple, aucune entr\'ee de nom de fichier n'est g\'en\'er\'ee, puisqu'aucun fichier
380 D\'efinit un Job de type Verify. Le Jobs de type {\bf verify} permettent de
381 comparer le catalogue au syst\`eme de fichiers ou \`a ce qui a \'et\'e sauvegard\'e.
382 Vous pouvez l'utiliser pour vous assurer qu'une cartouche de donn\'ees est
383 lisible, mais aussi comme un syst\`eme de d\'etection d'intrusion \`a la fa\ccon de
388 D\'efinit un Job de type Admin. Un {\bf Admin} peut s'utiliser pour "\'elaguer"
389 p\'eriodiquement le catalogue, si vous ne souhaitez pas que ceci soit fait \`a la fin
390 de chaque sauvegarde. Bien que les Jobs de type admin soient enregistr\'es dans le
391 catalogue, la quantit\'e de donn\'ees g\'en\'er\'ee est infime.
397 \item [Level = \lt{}job-level\gt{}]
398 \index[dir]{Directive!Level}
400 La directive Level sp\'ecifie le niveau d'ex\'ecutiondu job par d\'efaut.
401 Chaque type de job a son propre jeu de niveaux qui peuvent \^etre sp\'ecifi\'es.
402 Le niveau d'ex\'ecution est en g\'en\'eral surcharg\'e par une valeur diff\'erente
403 sp\'ecifi\'ee dans la ressource {\bf Schedule}. Cette directive n'est pas
404 requise mais doit \^etre sp\'ecifi\'ee soit ici, soit en tant que surcharge
405 dans la ressource {\bf Schedule}.
407 Pour un job de type {\bf Backup} le niveau doit \^etre l'un des suivants :
413 Tous les fichiers du FileSet, qu'ils aient \'et\'e modifi\'es ou non.
416 \index[dir]{Incremental}
417 Tous les fichiers modifi\'es depuis la derni\`ere sauvegarde valide du FileSet
418 sp\'ecifi\'e pour le m\^eme job. Si le Director ne peut trouver une sauvegarde Full ant\'erieure,
419 le niveau du job sera \'elev\'e en une sauvegarde Full. Lorsque le Director
420 recherche une Full valide dans le catalogue, il recherche un job avec
421 les caract\'eristiques suivantes :
424 \item le m\^eme nom de job ;
425 \item le m\^eme nom de client ;
426 \item le m\^eme FileSet (toute modification de la d\'efinition du FileSet telle
427 que l'ajout ou la suppression de fichiers dans les sections Include ou
428 Exclude constitue un changement de FileSet).
429 \item le niveau requis (Full, Differential ou Incremental)
430 \item le job s'est termin\'e normalement, c'est \`a dire un qu'il ne s'est pas termin\'e
431 en \'echec, et n'a pas \'et\'e effac\'e.
434 Si toutes les conditions ci-dessus ne sont pas r\'ealis\'ees, le Director
435 augmentera la sauvegarde incr\'ementale en une sauvegarde Full. Dans le cas
436 contraire, la sauvegarde incr\'ementale sera effectu\'ee normalement.
438 Le File Daemon (Client) d\'etermine les fichiers \`a sauvegarder pour une
439 incr\'ementale par comparaison de l'heure de d\'emarrage du Job pr\'ec\'edent
440 (Full, Diff\'erentiel ou Incr\'emental) avec les dates de derni\`ere modification
441 de chaque fichier (st\_mtime) et de ses attributs (st\_ctime). Si le fichier
442 ou ses attributs ont chang\'es depuis cette date de d\'emarrage, alors le fichier
445 Veuillez noter que certains logiciels anti-virus peuvent modifier la date
446 st\_time lors de leurs op\'erations de scan. Ainsi, si l'antivirus modifie
447 la date d'acc\`es (st\_atime), qui n'est pas utilis\'ee par Bacula, il
448 provoquera une modification du st\_ctime et conduira Bacula \`a sauvegarder
449 les fichiers concern\'es lors des incr\'ementales et diff\'erentielles. Dans le
450 cas de l'antivirus Sophos, vous pouvez \'eviter cet inconv\'enient en utilisant
451 l'option {\bf \verb{--{no-reset-atime}. Pour les autres logiciels, voyez
454 Lorsque Bacula effectue une sauvegarde incr\'ementale, tous les fichiers modifi\'es
455 pr\'esents sur le syst\`eme sont sauvegard\'es. Cependant, tout fichier supprim\'e depuis
456 la derni\`ere Full demeure dans le catalogue, ce qui signifie que si vous effectuez
457 une restauration \`a partir de sauvegardes incr\'ementales (et de la Full associ\'ee),
458 les fichiers supprim\'es depuis la derni\`ere Full seront aussi restaur\'es. Ces fichiers
459 n'apparaîtront plus dans le catalogue apr\`es avoir fait une nouvelle sauvegarde
460 Full. Le processus pour supprimer ces fichiers du catalogue lors d'une
461 incr\'ementale ralentirait fortement les sauvegardes incr\'ementales. Il n'est
462 actuellement pas impl\'ement\'e dans Bacula.
464 De plus, si vous d\'eplacez un r\'epertoire plut\^ot que de le copier, les fichiers qu'il
465 contient voient leurs dates de derni\`ere modification (st\_mtime) et de dernier acc\`es
466 (st\_ctime) inchang\'es. Par cons\'equent, ces fichiers ne seront probablement
467 sauvegard\'es par aucune incr\'ementale ou diff\'erentielle, puisque ces derni\`eres
468 ne se r\'ef\`erent qu'\`a ces indicateurs. Aussi, il est pr\'ef\'erable de copier un dossier
469 avant de supprimer l'original plut\^ot que de le d\'eplacer, si vous voulez qu'il soit
470 correctement sauvegard\'e.
473 \index[dir]{Differential}
474 Tous les fichiers modifi\'es depuis la derni\`ere sauvegarde Full valide du FileSet
475 sp\'ecifi\'e pour le m\^eme job. Si le Director ne peut trouver une sauvegarde Full
476 ant\'erieure, le niveau du job sera \'elev\'e en une sauvegarde Full. Lorsque le
477 Director recherche une Full valide dans le catalogue, il recherche un job avec
478 les caract\'eristiques suivantes :
481 \item le m\^eme nom de job ;
482 \item le m\^eme nom de client ;
483 \item le m\^eme FileSet (toute modification de la d\'efinition du FileSet telle
484 que l'ajout ou la suppression de fichiers dans les sections Include ou
485 Exclude constitue un changement de FileSet).
486 \item le Job \'etait une sauvegarde FULL
487 \item le Job s'est termin\'e normalement, c'est \`a dire qu'il ne s'est pas termin\'e
488 en \'echec, et n'a pas \'et\'e effac\'e.
491 Si toutes les conditions ci-dessus ne sont pas r\'ealis\'ees, le Director
492 augmentera la sauvegarde diff\'erentielle en une sauvegarde Full. Dans le cas
493 contraire, la sauvegarde diff\'erentielle sera effectu\'ee normalement.
495 Le File Daemon (Client) d\'etermine les fichiers \`a sauvegarder pour une
496 diff\'erentielle par comparaison de l'heure de d\'emarrage de la derni\`ere
497 sauvegarde Full avec les dates de derni\`ere modification
498 de chaque fichier (st\_mtime) et de ses attributs (st\_ctime). Si le fichier
499 ou ses attributs ont chang\'es depuis cette date de d\'emarrage, alors le fichier
500 sera sauvegard\'e. La date de d\'emarrage utilis\'ee est affich\'e apr\`es le {\bf Since}
501 du rapport de Job. Dans de rares cas, certains fichiers sont sauvegard\'es deux fois
502 \`a cause de l'utilisation de la date de d\'emarrage de la sauvegarde pr\'ec\'edente,
503 mais ceci assure qu'aucun changement n'est perdu. Comme pour les incr\'ementales,
504 vous devriez vous assurer que les horloges de votre serveur Bacula et de vos clients
505 sont synchronis\'ees, ou aussi proches que possible, pour \'eviter le risque d'omission
506 d'un fichier. Notez qu'\`a partir de la version 1.33, Bacula effectue automatiquement
507 ces ajustements de sorte que les horloges utilis\'ees par Bacula soient synchrones.
509 Veuillez noter que certains logiciels anti-virus peuvent modifier la date
510 st\_time lors de leurs op\'erations de scan. Ainsi, si l'antivirus modifie
511 la date d'acc\`es (st\_atime), qui n'est pas utilis\'ee par Bacula, il
512 provoquera une modification du st\_ctime et conduira Bacula \`a sauvegarder
513 les fichiers concern\'es lors des incr\'ementales et diff\'erentielles. Dans le
514 cas de l'antivirus Sophos, vous pouvez \'eviter cet inconv\'enient en utilisant
515 l'option {\bf \verb{--{no-reset-atime}. Pour les autres logiciels, voyez
518 Lorsque Bacula effectue une sauvegarde diff\'erentielle, tous les fichiers modifi\'es
519 pr\'esents sur le syst\`eme sont sauvegard\'es. Cependant, tout fichier supprim\'e depuis
520 la derni\`ere Full demeure dans le catalogue, ce qui signifie que si vous effectuez
521 une restauration \`a partir de sauvegardes diff\'erentielles (et de la Full associ\'ee),
522 les fichiers supprim\'es depuis la derni\`ere Full seront aussi restaur\'es. Ces fichiers
523 n'apparaîtront plus dans le catalogue apr\`es avoir fait une nouvelle sauvegarde
524 Full. Le processus pour supprimer ces fichiers du catalogue lors d'une
525 incr\'ementale ralentirait fortement les sauvegardes diff\'erentielles. Il n'est
526 actuellement pas impl\'ement\'e dans Bacula, mais plannifi\'e pour une future version
529 Comme not\'e ci-dessus, si vous d\'eplacez un r\'epertoire plut\^ot que de le copier, les fichiers
530 qu'il contient voient leurs dates de derni\`ere modification (st\_mtime) et de dernier acc\`es
531 (st\_ctime) inchang\'es. Par cons\'equent, ces fichiers ne seront probablement
532 sauvegard\'es par aucune incr\'ementale ou diff\'erentielle, puisque ces derni\`eres
533 ne se r\'ef\`erent qu'\`a ces indicateurs. Aussi, il est pr\'ef\'erable de copier un dossier
534 avant de supprimer l'original plut\^ot que de le d\'eplacer, si vous voulez qu'il soit
535 correctement sauvegard\'e.
537 R\'eguli\`erement, quelqu'un demande \`a quoi servent les sauvegardes diff\'erentielles
538 du moment que les incr\'ementales r\'ecup\`erent tous les fichiers modifi\'es. Il existe
539 plusieurs r\'eponses \`a cette question, mais la plus importante \`a mes yeux est de
540 combiner toutes les incr\'ementales et diff\'erentielles depuis la derni\`ere full en
541 une seule diff\'erentielle. Ceci a deux effets : 1. La redondance. 2. Plus important,
542 la r\'eduction du nombre de volumes requis pour faire une restauration en
543 \'eliminant la n\'ecessit\'e de lire tous les volumes des pr\'ec\'edentes incr\'ementales
544 depuis la derni\`ere full.
548 Pour un Job de type {\bf Restore}, aucun niveau ne doit \^etre sp\'ecifi\'e.
550 Pour un Job de type {\bf Verify}, le niveau peut \^etre l'un des suivants :
555 \index[dir]{InitCatalog}
556 Examine le {\bf FileSet} sp\'ecifi\'e et stocke les attributs de fichiers dans le
557 catalogue. Vous pouvez vous interroger sur l'int\'er\^et d'un Job qui ne
558 sauvegarde aucun fichier. La r\'eponse est de pouvoir utiliser Bacula comme
559 vous utiliseriez Tripwire, en d'autres termes, ce type de Jobs vous permet
560 de sauvegarder l'\'etat d'un ensemble de fichiers d\'efini par un {\bf FileSet}
561 afin de pouvoir ult\'erieurement contr\^oler si rien n'a \'et\'e modifi\'e, supprim\'e ou
562 ajout\'e. Ceci peut \^etre utilis\'e pour d\'etecter une intrusion. Typiquement,
563 vous sp\'ecifiez un {\bf FileSet} qui contient l'ensemble des fichiers qui ne
564 devraient pas changer (par exemple /sbin, /boot, /lib, /bin, ...). Ensuite,
565 vous ex\'ecutez le Job verify de niveau {\bf InitCatalog} apr\`es l'installation
566 de votre syst\`eme, puis apr\`es chaque modification (mise \`a jour). Ensuite,
567 lorsque vous souhaitez contr\^oler l'\'etat de votre syst\`eme de fichiers,
568 vous utilisez un Job {\bf Verify}, {\bf level = Catalog} afin de comparer
569 le r\'esultat de votre {\bf InitCatalog} avec l'\'etat actuel de votre syst\`eme
574 Compare l'\'etat actuel des fichiers et l'\'etat pr\'ec\'edemment sauvegard\'e
575 lors d'un {\bf InitCatalog}. Toutes les anomalies sont rapport\'ees.
576 Les objets du rapport sont d\'etermin\'es par les options {\bf verify}
577 sp\'ecifi\'ees dans la directive {\bf Include} du {\bf FileSet} sp\'ecifi\'e
578 (voyez la ressource {\bf FileSet} ci-dessous pour plus de d\'etails).
579 Typiquement, cette commande sera ex\'ecut\'ee quotidiennement pour
580 contr\^oler toute modification de votre syst\`eme de fichier.
582 Attention ! Si vous ex\'ecutez deux jobs Verify Catalog simultan\'ement sur le m\^eme client,
583 les r\'esultats seront probablement erronn\'es. En effet, Verify Catalog modifie
584 le catalogue lors de son ex\'ecution afin de d\'etecter les nouveaux fichiers.
586 \item [VolumeToCatalog]
587 \index[dir]{VolumeToCatalog}
588 Ce niveau permet de lire les attributs de fichiers \'ecrits sur le Volume
589 lors du dernier Job. Les attributs de fichiers sont compar\'es aux valeurs
590 sauvegard\'ees dans le catalogue et toute diff\'erence est rapport\'ee. Ceci
591 est similaire au niveau {\bf Catalog}, sauf que ce sont les
592 attributs des fichiers du volume plut\^ot que ceux des fichiers du disque
593 qui sont compar\'es aux attributs sauvegard\'es dans le catalogue. Bien que
594 les attributs et signatures (MD5 ou SHA1) soient compar\'es, les donn\'ees
595 r\'eelles ne le sont pas (elles ne figurent pas dans le catalogue).
597 Attention ! Si vous ex\'ecutez deux jobs Verify VolumeToCatalog simultan\'ement sur le m\^eme client,
598 les r\'esultats seront probablement erronn\'es. En effet, Verify VolumeToCatalog modifie
599 le catalogue lors de son ex\'ecution afin de d\'etecter les nouveaux fichiers.
601 \item [DiskToCatalog]
602 \index[dir]{DiskToCatalog}
603 Ce niveau permet de lire les fichiers tels qu'ils sont actuellement sur le
604 disque et de comparer leurs attributs actuels avec ceux stock\'es dans le
605 catalogue lors de la derni\`ere sauvegarde pour le Job sp\'ecifi\'e par la
606 directive {\bf VerifyJob}. Ce niveau diff\`ere du niveau {\bf Catalog}
607 d\'ecrit plus haut en ce qu'il ne se r\'ef\`ere pas \`a un Job Verify ant\'erieur,
608 mais \`a la derni\`ere sauvegarde. Lorsque vous utilisez ce niveau , vous devez
609 renseigner les option Verify de la section Include. Ces options d\'eterminent
610 quels attributs seront compar\'es.
612 Cette commande peut se r\'ev\'eler tr\`es utile si vous avez des probl\`emes de disque
613 car elle comparera l'\'etat actuel de votre disque avec la derni\`ere sauvegarde
614 valide, qui peut remonter \`a plusieurs jobs.
616 Notez que l'impl\'ementation actuelle (1.32c) n'identifie pas les fichiers qui
617 ont \'et\'e supprim\'es.
620 \item {\bf Verify Job = \lt{}Job-Resource-Name\gt{}}
621 \index[dir]{Verify Job}
622 \index[dir]{Directive!Verify Job}
623 Si vous ex\'ecutez un job verify sans cette directive, le dernier job
624 ex\'ecut\'e sera compar\'e avec le catalogue, ce qui signifie que votre commande
625 verify doit succ\'eder imm\'ediatement \`a une sauvegarde. Si vous sp\'ecifiez
626 un {\bf Verify Job}, Bacula trouvera le dernier job ex\'ecut\'e avec ce nom.
627 Ceci vous permet d'ex\'ecuter toutes vos sauvegardes, puis d'ex\'ecuter les jobs
628 Verify sur les sauvegardes de votre choix (le plus souvent, un {\bf VolumeToCatalog}
629 de sorte que la cartouche qui vient juste d'\^etre \'ecrite est relue).
631 \item {\bf JobDefs = \lt{}JobDefs-Resource-Name\gt{}}
633 \index[dir]{Directive!JobDefs}
634 Si un nom de JobDef est sp\'ecifi\'e dans la d\'efinition d'un Job, toutes les valeurs
635 d\'efinies dans la ressource JobDef concern\'ee seront utilis\'ees en tant que valeurs
636 par d\'efaut pour le Job. Toute valeur explicitement sp\'ecifi\'ee dans la
637 d\'efinition du Job outrepasse la valeur par d\'efaut d\'efinie par le JobDef.
638 L'utilisation de cette directive permet d'\'ecrire des ressources Job plus
639 compactes, o\`u la majeure partie des directives sont d\'efinies dans un ou
640 plusieurs JobDefs. C'est particuli\`erement pratique si vous avez de nombreux
641 Jobs similaires avec des variations mineures telles que diff\'erents clients.
642 Un exemple basique de l'utilisation d'un Jobdef est fourni dans le fichier
643 bacula-dir.conf par d\'efaut.
645 \item {\bf Bootstrap = \lt{}bootstrap-file\gt{}}
646 \index[dir]{Bootstrap}
647 \index[dir]{Directive!Bootstrap}
648 La directive Bootstrap sp\'ecifie un fichier bootstrap qui, s'il est fourni,
649 sera utilis\'e lors des restaurations et ignor\'e par tout les autres Jobs.
650 Le fichier {\bf bootstrap} contient la liste des cartouches n\'ecessaires
651 pour la restauration ainsi que les index des fichiers \`a restaurer
652 (localisation sur la cartouche). Cette directive
653 est optionnelle, et n'est utilis\'ee que pour les restaurations. De plus,
654 elle peut \^etre modifi\'ee lorsqu'une restauration est lanc\'ee depuis la console.
656 Si vous utilisez la commande {\bf Restore} dans la console pour lancer une
657 restauration, le fichier {\bf bootstrap} sera cr\'e\'e automatiquement \`a partir des
658 fichiers que vous avez s\'electionn\'es pour la restauration.
660 Pour plus de d\'etails concernant les fichiers {\bf bootstrap}, veuillez
661 consulter le chapitre \ilink{Restaurer des fichiers avec le fichier Bootstrap}{_ChapterStart43}
664 \label{writebootstrap}
665 \item {\bf Write Bootstrap = \lt{}bootstrap-file-specification\gt{}}
666 \index[dir]{Write Bootstrap}
667 \index[dir]{Directive!Write Bootstrap}
668 La directive {\bf writebootstrap} sp\'ecifie le de fichier Bootstrap o\`u Bacula
669 \'ecrira lors de chaque sauvegarde. Ainsi, cette directive s'applique
670 exclusivement aux jobs de type sauvegarde. Si la sauvegarde est une Full,
671 Bacula \'ecrase le contenu du fichier sp\'ecifi\'e. Sinon, Bacula ajoute les
672 nouveaux enregistrements Bootstrap \`a la fin du fichier.
674 En utilisant cette fonction, vous aurez constamment un fichier bootstrap
675 capable de recouvrer l'\'etat le plus r\'ecent de votre syst\`eme. Le fichier
676 bootstrap devrait \^etre \'ecrit sur un disque mont\'e sur une autre machine, de
677 sorte que vous puissiez en disposer imm\'ediatement en cas de d\'efaillance
678 de votre disque dur. Une alternative consiste \`a copier le fichier sur une autre
679 machine apr\`es chaque mise \`a jour.
681 Si la {\bf sp\'ecification de fichier bootstrap} d\'ebute par une barre verticale (|),
682 Bacula consid\`ere la sp\'ecification comme un nom de programme vers lequel les
683 les enregistrement bootstrap seront redirig\'es. Ce peut \^etre, par exemple, un
684 script qui vous envoie par e-mail les enregistrements bootstrap.
686 Pour plus de d\'etails sur l'utilisation de fichiers bootstrap, veuillez
687 consulter le chapitre intitul\'e \ilink{Le Fichier Bootstrap}{_ChapterStart43}
691 \item {\bf Client = \lt{}client-resource-name\gt{}}
693 \index[dir]{Directive!Client}
694 La directive Client sp\'ecifie le Client (File Daemon) \`a utiliser dans le Job.
695 Le client est ex\'ecut\'e sur la machine \`a sauvegarder. Il exp\'edie les fichiers requis
696 au Storage Daemon lors des sauvegardes, et re\
\ 3oit les fichiers du Storage Daemon
697 lors des restaurations. Pour plus de d\'etails, consultez la section
698 \ilink{Ressource Client}{ClientResource2} de ce chapitre. Cette deirective est requise.
701 \item {\bf FileSet = \lt{}FileSet-resource-name\gt{}}
704 La directive FileSet sp\'ecifie le FileSet \`a utiliser dans le Job concern\'e. Le
705 FileSet d\'efinit les r\'epertoires et fichiers \`a sauvegarder, ainsi que les options
706 \`a utiliser pour les sauvegarder (par exemple la compression,...). Un Job ne peut
707 contenir qu'un seul FileSet. Pour plus de d\'etails, consultez la section
708 \ilink{Ressource FileSet}{FileSetResource} de ce chapitre.
709 Cette directive est requise.
711 \item {\bf Messages = \lt{}messages-resource-name\gt{}}
712 \index[dir]{Messages}
713 \index[dir]{Directive!Messages}
714 La directive Messages d\'efinit la ressource Message qui doit \^etre utilis\'ee
715 pour le job concern\'e. Ainsi, elle d\'etermine le comment et o\`u seront
716 d\'elivr\'es les diff\'erents messages de Bacula. Par exemple, vous pouvez diriger
717 certains messages vers un fichier de logs, tandis que d'autres seront
718 envoy\'es par e-mail. Pour plus de d\'etails, consultez le chapitre
719 \ilink{Ressource Messages}{_ChapterStart15} de ce manuel. Cette directive
722 \item {\bf Pool = \lt{}pool-resource-name\gt{}}
724 \index[dir]{Directive!Pool}
725 La directive Pool sp\'ecifie le jeu de volumes qui doit \^etre utilis\'e pour
726 sauvegarder vos donn\'ees. De nombreuses installations de Bacula
727 n'utiliseront que le pool d\'efini par d\'efaut {\bf Default}. Toutefois,
728 si vous voulez sp\'ecifier diff\'erents jeux de volumes pou diff\'erents clients
729 ou diff\'erents jobs, vous voudrez probablement utiliser les Pools.
730 Pour plus de d\'etails, consultez la section \ilink{Ressource Pool}{PoolResource}
731 de ce chapitre. Cette directive est requise
733 \item {\bf Full Backup Pool = \lt{}pool-resource-name\gt{} }
734 \index[dir]{Full Backup Pool}
735 \index[dir]{Directive!Full Backup Pool}
736 La directive {\it Full Backup Pool} sp\'ecifie un Pool \`a utiliser pour les
737 sauvegardes Full. Cette directive outrepasse toute autre sp\'ecification
738 de Pool lors d'une sauvegarde Full. Cette directive est optionnelle.
740 \item {\bf Differential Backup Pool = \lt{}pool-resource-name\gt{} }
741 \index[dir]{Differential Backup Pool}
742 \index[dir]{Directive!Differential Backup Pool}
743 La directive {\it Differential Backup Pool} sp\'ecifie un Pool \`a utiliser pour les
744 sauvegardes Diff\'erentielles. Cette directive outrepasse toute autre sp\'ecification
745 de Pool lors d'une sauvegarde Diff\'erentielle. Cette directive est optionnelle.
747 \item {\bf Incremental Backup Pool = \lt{}pool-resource-name\gt{} }
748 \index[dir]{Incremental Backup Pool}
749 \index[dir]{Directive!Differential Backup Pool}
750 La directive {\it Incremental Backup Pool} sp\'ecifie un Pool \`a utiliser pour les
751 sauvegardes Incr\'ementales. Cette directive outrepasse toute autre sp\'ecification
752 de Pool lors d'une sauvegarde Incr\'ementale. Cette directive est optionnelle.
754 \item {\bf Schedule = \lt{}schedule-name\gt{}}
755 \index[dir]{Schedule}
756 \index[dir]{Directive!Schedule}
757 La directive Schedule d\'efinit la planification du job. Le {\it schedule} d\'etermine
758 la date et l'instant o\`u le job doit \^etre lanc\'e automatiquement, et le niveau
759 (Full, Diff\'erentiel, Incr\'emental...) du job en question. Cette directive est
760 optionnelle. Si elle est omise, le job ne pourra \^etre ex\'ecut\'e que manuellement via
761 la Console. Bien que vous puissiez vous contenter d'une ressource Schedule simple
762 pour tout job, vous pouvez aussi d\'efinir des ressources Schedule avec plusieurs
763 directives {\bf Run}, afin de lancer le job \`a diff\'erentes heures. Chacune de ces
764 directives {\bf Run} permet d'outrepasser les valeurs par d\'efaut de Level, Pool,
765 Storage et Messages ressources. Ceci autorise une grande souplesse d'utilisation
767 Pour plus de d\'etails, consultez le chapitre.
768 \ilink{Ressource Schedule}{ScheduleResource} de ce manuel.
770 \item {\bf Storage = \lt{}storage-resource-name\gt{}}
772 \index[dir]{Directive!Storage}
773 La directive Storage d\'efinit le nom du service storage que vous souhaitez
774 utiliser pour sauvegarder les donn\'ees du FileSet. Pour plus de d\'etails, consultez le
775 chapitre \ilink{Ressource Storage}{StorageResource2} de ce manuel.
776 Cette directive est requise.
778 \item {\bf Max Start Delay = \lt{}time\gt{}}
779 \index[sd]{Max Start Delay}
780 \index[dir]{Directive!Max Start Delay}
781 La directive Max Start Delay sp\'ecifie le d\'elai maximal entre l'horaire
782 planifi\'e (dans le schedule) et l'horaire effectif de d\'emarrage du job.
783 Par exemple, un job peut \^etre programm\'e pour d\'emarrer \`a 1h, mais \^etre
784 mis en attente \`a cause d'autres jobs en cours d'ex\'ecution. Si le
785 Max Start Delay a \'et\'e r\'egl\'e \`a 3600, le job sera supprimm\'e s'il n'a pas
786 d\'emarr\'e \`a 2h. Ceci peut se r\'ev\'eler utile pour, par exemple, \'eviter qu'un job
787 s'ex\'ecute duant les heures ouvrables. La valeur par d\'efaut est 0 (pas de limite).
789 \item {\bf Max Run Time = \lt{}time\gt{}}
790 \index[sd]{Max Run Time}
791 \index[dir]{Directive!Max Run Time}
792 La directive Max Run Time sp\'ecifie le d\'elai allou\'e pour l'ex\'ecution
793 compl\`ete d'un job depuis son lancement (pas n\'ecessairement \`a l'heure
794 de sa programmation) jusqu'\`a sa fin. Cette directive est impl\'ement\'ee
795 depuis la version 1.33.
797 \item {\bf Max Wait Time = \lt{}time\gt{}}
798 \index[sd]{Max Wait Time}
799 \index[dir]{Directive!Max Wait Time}
800 La directive Max Wait Time sp\'ecifie le d\'elai maximum durant lequel un
801 job peut rester bloqu\'e en attente d'une ressource (par exemple, en attente du
802 montage d'une cartouche ou encore en attente des Storage ou File Daemon occup\'es
803 \`a d'autres tâches) depuis son lancement (pas n\'ecessairement \`a l'heure
804 de sa programmation) jusqu'\`a sa fin. Cette directive est impl\'ement\'ee
805 depuis la version 1.33.
807 \item [Incremental Max Wait Time = \lt{}time\gt{}]
808 \index[dir]{Incremental Max Wait Time}
809 \index[dir]{Directive!Incremental Max Wait Time}
810 Cette directive sp\'ecifie le temps maximum durant lequel une sauvegarde
811 incr\'ementale peut rester bloqu\'ee en attente d'une ressource (par exemple, en
812 attente d'une cartouche ou des File ou Storage daemons), compt\'e \`a partir
813 du d\'emarrage du job, ({\bf pas n\'ecessairement} l'heure \`a laquelle le job
814 a \'et\'e programm\'e). Notez que si un {\bf Max Wait Time} a \'et\'e sp\'ecifi\'e,
815 il peut aussi s'appliquer au job.
817 \item [Differential Max Wait Time = \lt{}time\gt{}]
818 \index[dir]{Differential Max Wait Time}
819 \index[dir]{Directive!Differential Max Wait Time}
820 Cette directive sp\'ecifie le temps maximum durant lequel une sauvegarde
821 diff\'erentielle peut rester bloqu\'ee en attente d'une ressource (par exemple, en
822 attente d'une cartouche ou des File ou Storage daemons), compt\'e \`a partir
823 du d\'emarrage du job, ({\bf pas n\'ecessairement} l'heure \`a laquelle le job
824 a \'et\'e programm\'e). Notez que si un {\bf Max Wait Time} a \'et\'e sp\'ecifi\'e,
825 il peut aussi s'appliquer au job.
827 \item [Prefer Mounted Volumes = \lt{}yes|no\gt{}]
828 \index[dir]{Prefer Mounted Volumes}
829 \index[dir]{Directive!Differential Max Wait Time}
830 Si cette directive est activ\'ee (c'est le cas par d\'efaut), le Director
831 ordonne au Storage daemon de s\'electionner de pr\'ef\'erence soit une
832 librairie, soit un lecteur avec un volume valide d\'ej\`a mont\'e, plut\^ot qu'un
833 lecteur pas pr\`et. Si aucun lecteur n'est pr\`et, c'est le premier lecteur
834 pr\`et qui sera s\'electionn\'e.
836 Si cette directive est d\'esactiv\'ee, le Storage daemon privil\'egiera
837 les lecteurs inutilis\'es. Ce mode de fonctionnement peut \^etre tr\`es utile
838 pour ces sites avec de nombreux lecteurs qui o\`u il peut \^etre pr\'ef\'erable
839 de maximiser le flux des sauvegardes au prix d'une utilisation d'un plus
840 grand nombre de lecteurs et de cartouches. Afin d'optimiser l'utilisation
841 de plusieurs lecteurs, vous voudrez probablement lancer chacun de vos
842 jobs l'un apr\`es l'autre avec un intervalle de 5 secondes environ. Ceci
843 aidera \`a assurer que chaque nuit, le m\^eme lecteur (volume) est
844 s\'electionn\'e pour le m\^eme job. Autrement, lors d'une restauration, vous
845 pourriez trouver vos fichiers dispers\'es sur beaucoup plus de volumes que
848 \item {\bf Prune Jobs = \lt{}yes|no\gt{}}
849 \index[dir]{Prune Jobs}
850 \index[dir]{Directive!Prune Jobs}
851 En principe, l'\'elagage des jobs du catalogue est sp\'ecifi\'e pour chaque client
852 dans sa propre ressource Client par la directive {\bf AutoPrune}. Si cette
853 directive est sp\'ecifi\'ee (normalement, non) et si la valeur est {\bf yes},
854 elle outrepasse la valeur sp\'ecifi\'ee dans la ressource Client. La valeur
855 par d\'efaut est {\bf no}.
857 \item {\bf Prune Files = \lt{}yes|no\gt{}}
858 \index[dir]{Prune Files}
859 \index[dir]{Directive!Prune Jobs}
860 En principe, l'\'elagage des fichiers du catalogue est sp\'ecifi\'e pour chaque client
861 dans sa propre ressource Client par la directive {\bf AutoPrune}. Si cette
862 directive est sp\'ecifi\'ee (normalement, non) et si la valeur est {\bf yes},
863 elle outrepasse la valeur sp\'ecifi\'ee dans la ressource Client. La valeur
864 par d\'efaut est {\bf no}.
866 \item {\bf Prune Volumes = \lt{}yes|no\gt{}}
867 \index[dir]{Prune Volumes}
868 \index[dir]{Directive!Prune Jobs}
869 En principe, l'\'elagage des volumes du catalogue est sp\'ecifi\'e pour chaque client
870 dans sa propre ressource Client par la directive {\bf AutoPrune}. Si cette
871 directive est sp\'ecifi\'ee (normalement, non) et si la valeur est {\bf yes},
872 elle outrepasse la valeur sp\'ecifi\'ee dans la ressource Client. La valeur
873 par d\'efaut est {\bf no}.
875 \item {\bf Run Before Job = \lt{}command\gt{}}
876 \index[dir]{Run Before Job}
877 \index[dir]{Directive!Run Before Job}
878 La commande sp\'ecifi\'ee est ex\'ecut\'ee en tant que programme externe avant le
879 lancement du job. Tout retour de la commande sur la sortie standard est
880 incluse dans le rapport de job de Bacula. La chaîne {bf command} doit \^etre
881 un nom de programme valide ou un script shell. Cette directive n'est pas requise,
882 mais si elle est d\'efinie, et si le code retour d'ex\'ecution du programme
883 est diff\'erent de z\'ero, le job qui a lanc\'e le programme est effac\'e. D'autre part,
884 la chaîne {bf command} est parcourue puis envoy\'ee vers la fonction execvp(), ce qui
885 signifie que le chemin de la commande est recherch\'e pour son ex\'ecution, mais
886 qu'il n'y a aucune interpr\'etation shell. Par cons\'equent, si vous voulez utiliser
887 des commandes complexes ou toute fonctionnalit\'e du shell telle que la
888 redirection, vous devez appeler un script shell o\`u vous mettrez vos commandes.
889 Avant de soumettre la commande sp\'ecifi\'ee au syst\`eme d'exploitation, Bacula
890 effectue les substitutions suivantes :
898 %e = Statut de sortie du job
900 %j = Nom unique du job
903 %s = Temps Depuis (NDT : Since Time)
904 %t = Type de job (Backup,...)
911 Le le code de statut de fin de job peut prendre les valeurs suivantes :
913 \index[dir]{Exit Status}
920 \item Unknown term code
923 Aussi, si vous l'utilisez dans une ligne de commande, il vous faudra l'encadrer
926 Depuis la version 1.30, Bacula contr\^ole le statut de sortie du programme
927 RunBeforeJob. S'il est diff\'erent de z\'ero, le job se termine en erreur.
928 Lutz Kittler a fait remarquer que ceci peut \^etre un moyen ais\'e pour modifier
929 vos schedules pour les vacances. Par exemple, supposons que vous fassiez
930 habituellement des sauvegardes Full le vendredi, mais que jeudi et vendredi
931 soient f\'eri\'es. Pour \'eviter d'avoir \`a changer les cartouches entre jeudi et vendredi
932 alors que personne n'est au bureau, vous pouvez cr\'eer un RunBeforeJob qui retourne
933 un statut non nul jeudi et z\'ero les autres jours. Ainsi, le job de jeudi ne sera pas
934 ex\'ecut\'e, et la cartouche que vous avez ins\'er\'e mercredi sera disponible pour la Full
937 \item {\bf Run After Job = \lt{}command\gt{}}
938 \index[dir]{Run After Job}
939 \index[dir]{Directive!Run After Job}
940 La commande sp\'ecifi\'ee est ex\'ecut\'ee en tant que programme externe apr\`es la fin
941 du job. La chaîne {bf command} doit \^etre un nom de programme valide ou un
942 script shell. Cette directive n'est pas requise. Si le code de sortie du
943 programme est non nul, Bacula affiche un message d'avertissement (warning).
945 la commande sp\'ecifi\'ee au syst\`eme d'exploitation, Bacula effectue les
946 substitutions de caract\`eres d\'ecrites au paragraphe {\bf Run Before Job}
948 Un exemple d'utilisation de cette directive est donn\'e au chapitre
949 \ilink{Astuces}{JobNotification} de ce manuel.
950 Lisez le paragraphe {\bf Run After Failed Job} si vous voulez exécuter
951 une commande lorqu'un job se termine avec un statut anormal.
953 \item [Run After Failed Job = \lt{}command\gt{}]
954 \index[dir]{Run After Job}
955 \index[dir]{Directive!Run After Job}
956 La commande spécifiée est exécutée en tant que programme externe après la fin
957 du job lorqu'il se termine avec un statut d'erreur. Cette directive est optionnelle.
958 La chaîne {\bf command} doit être le nom d'un programme ou d'un script shell.
959 Si le code de sortie du programme est non nul, Bacula affiche un mesage d'avertissement
960 (warning). Avant de soumettre
961 la commande sp\'ecifi\'ee au syst\`eme d'exploitation, Bacula effectue les
962 substitutions de caract\`eres d\'ecrites au paragraphe {\bf Run Before Job}. Notez que
963 vous pouvez, si vous le souhaitez, spécifier ici le même programme que
964 celui que vous avez utilisé pour la direcive {\bf Run After Job}, de sorte que
965 votre programme soit exécuté quel que soit l'issue du job.
967 Le chapitre \ilink{Trucs et astuces}{JobNotification} de ce manuel propose un
968 exemple d'utilisation de cette directive.
970 \item {\bf Client Run Before Job = \lt{}command\gt{}}
971 \index[dir]{Client Run Before Job}
972 \index[dir]{Directive!Client Run Before Job}
973 Cette directive est similaire \`a {\bf Run Before Job} except\'e que la
974 commande est ex\'ecut\'ee sur la machine cliente. Les m\^emes restrictions
975 s'appliquent aux syt\`emes Unix que celles signal\'ees pour {\bf Run Before Job}.
977 Lorsque vous spécifiez un chemin absolu vers un exécutable, si le chemin ou le nom
978 de l'exécutable contient des espaces ou des caractères spéciaux, il faut les
979 protéger par des quotes. Il en va de même des éventuels arguments.
982 {\bf Consid\'erations particuli\`eres \`a Windows}
983 D'autre part, pour les clients Windows \`a partir de la version 1.33, notez bien
984 que vous devez fournir un chemin correct pour votre script, et que le script
985 peut avoir l'extension .com, .exe, ou .bat. Si vous sp\'ecifiez un chemin,
986 vous devez aussi sp\'ecifier l'extension compl\`ete. Les commandes \`a la fa\c{c}on
987 d'Unix ne fonctionneront pas, \`a moins que vous n'ayez install\'e et
988 correctement configur\'e Cygwin en plus (et s\'epar\'ement) de Bacula.
990 La commande peut \^etre n'importe quel programme reconnu par cmd.exe ou command.com
991 comme un fichier ex\'ecutable. Sp\'ecifier une extension de fichier ex\'ecutable
992 est optionnel, \`a moins qu'il y ait une ambigu\"it\'e (par exemple ls.bat, ls.exe).
994 Bacula cherche la commande dans le r\'epertoire "System \%Path\%" (Dans la
995 boîte de dialogue des variables d'environnement vous avez les variables
996 "syst\`eme" et "utilisateurs". Si bacula-fd fonctionne en tant que
997 service, seules les variables d'environnement syst\`emes sont accessibles.)
999 Les variables d'environnement syst\`eme peuvent \^etre invoqu\'ees avec la
1000 syntaxe \%var\% et utilis\'ees comme portion du nom de la commande ou des
1003 Lorsque la sp\'ecification du chemin absolu d'un ex\'ecutable ou le nom de
1004 l'ex\'ecutable contient des espaces ou des caract\`eres sp\'eciaux, ils doivent
1005 \^etre quot\'es. Il en va de m\^eme pour les arguments.
1009 ClientRunBeforeJob = "\"C:/Program Files/Software
1010 Vendor/Executable\" /arg1 /arg2 \"foo bar\""
1014 Les caract\`eres sp\'eciaux \&()[]\{\}\^{}=;!'+,`\~{} devront \^etre quot\'es s'ils font
1015 partie d'un nom de fichier ou d'un argument.
1018 If someone is logged in a blank ``command'' window running the commands will
1019 be present during the execution of the command.
1021 Quelques suggestions de Phil Stracchino pour l'ex\'ecution sur les machines
1022 Win32 avec le File Daemon Win32 natif :
1025 \item Vous pourriez utiliser la directive ClientRunBeforeJob pour sp\'ecifier
1026 un fichier .bat qui ex\'ecute les commandes cot\'e client plut\^ot que
1027 d'essayer d'ex\'ecuter (par exemple) regedit /e directement.
1028 \item Le fichier batch devrait retourner explicitement 0 lors des ex\'ecutions correctes.
1029 \item Le chemin vers le fichier batch devrait \^etre sp\'ecifi\'e au format Unix :
1031 ClientRunBeforeJob = ``c:/bacula/bin/systemstate.bat''
1033 plut\^ot qu'au format DOS/Windows :
1035 ClientRunBeforeJob =
1036 ``c:\textbackslash{}bacula\textbackslash{}bin\textbackslash{}systemstate.bat''
1040 L'exemple suivant d'utilisation de la directive Client Run Before Job a \'et\'e soumis
1041 par un utilisateur :\\
1042 Vous pourriez \'ecrire un script shell pour sauvegarder une base DB2 dans un FIFO. Voici
1043 le script en question :
1052 db2 BACKUP DATABASE mercuryd TO $DIR/dbpipe WITHOUT PROMPTING &
1057 La ligne suivante dans la ressource Job du fichier bacula-dir.conf :
1060 Client Run Before Job = "su - mercuryd -c \"/u01/mercuryd/backupdb.sh '%t'
1064 Lorsque le job est ex\'ecut\'e, vous obtiendrez un message de sortie du script
1065 anno\
\ 3ant que la sauvegarde a d\'emarr\'e. M\^eme si la commande est ex\'ecut\'ee en
1066 arri\`ere plan avec \&, le job bloquera jusqu'\`a la commande "db2 BACKUP DATABASE", et
1067 la sauvegarde se fige. Pour rem\'edier \`a cette situation, la ligne "db2 BACKUP DATABASE"
1068 devrait \^etre modifi\'ee en :
1071 db2 BACKUP DATABASE mercuryd TO $DIR/dbpipe WITHOUT PROMPTING > $DIR/backup.log
1075 Il est important de rediriger l'entr\'ee et la sortie d'une commande en arri\`ere plan
1076 vers /dev/null pour \'eviter le bloquage du script.
1078 \item {\bf Client Run After Job = \lt{}command\gt{}}
1079 \index[dir]{Client Run After Job}
1080 \index[dir]{Directive!Client Run After Job}
1081 Cette directive est similaire \`a {\bf Run After Job} sauf qu'elle est ex\'ecut\'ee
1082 sur la machine cliente. Veuillez consulter les notes concernant les clients
1083 Windows dans le paragraphe {\bf Client Run Before Job} ci-dessus.
1085 \item {\bf Rerun Failed Levels = \lt{}yes|no\gt{}}
1086 \index[dir]{Rerun Failed Levels}
1087 \index[dir]{Directive!Rerun Failed Levels}
1088 Si la valeur de cette directive est {\bf yes} ({\bf no} par d\'efaut), et si
1089 Bacula d\'etecte qu'un job ant\'erieur d'un niveau plus \'elev\'e (Full ou
1090 diff\'erentiel), alors le job est \'elev\'e au niveau le plus haut. Ceci est
1091 particuli\`erement utile pour sauvegarder les pc portables qui peuvent
1092 \^etre fr\'equemment inaccessibles. En effet, apr\`es l'\'echec d'une Full, vous
1093 souhaiterez probablement que la prochaine sauvegarde soit de niveau Full
1094 plut\^ot qu'Incremental ou Diff\'erentiel.
1096 \item {\bf Spool Data = \lt{}yes|no\gt{}}
1097 \index[dir]{Spool Data}
1098 \index[dir]{Directive!Spool Data}
1099 Si la valeur de cette directive est {\bf yes} ({\bf no} par d\'efaut), le
1100 Storage Daemon aura pour consigne de stocker les donn\'ees dans un
1101 fichier spoule sur disque plut\^ot que de les \'ecrire directement sur bande.
1102 Lorsque toutes les donn\'ees sont dans le spoule ou lorsque la taille
1103 maximale fix\'ee pour le fichier spoule est atteinte, les donn\'ees sont
1104 d\'echarg\'ees du spoule vers les bandes. Lorsque la valeur de cette directive
1105 est {\bf yes}, la directive Spool Attributes est aussi automatiquement
1106 mise \`a la valeur {\bf yes}. L'utilisation de cette fonctionnalit\'e
1107 pr\'evient les arr\^ets et red\'emarrage incessants lors des incr\'ementales.
1108 Elle ne doit pas \^etre utilis\'ee si vous sauvegardez sur disque.
1111 \item {\bf Spool Attributes = \lt{}yes|no\gt{}}
1112 \index[dir]{Spool Attributes}
1113 \index[dir]{Directive!Spool Attributes}
1114 La valeur par d\'efaut est {\bf no}, ce qui signifie que le Storage Daemon
1115 envoie les attributs de fichiers au Director au moment o\`u ils (les fichiers)
1116 sont ecrits sur la bande. Cependant, si vous souhaitez \'eviter le risque
1117 de ralentissement d\^u aux mises \`a jour du catalogue, vous pouvez r\'egler
1118 cette directive \`a {\bf yes}, dans ce cas, le Storage Daemon stockera les
1119 attributs de fichiers dans un fichier tampon du Working Directory pour ne les
1120 transmettre au Director qu'\`a la fin de l'\'ecriture sur bande des donn\'ees du job.
1122 \item {\bf Where = \lt{}directory\gt{}}
1124 \index[dir]{Directive!Where}
1125 Cette directive ne concerne que les jobs de type Restauration. Elle permet
1126 de sp\'ecifier un pr\'efixe au nom du r\'epertoire o\`u tous les fichiers sont
1127 restaur\'es. Ceci permet de restaurer les fichiers en un emplacement
1128 diff\'erent de celui o\`u ils ont \'et\'e sauvegard\'es. Si {\bf Where} n'est pas
1129 renseign\'e, ou si sa valeur est backslash ({\bf /}), les fichiers sont
1130 restaur\'es \`a leur emplacement d'origine. Par d\'efaut, nous avons donn\'e \`a
1131 {\bf Where} la valeur {\bf /tmp/bacula-restores} dans les fichiers de
1132 configuration fournis en exemple, ceci afin d'\'eviter l'\'ecrasement
1133 accidentel de vos fichiers.
1135 \item {\bf Replace = \lt{}replace-option\gt{}}
1136 \index[dir]{Replace}
1137 \index[dir]{Directive!Replace}
1138 Cette directive ne concerne que les jobs de type Restauration. Elle pr\'ecise
1139 la conduite \`a adopter dans l'\'eventualit\'e o\`u Bacula serait conduit \`a restaurer
1140 un fichier ou un r\'epertoire qui existe d\'ej\`a. Les options suivantes sont
1146 \index[dir]{always }
1147 Lorsque le fichier \`a restaurer existe d\'ej\`a, il est supprim\'e et remplac\'e par la
1148 copie sauvegard\'ee.
1151 \index[dir]{ifnewer }
1152 Si le fichier sauvegard\'e (sur bande) est plus r\'ecent que le fichier existant,
1153 le fichier existant est supprim\'e et remplac\'e par la copie sauvegard\'ee.
1156 \index[dir]{ifolder }
1157 Si le fichier sauvegard\'e (sur bande) est plus ancien que le fichier existant,
1158 le fichier existant est supprim\'e et remplac\'e par la copie sauvegard\'ee.
1162 Si le fichier sauvegard\'e existe d\'ej\`a, Bacula renonce \`a restaurer ce fichier.
1165 \item {\bf Prefix Links=\lt{}yes|no\gt{}}
1166 \index[dir]{Prefix Links}
1167 \index[dir]{Directive!Prefix Links}
1168 Si la valeur de cette directive est {\bf Yes} et si un pr\'efixe de chemin
1169 {\bf Where} est sp\'ecifi\'e, alors ce dernier s'applique aussi aux liens
1170 absolus. La valeur par d\'efaut est {\bf No}. Lorsque cette directive est \`a
1171 {\bf Yes}, tous les liens absolus seront aussi modifi\'es pour
1172 pointer vers le nouveau r\'epertoire. En principe, c'est ce qui est souhait\'e :
1173 l'ensemble du r\'epertoire restaur\'e conserve sa coh\'erence interne. Cependant,
1174 si vous voulez replacer les fichiers ult\'erieurement \`a leurs emplacements
1175 d'origine, tous les liens absolus seront bris\'es.
1177 \item {\bf Maximum Concurrent Jobs = \lt{}number\gt{}}
1178 \index[dir]{Maximum Concurrent Jobs}
1179 \index[dir]{Directive!Maximum Concurrent Jobs}
1180 O\`u \lt{}number\gt{} est le nombre maximum de jobs de la ressource Job courrante
1181 qui peuvent \^etre ex\'ecut\'es simultan\'ement. Notez que cette directive ne limite
1182 que les jobs avec le m\^eme nom que la ressource dans laquelle elle
1183 figure. Toute autre restriction du nombre maximum de jobs simultan\'es, que ce soit au
1184 niveau du Director, du Client ou de la ressource Storage, s'applique en plus de
1185 de la limite stipul\'ee ici. LA valeur par d\'efaut est 1, mais vous pouvez utiliser
1186 une valeur plus grande. Nous vous recommandons fortement de lire
1187 attentivement le paragraphe WARNING sous \ilink{ Maximum Concurrent Jobs}{DirMaxConJobs}
1188 dans la section concernant la ressource Director.
1190 \item {\bf Reschedule On Error = \lt{}yes|no\gt{}}
1191 \index[dir]{Reschedule On Error}
1192 \index[dir]{Directive!Reschedule On Error}
1193 Si cette directive est activ\'ee, alors si le job se termine en erreur, il sera
1194 reprogramm\'e en accord avec les directives {\bf Reschedule Interval} et
1195 {\bf Reschedule Times}. Si vous supprimez le job, il ne sera pas reprogramm\'e.
1196 La valeur par d\'efaut est {\bf no}.
1198 Cette sp\'ecification peut se r\'ev\'eler utile pour les pc portables ainsi que pour toutes
1199 les machines qui ne sont pas connect\'ees au r\'eseau en permanence.
1201 \item {\bf Reschedule Interval = \lt{}time-specification\gt{}}
1202 \index[dir]{Reschedule Interval}
1203 \index[dir]{Directive!Reschedule Interval}
1204 Si cette directive est activ\'ee, alors si le job se termine en erreur, il sera
1205 reprogramm\'e apr\`es l'intervalle de temps stipul\'e par {\bf time-specification}.
1206 Consultez la section \ilink{ the time specification formats}{Time} du chapitre
1207 Configurer Bacula pour plus de d\'etails sur les sp\'ecifications de temps. Si
1208 aucun intervalle n'est sp\'ecifi\'e, le job ne sera pas reprogramm\'e en cas d'erreur.
1210 \item {\bf Reschedule Times = \lt{}count\gt{}}
1211 \index[dir]{Reschedule Times}
1212 \index[dir]{Directive!Reschedule Times}
1213 Cette directive pr\'ecise le nombre maximal de tentatives d'ex\'ecution du job.
1214 S'il est fix\'e \`a z\'ero (valeur par d\'efaut), le job sera reprogramm\'e
1217 \item [Run = \lt{}job-name\gt{}]
1219 \index[dir]{Directive!Run}
1220 \index[dir]{Cloner un Job}
1221 La directive Run (\`a ne pas confondre avec l'option Run dans un
1222 Schedule) vous permet de d\'emarrer ou de cloner des jobs. En utilisant les
1223 mots-clef de clonage (voir ci dessous), vous pouvez sauvegarder les m\^emes
1224 donn\'ees (ou presque les m\^emes) vers deux (ou plus) lecteurs en m\^eme temps.
1225 Le nom de job {\bf job-name} est en principe le m\^eme que celui de la
1226 ressource job courante (cr\'eant ainsi un clone). Cependant, ce peut \^etre
1227 n'importe quel nom de job, de sorte qu'un job peut d\'emarrer d'autre jobs li\'es.
1228 La partie apr\`es le signe \'egale doit \^etre encadr\'ee de double quotes, et peut
1229 contenir toute chaîne ou jeu d'options (surcharges) qui pourraient \^etre
1230 sp\'ecifi\'ees \`a l'utilisation de la commande Run dans la Console. Par exemple,
1231 {\bf storage=DDS-4 ...}. De plus, deux mots-clef sp\'eciaux vous permettent de
1232 cloner le job courant : {\bf level=\%l} et {\bf since=\%s}. le \%l du mot clef
1233 level permet d'entrer le niveau r\'eel du job courant et le \%s du mot clef since
1234 permet d'imposer la m\^eme date pour la comparaison que celle utilis\'ee par le job courant.a
1235 Notez que dans le cas du mot-clef since, le \%s doit \^etre encadr\'e de double quotes,
1236 qui doivent \^etre elles m\^emes pr\'ec\'ed\'ees de barres obliques arri\`eres puisque elles sont
1237 d\'ej\`a entre double quotes. Par exemple :
1240 run = "Nightly-backup level=%s since=\"%s\" storage=DDS-4"
1242 Un job clon\'e ne d\'emarrera pas de nouveaux clones, aussi il n'est pas possible de les cascader.
1245 \item {\bf Priority = \lt{}number\gt{}}
1246 \index[dir]{Priority}
1247 \index[dir]{Directive!Priority}
1248 Cette directive vous permet de contr\^oler l'ordre d'ex\'ecution des jobs en
1249 sp\'ecifiant un entier positif non nul. Plus grand est ce nombre, plus basse
1250 est la priorit\'e du job. En supposant que vous n'ex\'ecutiez pas de jobs
1251 simultan\'es, tous les jobs en file d'attente avec la priorit\'e 1 seront
1252 ex\'ecut\'es avant ceux avec la priorit\'e 2, et ainsi de suite, sans prise en
1253 compte de l'ordre original de planification.
1255 La priorit\'e affecte seulement les jobs en file d'attente, et non les jobs d\'eja
1256 en cours d'ex\'ecution. Si un ou plusieurs jobs de priorit\'e 2 sont d\'ej\`a en cours
1257 d'ex\'ecution, et si un nouveau job est programm\'e avec la priorit\'e 1, les jobs
1258 en cours d'ex\'ecution doivent se terminer pour que le job de priorit\'e 1 puisse
1261 La priorit\'e par d\'efaut est 10.
1263 Si vous voulez ex\'ecutez plusieurs jobs simultan\'es, ce qui n'est pas recommand\'e,
1264 vous devriez garder les points suivants \`a l'esprit :
1267 \item Pour ex\'ecuter plusieurs jobs simultan\'es, vous devez ajuster la directive
1268 {\bf Maximum Concurrent Jobs } en cinq ou six endroits diff\'erents : dans le
1269 fichier bacula-dir.conf, les ressources {\bf Job}, {\bf Client}, {\bf Storage};
1270 dans le fichier bacula-fd, la ressource {\bf FileDaemon}; et dans le fichier
1271 bacula-sd.conf, la ressource {\bf Storage}. Si vous omettez l'un d'entre eux,
1272 les jobs seront ex\'ecut\'es un par un.
1273 \item Bacula n'ex\'ecute pas simultan\'ement les jobs de priorit\'es distinctes.
1274 \item Si Bacula ex\'ecute un job de priorit\'e 2 et si un nouveau job de priorit\'e
1275 1 est programm\'e, il attendra la fin du job de priorit\'e 1, m\^eme si les
1276 param\`etres {\bf Maximum Concurrent Jobs} pourraient permettre l'ex\'ecution
1277 simultan\'ee de deux jobs.
1278 \item Supposons que Bacula soit en train d'ex\'ecuter un job de priorit\'e 2 et qu'un
1279 job de priorit\'e 1 soit programm\'e et mis en queue en attente de la fin du
1280 job de priorit\'e 2. Si vous d\'emarrez alors un second job de priorit\'e 2, le job
1281 en attente de priorit\'e 1 emp\`echera le nouveau job de priorit\'e 2 de s'ex\'ecuter
1282 en parall\`ele au premier. Ainsi : tant qu'il reste un job de priorit\'e sup\'erieure
1283 \`a ex\'ecuter, aucun nouveau job de priorit\'e inf\'erieure ne pourra d\'emarrer, m\^eme si
1284 les param\`etres {\bf Maximum Concurrent Jobs} devraient le permettre. Ceci permet
1285 d'assurer que les jobs de priorit\'e sup\'erieure seront ex\'ecut\'es d\`es que possible.
1288 Si vous avez plusieurs jobs de priorit\'es diff\'erentes, il est pr\'ef\'erable de ne pas les
1289 d\'emarrer exactement \`a la m\^eme heure, car Bacula doit les examiner un \`a la fois. Si,
1290 par hazard, Bacula commence par traiter un job de priorit\'e inf\'erieure, il sera
1291 ex\'ecut\'e avant votre job de priorit\'e \'elev\'e. Pour \'eviter cette situation,
1292 d\'emarrez l'un quelconque des jobs de priorit\'e \'elev\'ee quelques secondes avant
1293 ceux de basse priorit\'e. Ainsi, vous serez assur\'e que Bacula examine les jobs
1294 dans l'ordre voulu et que votre sch\'ema de priorit\'es sera respect\'e.
1296 \label{WritePartAfterJob}
1298 \item {\bf Write Part After Job = \lt{}yes|no\gt{}}
1299 \index[sd]{Write Part After Job}
1300 \index[dir]{Directive!Write Part After Job}
1301 Cette directive est impl\'ement\'ee depuis la version 1.37.
1302 Si la valeur de cette directive est {\bf yes} ({\bf no} par d\'efaut), un nouveau
1303 "fichier partition" (ndt : part file) sera cr\'e\'e apr\`es la fin du job.
1305 Cette directive devrait \^etre activ\'ee lors de l'\'ecriture sur des p\'eriph\'erique
1306 qui requi\`erent un montage (par exemple, les DVDs), afin de vous assurer que
1307 le fichier partition courant, celui qui contient les donn\'ees de ce job, est
1308 envoy\'e vers le p\'eriph\'erique, et qu'aucune donn\'ee n'est laiss\'ee dans le fichier
1309 temporaire sur le disque dur. Quoi qu'il en soit, avec certains supports tels
1310 que les DVD+R et DVD-R, beaucoup d'espace (environ 10 Mb) est perdu \`a chaque fois
1311 qu'un fichier partition est \'ecrit. Aussi, si vous ex\'ecutez plusieurs jobs \`a la
1312 suite, vous devriez r\'egler cette directive \`a {\bf no} pour tous ces jobs sauf
1313 le dernier, pour \'eviter un gaspillage important d'espace, tout en ayant la certitude
1314 que les donn\'ees sont bien \'ecrites sur le m\'edium lorsque tous les jobs sont
1317 Cette directive est ignor\'ee avec les bandes et les p\'eriph\'eriques FIFO.
1320 Voici un exemple de d\'efinition de ressource Job valide.
1327 Level = Incremental # default
1329 FileSet="Minou Full Set"
1332 Schedule = "MinouWeeklyCycle"
1338 \subsection*{La ressource JobDefs}
1339 \label{JobDefsResource}
1340 \index[general]{JobDefs Resource }
1341 \index[general]{Resource!JobDefs }
1342 \addcontentsline{toc}{subsection}{JobDefs Resource}
1344 La ressource Jobdefs admet toutes les directives qui peuvent apparaître dans
1345 une ressource Job. Une ressource Jobdefs ne cr\'e\'e en aucun cas un Job, son r\^ole
1346 est de pouvoir \^etre d\'esign\'ee dans une ressource Job comme un ensemble de
1347 param\`etres par d\'efaut. Ceci permet de d\'efinir plusieurs jobs similaires avec
1348 concision, en ne mentionnant, pour chaque job, que les diff\'erences avec les
1349 valeurs par d\'efaut sp\'ecifi\'ees dans la ressource Jobdefs.
1351 \subsection*{La ressource Schedule}
1352 \label{ScheduleResource}
1353 \index[general]{Resource!Schedule }
1354 \index[general]{Schedule Resource }
1355 \addcontentsline{toc}{subsection}{Schedule Resource}
1357 La ressource Schedule offre un moyen pour planifier automatiquement un Job,
1358 mais aussi la possibilit\'e de surcharger les param\`etres par d\'efaut de Level,
1359 Pool, Storage, et Messages ressources. Si une ressource Schedule n'est pas
1360 sp\'ecifi\'ee dans un job, ce job ne peut \^etre ex\'ecut\'e que manuellement.
1361 En g\'en\'eral, vous sp\'ecifierez une action et le moment de son lancement.
1366 \index[dir]{Schedule}
1367 \index[dir]{Directive!Schedule}
1368 D\'ebut des directives Schedule. La ressource {\bf Schedule} n'est pas requise,
1369 mais il vous en faudra au moins une si vous souhaitez que vos jobs soient
1370 ex\'ecut\'es automatiquement.
1372 \item [Name = \lt{}name\gt{}]
1374 \index[dir]{Directive!Name}
1375 Le nom du Schedule d\'efini. Cette directive est requise.
1377 \item [Run = \lt{}Job-overrides\gt{} \lt{}Date-time-specification\gt{} ]
1379 \index[dir]{Directive!Run}
1380 La directive Run d\'efinit quand un job doit \^etre ex\'ecut\'e, et les \'eventuelles
1381 surcharges \`a appliquer. Il est possible de sp\'ecifier plusieurs directives
1382 {\bf run} au sein d'une ressource {\bf Schedule}, elles seront toutes
1383 appliqu\'ees. Si vous avez deux directives {\bf Run} qui d\'emarrent au m\^eme
1384 moment, deux jobs seront lanc\'es simultan\'ement (en fait, avec une seconde d'\'ecart).
1387 La directive {\bf Job-overrides} permet d'outrepasser les sp\'ecifications de
1388 Level, Storage, Messages et Pool \'ecrites dans la ressource Job. De plus,
1389 les sp\'ecifications FullPool, DifferentialPool et IncrementalPool permettent
1390 de passer outre les sp\'ecification de Pool, en accord avec le niveau (level)
1391 effectif d'ex\'ecution du job.
1393 L'utilisation de surcharges permet de peaufiner le param\'etrage d'un job
1394 particulier. Par exemple, vous pourriez surcharger une sp\'ecification
1395 Messages qui enverrait vos logs de backups vers un fichier, de fa\
\ 3on \`a ce qu'ils
1396 vous soient envoy\'es par mails pour les Fulls hebdomadaires ou mensuelles.
1398 Les directives {\bf Job-overrides} sont sp\'ecifi\'ees en tant que {\bf mot-clef=valeur}
1399 o\`u le mot-clef est l'un des suivants : Level, Storage, Messages, Pool, FullPool,
1400 DifferentialPool ou IncrementalPool, et la {\bf valeur} est d\'efinie selon le format
1401 adapt\'e \`a la directive. Vous pouvez sp\'ecifier plusieurs surcharges {\bf Job-overrides}
1402 en une seule directive {\bf Run} en les s\'eparant par des espaces ou des
1403 trailing comas (traduction ?). Par exemple :
1409 \index[dir]{Directive!Level}
1410 Tous les fichiers du FileSet qu'ils aient ou non chang\'e.
1412 \item [Level=Incremental]
1414 \index[dir]{Directive!Level}
1415 Tous les fichiers qui ont chang\'e depuis la derni\`ere sauvegarde.
1419 \index[dir]{Directive!Pool}
1420 Sp\'ecifie l'utilisation du Pool nomm\'e {\bf Weekly}.
1422 \item [Storage=DLT\_Drive]
1423 \index[dir]{Storage }
1424 \index[dir]{Directive!Storage}
1425 Sp\'ecifie l'utilisation du lecteur {\bf DLT\_Drive} pour p\'eriph\'erique de stockage.
1427 \item [Messages=Verbose]
1428 \index[dir]{Messages }
1429 \index[dir]{Directive!Messages}
1430 Sp\'ecifie l'utilisation de la ressource messages {\bf Verbose} pour le job.
1432 \item [FullPool=Full]
1433 \index[dir]{FullPool}
1434 \index[dir]{Directive!FullPool}
1436 Sp\'ecifie l'utilisation du Pool nomm\'e {\bf Full} si le job est une sauvegarde Full,
1437 ou s'il a \'et\'e \'elev\'e en Full bien qu'ayant \'et\'e lanc\'e en tant que diff\'erentiel ou
1440 \item [DifferentialPool=Differential]
1441 \index[dir]{DifferentialPool }
1442 \index[dir]{Directive!DifferentialPool}
1443 Sp\'ecifie l'utilisation du Pool nomm\'e {\bf Differential} si le job est une
1444 sauvegarde diff\'erentielle.
1446 \item [IncrementalPool=Incremental]
1447 \index[dir]{IncrementalPool}
1448 \index[dir]{Directive!IncrementalPool}
1449 Sp\'ecifie l'utilisation du Pool nomm\'e {\bf Incremental} si le job est une
1450 sauvegarde incr\'ementale.
1452 \item [SpoolData=yes|no]
1453 \index[dir]{SpoolData}
1454 \index[dir]{Directive!SpoolData}
1455 Indique \`a Bacula d'ordonner au Storage Daemon de placer les donn\'ees sur un
1456 spool disque avant de les envoyer vers les cartouches.
1458 \item [WritePartAfterJob=yes|no]
1459 \index[dir]{WritePartAfterJob}
1460 \index[dir]{Directive!WritePartAfterJob}
1461 Indique \`a Bacula d'ordonner au Storage Daemon d'\'ecrire le fichier partition
1462 courant vers le p\'eriph\'erique lorsque le job s'ach\`eve (voir
1463 \ilink{la directive Write Part After Job dans la ressource Job}{WritePartAfterJob}).
1466 {\bf Date-time-specification} D\'etermine la planification d'ex\'ecution du job.
1467 La sp\'ecification est une r\'ep\'etition, et, par d\'efaut, Bacula est param\'etr\'e
1468 pour ex\'ecuter un job au d\'ebut de chaque heure de chaque jour de chaque semaine
1469 de chaque mois de chaque ann\'ee. Ce n'est probablement pas ce que vous souhaitez,
1470 aussi vous devez pr\'eciser ou limiter les moments o\`u vous souhaitez voir vos jobs
1471 ex\'ecut\'es. Toute sp\'ecification est suppos\'ee cyclique et servira \`a limiter le
1472 cycle par d\'efaut. Ceci se fait en sp\'ecifiant des masques ou des horaires,
1473 jours de la semaine, jours du mois, semaines du mois, semaines de l'ann\'ee et
1474 mois de l'ann\'ee o\`u vous voulez ex\'ecuter le job. En combinant ces possibilit\'es,
1475 vous pouvez d\'efinir une planification qui se r\'ep\`ete \`a presque n'importe quelle
1478 Concr\`etement, vous devez d\'efinir les {\bf mois}, {\bf jour}, {\bf heure} et
1479 {\bf minute} o\`u le job est \`a ex\'ecuter. Parmis ces quatre objets, le {\bf jour}
1480 est particulier en ce qu'il peut sp\'ecifier un jour du mois (1,2,...31) ou de la
1481 semaine (Monday, Tuesday,...Sunday). Enfin, vous pouvez aussi sp\'ecifier un
1482 jour de la semaine pour restreindre la planification \`a la premi\`ere, deuxi\`eme,
1483 troisi\`eme, quatri\`eme ou cinqui\`eme semaine du mois.
1485 Par exemple, si vous sp\'ecifiez seulement un jour de la semaine, disons {\bf Mardi},
1486 le job sera ex\'ecut\'e toutes les heures de chaque mardi de chaque mois. La raison
1487 en est que les param\`etres {\bf Mois} et {\bf Heure} sont rest\'es \`a leurs valeurs
1488 par d\'efaut : chaque mois et chaque heure.
1490 Notez que, par d\'efaut, sans autre sp\'ecification, votre job s'ex\'ecutera au
1491 d\'ebut de chaque heure. Si vous souhaitez que votre job s'ex\'ecute plus souvent
1492 qu'une fois par heure, il vous faudra d\'efinir plusieurs sp\'ecifications {\bf run}
1493 avec pour chacune une minut diff\'erente.
1495 Les dates et horaires d'ex\'ecutions des jobs peuvent \^etre sp\'ecifi\'es comme suit,
1502 <week-keyword> = 1st | 2nd | 3rd | 4th | 5th | first |
1503 second | third | forth | fifth
1504 <wday-keyword> = sun | mon | tue | wed | thu | fri | sat |
1505 sunday | monday | tuesday | wednesday |
1506 thursday | friday | saturday
1507 <week-of-year-keyword> = w00 | w01 | ... w52 | w53
1508 <month-keyword> = jan | feb | mar | apr | may | jun | jul |
1509 aug | sep | oct | nov | dec | january |
1510 february | ... | december
1511 <daily-keyword> = daily
1512 <weekly-keyword> = weekly
1513 <monthly-keyword> = monthly
1514 <hourly-keyword> = hourly
1515 <digit> = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0
1516 <number> = <digit> | <digit><number>
1517 <12hour> = 0 | 1 | 2 | ... 12
1518 <hour> = 0 | 1 | 2 | ... 23
1519 <minute> = 0 | 1 | 2 | ... 59
1520 <day> = 1 | 2 | ... 31
1521 <time> = <hour>:<minute> |
1522 <12hour>:<minute>am |
1524 <time-spec> = <at-keyword> <time> |
1526 <date-keyword> = <void-keyword> <weekly-keyword>
1527 <day-range> = <day>-<day>
1528 <month-range> = <month-keyword>-<month-keyword>
1529 <wday-range> = <wday-keyword>-<wday-keyword>
1530 <range> = <day-range> | <month-range> |
1532 <date> = <date-keyword> | <day> | <range>
1533 <date-spec> = <date> | <date-spec>
1534 <day-spec> = <day> | <wday-keyword> |
1535 <day-range> | <wday-range> |
1536 <week-keyword> <wday-keyword>
1537 <day-range> | <wday-range> |
1539 <month-spec> = <month-keyword> | <month-range> |
1541 <date-time-spec> = <month-spec> <day-spec> <time-spec>
1547 Notez que les sp\'ecifications de semaine et d'ann\'ee suivent les d\'efinitions ISO
1548 standard de semaine et ann\'ee, o\`u la semaine 1 est la semaine qui contient le
1549 premier jeudi de l'ann\'ee, ou alternativement, la semaine qui contient le
1550 quatri\`eme jour de janvier. Les semaines sont num\'erot\'ees w01 \`a w53. w00 est
1551 pour Bacula la semaine qui pr\'ec\`ede la premi\`ere semaine ISO (c'est \`a dire celle
1552 qui contient les quelques premiers jours de l'ann\'ee si aucun n'est un jeudi).
1553 w00 n'est pas d\'efinie dans les sp\'ecifications ISO. Une semaine commence le Lundi
1554 et se termine le Dimanche.
1556 Voici un exemple de ressource Schedule nomm\'ee {\bf WeeklyCycle} qui ex\'ecute
1557 un job de niveau Full chaque Dimanche \`a 1h05 et un job de niveau incr\'emental
1558 du Lundi au Samedi \`a 1h05 :
1563 Name = "WeeklyCycle"
1564 Run = Level=Full sun at 1:05
1565 Run = Level=Incremental mon-sat at 1:05
1570 Voici un exemple de cycle mensuel :
1575 Name = "MonthlyCycle"
1576 Run = Level=Full Pool=Monthly 1st sun at 1:05
1577 Run = Level=Differential 2nd-5th sun at 1:05
1578 Run = Level=Incremental Pool=Daily mon-sat at 1:05
1583 Le premier de chaque mois :
1589 Run = Level=Full on 1 at 1:05
1590 Run = Level=Incremental on 2-31 at 1:05
1595 Toutes les dix minutes :
1601 Run = Level=Full hourly at 0:05
1602 Run = Level=Full hourly at 0:15
1603 Run = Level=Full hourly at 0:25
1604 Run = Level=Full hourly at 0:35
1605 Run = Level=Full hourly at 0:45
1606 Run = Level=Full hourly at 0:55
1611 \subsection*{Notes techniques sur les Schedules}
1612 \index[general]{Schedules!Technical Notes on }
1613 \index[general]{Technical Notes on Schedules }
1614 \addcontentsline{toc}{subsection}{Notes techniques sur les Schedules}
1615 Au niveau interne, Bacula consid\`ere un schedule en tant que bit masque.
1616 Il y a six masques et un champ minute pour chaque schedule. Les masques sont
1617 heure, jour du mois (mday), jour de la semaine (wday), semaine du mois (wom),
1618 et semaine de l'ann\'ee (woy). Le schedule est initialis\'e de fa\
\ 3on \`a avoir les
1619 bits de chacun de ces masques positionn\'es, ce qui signifie qu'au d\'ebut de chaque
1620 heure, le job sera ex\'ecut\'e. Quand vous sp\'ecifiez un mois pour la premi\`ere
1621 fois, le masque est effac\'e et le bit correspondant au mois s\'electionn\'e est
1622 ajout\'e au masque. Si vous sp\'ecifiez un second mois, le bit correspondant
1623 est aussi ajout\'e. Ainsi, lorsque Bacula examine le masque pour voir si
1624 les bits plac\'es correspondent \`a la date courante, votre job ne sera ex\'ecut\'e
1625 que pendant les deux mois que vous avez sp\'ecifi\'es. De m\^eme, si vous sp\'ecifiez
1626 un horaire, le masque Heure est effac\'e et le bit correspondant \`a l'heure que
1627 vous avez sp\'ecifi\'ee est plac\'e, les minutes sont quant \`a elles stock\'ees dans le
1630 Pour chacun de vos schedules, vous pouvez visualiser le masque associ\'e
1631 grâce \`a la commande {\bf show schedules} du programme Console.
1632 Notez que le bit masque est "zero based", et que Dimanche est le premier
1633 jour de la semaine (bit 0)
1635 \subsection*{La ressource FileSet }
1636 \label{FileSetResource}
1637 \index[general]{Resource!FileSet }
1638 \index[general]{FileSet Resource }
1639 \addcontentsline{toc}{subsection}{FileSet Resource}
1641 La ressource FileSet d\'efinit les fichiers \`a inclure dans une sauvegarde. Pour
1642 chaque job de type sauvegarde, il est n\'ecessaire de d\'efinir au moins une
1643 ressource {\bf FileSet}. Un {\bf FileSet} consiste en une liste de fichiers
1644 ou r\'epertoires \`a inclure, une liste de fichiers ou r\'epertoires \`a exclure, et
1645 diverses options de sauvegardes telles que compression, chiffrement et
1646 signatures qui doivent \^etre appliqu\'ees \`a chaque fichier.
1648 Toute modification de la liste des fichiers inclus provoque la cr\'eation par Bacula
1649 d'un nouveau FileSet (d\'efini par le nom et la somme de contr\^ole MD5 du contenu
1650 du paragraphe Include). Chaque fois qu'un nouveau FileSet est cr\'e\'e, Bacula
1651 s'assure que la premi\`ere sauvegarde est une Full.
1656 \index[dir]{FileSet }
1657 D\'ebut de la ressource FileSet. Au moins une ressource {\bf FileSet} doit
1660 \item [Name = \lt{}name\gt{}]
1662 Le nom de la ressource FileSet. Cette directive est requise.
1664 \item [Ignore FileSet Changes = \lt{}yes|no\gt{}]
1665 \index[dir]{Ignore FileSet Changes }
1666 Si cette directive est activ\'ee ({\bf yes}), toute modification des listes
1667 d'inclusion ou d'exclusion du FileSet sera ignor\'ee et Bacula n'\'el\`evera
1668 pas la prochaine sauvegarde en Full. La valeur par d\'efaut est {\bf no}, ainsi,
1669 si vous modifiez une des listes d'inclusion ou d'exclusion du FileSet, Bacula
1670 forcera une sauvegarde Full pour assurer que tout soit bien sauvegard\'e
1671 proprement. Il n'est pas recommand\'e d'activer cette directive. Cette directive
1672 est disponible \`a partir de Bacula 1.35.4.
1674 \item [{Include \ \{ [ Options \{\lt{}file-options\gt{}\} ...]
1675 \lt{}file-list\gt{} \}
1677 \index[dir]{Include \ \{ [ Options \{\lt{}file-options\gt{}\} ...]
1678 \lt{}file-list\gt{} \} }
1680 \item [Options \ \{ \lt{}file-options\gt{} \}
1682 \index[dir]{Options \ \{ \lt{}file-options\gt{} \} }
1684 \item [Exclude \ \{ \lt{}file-list\gt{} \}]
1685 \index[dir]{Exclude \ \{ \lt{}file-list\gt{} \} }
1687 La ressource Include doit contenir une liste de r\'epertoires et/ou fichiers
1688 \`a traiter lors de la sauvegarde. Normalement, tous les fichiers trouv\'es dans
1689 tous les sous-r\'epertoires de tout r\'epertoire de la liste d'inclusion des
1690 fichiers seront sauvegard\'es. La ressource Include peut aussi comporter une
1691 ou plusieurs ressources Options qui sp\'ecifient des param\`etres tels que
1692 la compression \`a appliquer \`a tous les fichiers ou \`a n'importe quel sous ensemble
1693 de fichiers \`a sauvegarder.
1695 Le nombre de ressources {\bf Include} par FileSet n'est pas limit\'e, chacune ayant
1696 sa propre liste de r\'epertoires et/ou fichiers \`a sauvegarder et ses propres
1697 param\`etres d\'efinis par une ou plusieurs ressources Options. La liste de fichiers
1698 {\bf file-list} consiste en un nom de fichier ou r\'epertoire par ligne.
1699 Les noms de r\'epertoire doivent \^etre sp\'ecifi\'es sans slash final.
1701 Vous devez toujours sp\'ecifier des chemins absolus pour tout fichier ou
1702 r\'epertoire que vous placez dans un FileSet. De plus, sur les machines Windows,
1703 vous devez {\bf toujours} pr\'efixer le r\'epertoire ou nom de fichier d'une
1704 sp\'ecification de disque (par exemple : {\bf c:/xxx}) en utilisant le s\'eparateur
1705 de r\'epertoire Unix (slash /).
1707 Le comportement par d\'efaut de Bacula en ce qui concerne le traitement des
1708 r\'epertoires est de descendre r\'ecursivement dans chaque r\'epertoire
1709 et de sauvegarder tous les fichiers et sous-r\'epertoires. Par d\'efaut, Bacula
1710 ne suit pas les syst\`emes de fichiers transverses (en terminologie Unix, les
1711 points de montage). Ceci signifie que si vous sp\'ecifiez la partition racine
1712 ( par exemple /), Bacula sauvegardera seulement la partition racine, et aucun
1713 des syst\`emes de fichiers mont\'es. De fa\
\ 3on analogue, sur les syst\`emes Windows,
1714 vous devez expliciter chacun des disques que vous souhaitez sauvegarder (par
1715 exemple {\bf c:/} et {\bf d:/}...). De plus, au moins pour les syst\`emes
1716 Windows, il sera la plupart du temps n\'ecessaire d'encadrer chaque sp\'ecification
1717 de doubles quotes, particuli\`erement si le nom du r\'epertoire (ou du fichier)
1718 comporte des espaces. La commande {\bf df} des syst\`emes Unix vous fournira
1719 la liste des r\'epertoires qu'il vous faudra sp\'ecifier pour tout sauvegarder.
1720 Voyez ci-dessous pour un exemple.
1722 Soyez attentif \`a ne pas inclure un r\'epertoire deux fois, car il serait
1723 sauvegard\'e deux fois, ce qui gaspillerait l'espace sur votre p\'eriph\'erique
1724 de sauvegarde. Cette erreur est facile \`a commettre. Par exemple :
1731 Options { compression=GZIP }
1736 Sur un syst\`eme Unix o\`u /usr est un sous r\'epertoire (plut\^ot qu'un syst\`eme de
1737 fichiers mont\'e), cette ressource Include sauvegarderait /usr deux fois.
1738 Dans ce cas, sur les versions ant\'erieures \`a 1.32f-5-09Mar04, en raison
1739 d'un bug, vous ne pourriez restaurer les fichiers li\'es physiquement sauvegard\'es
1742 Si vous avez utilis\'e des versions de Bacula ant\'erieures \`a 1.34.3, vous noterez
1743 ces modifications dans la syntaxe des FileSets :
1746 \item il n'y a pas de signe \'egale (=) apr\`es le "include" et avant l'accolade
1748 \item chaque r\'epertoire (ou nom de fichier) \`a sauvegarder est pr\'ec\'ed\'e de
1750 \item les options qui apparaissaient pr\'ec\'edemmant sur la ligne Include doivent
1751 d\'esormais \^etre sp\'ecifi\'ees dans leur propre ressource Options.
1754 La ressource Options est optionnelle, mais lorsqu'elle est sp\'ecifi\'ee, elle doit
1755 contenir une liste de lignes "{\bf mot-clef=valeur}" relatives aux options \`a appliquer
1756 \`a la liste de fichiers/r\'epertoires. Plusieurs ressources Options peuvent \^etre
1757 sp\'ecifi\'ees l'une apr\`es l'autre. Lorsqu'un fichier se trouve dans un dossier
1758 sp\'ecifi\'e, les options sont appliqu\'ees au nom de fichier pour savoir s'il doit
1759 \^etre sauvegard\'e, et comment. Les ressources Options sont appliqu\'ees dans l'ordre
1760 o\`u elles apparaîssent dans le FileSet jusqu'\`a ce qu'il y en ait une qui corresponde.
1761 Une ressource Options qui ne contient pas de directive {\bf wild} (sp\'ecification
1762 de caract\`ere joker, voir ci-dessous) est consid\'er\'ee comme concernant tous les
1763 fichiers. Il est important de bien comprendre ceci, car une fois que Bacula a
1764 d\'etermin\'e que des Options s'appliquent \`a un fichier donn\'e, ce fichier sera
1765 sauvegard\'e sans tenir compte d'aucunes des \'eventuelles autres ressources Options.
1766 Ceci signifie que toute ressource Options avec caract\`eres joker doit apparaître
1767 avant une ressource Options sans caract\`eres joker.
1769 Si, pour quelque raison, Bacula applique toutes les ressources Options \`a un
1770 fichier sans qu'aucune ne corresponde (en g\'en\'eral \`a cause de caract\`eres joker
1771 qui ne correspondent pas), par d\'efaut Bacula sauvegardera le fichier. Ceci est
1772 assez logique si vous consid\'erez la situation sans options, o\`u vous souhaitez
1773 que tout soit sauvegard\'e. De plus, dans le cas ou aucune correspondance n'est
1774 trouv\'ee, Bacula utilise les options de la derni\`ere ressource Options. Par cons\'equent,
1775 si vous souhaitez d\'efinir un jeu d'options par d\'efaut, vous devriez les placer
1776 dans la derni\`ere ressource Options.
1778 Les directives disponibles pour les ressources Options sont les suivantes :
1781 \item [compression=GZIP]
1782 \index[dir]{compression }
1783 Tous les fichiers sauvegard\'es sont compress\'es (NDT : compression logicielle,
1784 par opposition \`a la compression mat\'erielle effectu\'ee par le lecteur) au
1785 format GNU ZIP. Chaque fichier est compress\'e individuellement par le File
1786 Daemon. S'il y a un probl\`eme \`a la lecture d'une cartouche au niveau de
1787 l'enregistrement d'un fichier, il affectera tout au plus ce fichier et aucun
1788 des autres fichiers de la cartouche. La plupart du temps, cette option n'est
1789 pas n\'ecessaire si vous avez un lecteur de bandes moderne qui applique sa
1790 propre compression. En fait, si vous activez les deux compressions
1791 simultan\'ement, il se peut que vos fichiers occupent plus d'espace sur le
1792 volume qu'avec une seule.
1794 La compression logicielle est particuli\`erement int\'eressante lorsque vous
1795 sauvegardez sur disque, et peut \^etre d'un grand secours si vous avez un
1796 ordinateur rapide mais un r\'eseau lent.
1798 La sp\'ecification {\bf GZIP} utilise le niveau de compression six par d\'efaut
1799 (i.e. {\bf GZIP} est \'equivalent \`a {\bf GZIP6}). Si vous voulez utiliser un
1800 niveau diff\'erent (de 1 \`a 9), vous pouvez le sp\'ecifier en ajoutant le num\'ero
1801 du niveau voulu \`a la fin du mot {\bf GZIP}, sans espace. Ainsi, {\bf compression=GZIP1}
1802 d\'esigne la compression la moins efficace, mais l'algorithme le plus rapide,
1803 tandis que {\bf compression=GZIP9} est le niveau de compression le plus \'elev\'e,
1804 mais requi\`ere plus de puissance de calcul. Selon la documentation GZIP, les
1805 niveaux de compression sup\'erieurs \`a 6 ne procurent g\'en\'eralement que peu
1806 de compression suppl\'ementaire alors qu'ils sont plut\^ot exigeants en puissance
1809 \item [signature=SHA1]
1810 \index[dir]{signature }
1811 La signature SHA1 est calcul\'ee pour tous les fichiers sauvegard\'es.
1812 L'algorithme SHA1 est
1813 r\'eput\'e plus lent que MD5, mais bien meilleur d'un point de vue cryptographique
1814 (i.e. beaucoup moins de collisions et probabilit\'e de piratage bien inf\'erieure.).
1815 Nous recommandons fortement d'activer l'une ou l'autre des options SHA1 ou MD5
1816 par d\'efaut pour tous les fichiers. Notez que seule l'une de ces deux options
1817 peut \^etre activ\'ee pour tout fichier.
1819 \item [signature=MD5]
1820 \index[dir]{signature }
1821 La signature MD5 est calcul\'ee pour tous les fichiers sauvegard\'es. Activer cette
1822 option r\'esulte en une charge CPU suppl\'ementaire de l'ordre de 5\% pour chaque
1823 fichier sauvegard\'e. D'autre part, la signature MD5 ajoute 16 octets
1824 suppl\'ementaires au catalogue pour chaque fichier sauvegard\'e. Nous recommandons
1825 fortement d'activer l'une ou l'autre des options SHA1 ou MD5 par d\'efaut pour tous
1828 \item [verify=\lt{}options\gt{}]
1829 \index[dir]{verify }
1830 Les "options-lettres" sont utilis\'ees lors de l'ex\'ecution de jobs de type {\bf Verify}
1831 de niveau {\bf Level=Catalog} et de niveau {\bf Level=DiskToCatalog}. Les options
1832 peuvent \^etre n'importe quelle combinaison de ces lettres.
1840 compare bits de permissions
1843 compare le nombre de liens
1846 compare les user ids
1849 compare les group ids
1855 compare les date d'acc\`es (access time)
1858 compare les dates de modification (st\_mtime)
1861 compare les dates de changement (st\_ctime)
1864 signale tout fichier dont la taille a diminu\'e
1867 compare les signatures MD5
1870 compare les signatures SHA1
1873 Le jeu d'options {\bf pins5} (qui compare les bits de permissions, les inodes,
1874 les nombres de liens, la taille des fichiers et les signatures MD5) est tr\`es
1875 utile pour des jobs de type verify de niveaux {\bf Level=Catalog} ou
1876 {\bf Level=DiskToCatalog}.
1878 \item [{\bf onefs=yes|no}]
1880 Si cette option est activ\'ee (valeur {\bf yes}, par d\'efaut), Bacula ne
1881 changera pas de syst\`eme de fichiers. Autrement dit, il ne sauvegardera pas
1882 les syst\`emes de fichiers mont\'es sur des sous-r\'epertoires. Si vous souhaitez
1883 sauvegarder plusieurs syst\`emes de fichiers, vous pouvez les \'enum\'erer
1884 explicitement. Une autre possibilit\'e consiste \`a d\'esactiver l'option onefs
1885 ({\bf onefs=no}) afin que Bacula sauvegarde les syst\`emes de fichiers mont\'es
1886 trouv\'es dans les r\'epertoires list\'es dans votre FileSet. Ainsi, si vous avez
1887 des syst\`emes de fichiers NFS ou Samba mont\'es sur un r\'epertoire list\'e dans le
1888 FileSet, ils seront aussi sauvegard\'es. En principe, il est pr\'ef\'erable
1889 d'activer cette option et de nommer explicitement chaque syst\`eme de fichier
1890 que vous voulez sauvegarder. Ce nommage explicite \'evite le risque de tomber
1891 dans une boucle infinie de syst\`emes de fichiers. Voyez l'exemple ci-dessous
1892 pour plus de d\'etails.
1896 \item [{\bf portable=yes|no}]
1897 \index[dir]{portable }
1898 Si cette option est activ\'ee (la valeur par d\'efaut est {\bf no}), le File Daemon
1899 sauvegarde les fichiers win32 dans un format portable, mais tous les attributs
1900 de fichiers win32 ne seront pas sauvegard\'es ni restaurables. La valeur par
1901 d\'efaut est {\bf no}, ce qui signifie que sur les syst\`emes Win32, les donn\'ees
1902 sont sauvegard\'ees en utilisant les appels Windows API et sur les WinNT/2k/XP,
1903 tous les attributs de s\'ecurit\'e et de propri\'et\'e sont correctement sauvegard\'es
1904 et restaur\'es. Cependant, ce format n'est pas portable aux autres syst\`emes
1905 -- par exemple UNIX, Win95/98/Me. Lors de la sauvegarde de syst\`emes Unix,
1906 cette option est ignor\'ee, et \`a moins que vous n'ayez un besoin sp\'ecifique de
1907 portabilit\'e de vos sauvegardes, nous recommandons d'accepter la valeur par
1908 d\'efaut ({\bf no}) de sorte qu'un maximum d'informations concernant vos
1909 fichiers soit sauvegard\'e.
1911 \item [{\bf recurse=yes|no}]
1912 \index[dir]{recurse }
1913 Si cette option est activ\'ee (la valeur par d\'efaut est {\bf yes}), Bacula
1914 descend r\'ecursivement dans tout sous-r\'epertoire trouv\'e, \`a moins qu'il ne soit
1915 explicitement exclu par une d\'efinition {\bf exclude}. Si vous d\'esactivez cette
1916 option ({\bf recurse=no}), Bacula sauvegardera toutes les entr\'ees de sous-
1917 r\'epertoires, mais n'entrera pas dans ces sous-r\'epertoires, et ainsi ne
1918 sauvegardera pas les fichiers ou \'epertoires contenus dans ces sous-r\'epertoires.
1919 En principe, vous pr\'ef\`ererez la valeur par d\'efaut ({\bf yes}).
1921 \item [{\bf sparse=yes|no}]
1922 \index[dir]{sparse }
1923 Cette option active un code sp\'ecial qui d\'etecte les fichiers clairsem\'es tels
1924 ceux cr\'e\'es par ndbm. Elle est d\'esactiv\'ee par d\'efaut ({\bf sparse=no}), de sorte
1925 qu'aucun contr\^ole n'est fait pour rechercher les fichiers clairsem\'es. Vous
1926 pouvez l'activer sans danger sur des fichiers non clairsem\'es, cependant elle
1927 entraîne une l\'eg\`ere charge suppl\'ementaire pour la d\'etection de tampons remplis
1928 de z\'eros (buffers of all zero), et un l\'eger surplus d'espace sur l'archive
1929 de sortie sera utilis\'e pour ssauver les adresses de recherche de chaque
1930 enregistrement non-nul trouv\'e.
1932 {\bf Restrictions:} Bacula lit les fichiers dans des tampons de 32K. Si le tampon
1933 entier est rempli de z\'eros, il sera trait\'e en tant que bloc clairsem\'e, et ne sera pas
1934 \'ecrit sur la cartouche. En revanche, si une partie quelconque du tampon est
1935 non-nulle, le tampon sera int\'egralement copi\'e sur la cartouche, avec \'eventuellement
1936 des secteurs de disque (g\'en\'eralement 4098 octets) enti\`erement nuls. La d\'etection par
1937 Bacula des blocs clairsem\'es a lieu sur des blocs de 32K plut\^ot que sur des blocs de
1938 taille d\'etermin\'ee par le syst\`eme. Si quelqu'un consid\`ere ceci comme un r\'eelle
1939 probl\`eme, merci d'envoyer une demande de modification en exposant les raisons.
1940 Ce code est apparu avec la version 1.27 de Bacula.
1942 Si vous n'\^etes pas familier avec les notions de fichiers clairsem\'es, prenons
1943 pour exemple un fichier o\`u vous \'ecrivez 512 octets \`a l'adresse 0, puis 512 octets
1944 \`a l'adresse 1 million. Le syst\`eme d'exploitation n'allouera que deux blocs, et
1945 rien n'est allou\'e pour l'espace vide. Pourtant, lorsque vous lisez le fichier
1946 clairsem\'e, le syst\`eme retourne tous les z\'eros comme si l'espace \'etait allou\'e,
1947 et si vous sauvegardez un tel fichier, vous utiliserez beaucoup d'espace
1948 sur le volume pour \'ecrire des z\'eros. Pire encore, lorsque vous restaurez ce
1949 fichier \`a son emplacement initial, tous les emplacements pr\'ec\'edemment vides
1950 seront cette fois allou\'es, occupant ainsi beaucoup plus d'espace disque.
1951 En activant l'option {\bf sparse}, Bacula recherchera sp\'ecifiquement l'espace
1952 vide dans les fichiers afin d'\'eviter ces inconv\'enients. Le prix \`a payer est que
1953 Bacula doit d'abord examiner chaque bloc lu avant de l'\'ecrire. Sur un syst\`eme lent,
1954 ceci peut-\^etre important. Si vous suspectez certains de vos fichiers d'\^etre
1955 clairsem\'es, vous devriez mesurer les performances et gains d'espace avec et
1956 sans l'options, ou ne l'activer que pour les fichiers effectivement
1961 \item [{\bf readfifo=yes|no}]
1962 \index[dir]{readfifo }
1963 Cette option, si elle est activ\'ee, indique au client de lire les donn\'ees
1964 (lors d'une sauvegarde) et de les \'ecrire (lors d'une restauration) sur
1965 un FIFO (pipe) explicitement explicitement mentionn\'e dans le FileSet.
1966 Dans ce cas, vous devez avoir un programme actif qui \'ecrit sur ce FIFO
1967 dans le cas d'une sauvegarde, ou qui le lit dans le cas d'une restauration.
1968 (Ceci peut \^etre accompli par la directive {\bf RunBeforeJob}). Si cette
1969 condition n'est pas satisfaite, Bacula demeurera en suspens ind\'efiniment
1970 en lecture/\'ecriture du FIFO. Lorsque cette option est d\'esactiv\'ee (par d\'efaut),
1971 le Client sauvegarde simplement l'entr\'ee du r\'epertoire pour le FIFO.
1973 \item [{\bf mtimeonly=yes|no}]
1974 \index[dir]{mtimeonly }
1975 Cette option, si elle est activ\'ee, indique au client que la s\'election de fichiers
1976 lors d'une sauvegarde incr\'ementale ou diff\'erentielle ne doit se r\'ef\'erer qu'aux valeurs
1977 de st\_mtime du paquet stat(). La valeur par d\'efaut est {\bf no}, ce qui signifie
1978 que la s\'election de fichiers \`a sauvegarder se base sur les deux valeurs st\_mtime et
1979 st\_ctime. En g\'en\'eral, il n'est pas recommand\'e d'activer cette option.
1981 \item [{\bf keepatime=yes|no}]
1982 \index[dir]{keepatime }
1983 Avec cette option activ\'ee, Bacula r\'etablit le champ st\_atime (date d'acc\`es) des
1984 fichiers qu'il sauvegarde \`a leur valeur d'avant la sauvegarde. Cette option
1985 n'est g\'en\'eralement pas recommand\'ee car il existe peu de programmes qui utilisent
1986 st\_atime, et la charge de la sauvegarde se trouve augment\'ee par les appels
1987 syst\`emes n\'ecessaires pour r\'etablir les dates. (Je ne suis pas sur que ceci
1988 fonctionne sous Win32).
1990 \item [{\bf wild=\lt{}string\gt{}}]
1992 Sp\'ecifie une chaîne de caract\`eres jokers \`a appliquer aux fichiers. Notez
1993 que si {\bf Exclude} n'est pas activ\'ee, cette chaîne s\'electionnera les fichiers
1994 \`a sauvegarder. Si au contraire {\bf Exclude=yes} est sp\'ecifi\'e, la chaîne
1995 s\'electionnera les fichiers \`a exclure de la sauvegarde. Plusieurs directives
1996 wild-card peuvent \^etre sp\'ecifi\'ees et sont appliqu\'ees s\'equentiellement
1997 jusqu'\`a ce que l'une d'elles corresponde.
1999 \item [{\bf regex=\lt{}string\gt{}}]
2001 Sp\'ecifie une expression r\'eguli\`ere \'etendue POSIX \`a appliquer aux fichiers.
2002 Cette directive est disponible \`a partir de Bacula 1.35. Si {\bf Exclude} n'est
2003 pas activ\'ee, cette expression r\'eguli\`ere s\'electionnera les fichiers \`a
2004 sauvegarder. Si au contraire {\bf Exclude=yes} est sp\'ecifi\'e, elle s\'electionnera
2005 les fichiers \`a exclure de la sauvegarde. Plusieurs directives regex peuvent \^etre
2006 sp\'ecifi\'ees et sont appliqu\'ees s\'equentiellement jusqu'\`a ce que l'une d'elles corresponde.
2008 \item [{\bf exclude=yes|no}]
2009 \index[dir]{exclude }
2010 Lorsque cette option est activ\'ee, tout fichier qui correspond aux options est exclu de
2011 la sauvegarde. La valeur par d\'efaut est {\bf no}.
2015 \item [{\bf aclsupport=yes|no}]
2016 \index[dir]{aclsupport }
2017 Si cette option est activ\'ee, et si vous avez install\'e la librarie POSIX {\bf libacl}
2018 sur votre syst\`eme, Bacula sauvegardera Listes de Contr\^oles d'Acc\`es (ACL) UNIX des
2019 fichiers et r\'epertoires telles que d\'efinies dans IEEE Std 1003.1e version 17 et
2020 "POSIX.1e" (abandonn\'e). Cette fonction n'est disponible que sur UNIX et d\'epend de
2021 la librairie ACL. Bacula est automatiquement compil\'e avec le support ACL si la
2022 librairie {\bf libacl} est install\'ee sur votre syst\`eme (ceci est report\'e dans
2023 le fichier config.out). Lors de la restauration, Bacula tentera de restaurer les
2024 ACLs. S'il n'y a pas de support ACL sur le syst\`eme cible, Bacula ne restaurera que les
2025 fichiers et r\'epertoires sans les informations ACL. Veuillez noter que si vous
2026 sauvegardez un syst\`eme de fichiers EXT3 ou XFS avec le support des ACLs, et que vous
2027 restaurez vers un syst\`eme de fichiers sans ACLs (tel , peut-\^etre reiserfs), les
2028 ACLs seront ignor\'ees.
2032 {\bf \lt{}file-list\gt{}} est une liste de r\'epertoires et/ou noms de fichiers sp\'ecifi\'es
2033 avec la directive {\bf File =}. Pour inclure des noms contenant des espaces,
2034 entourez-les de guillemets (doubles quotes).
2036 Il existe quelques notations particuli\`eres pour sp\'ecifier des fichiers et r\'epertoires
2037 dans une liste de fichiers {\bf file-list}. Les voici :
2040 \item Tout nom pr\'ec\'ed\'e d'un signe "at" (@) est compris comme le nom d'un fichier,
2041 lequel contient une liste de fichiers, chacun pr\'ec\'ed\'e d'une directive "File=".
2042 Ce fichier est lu lorsque le fichier de configuration est parcouru au d\'emarrage
2043 du Director. Notez bien que le fichier est lu sur sur la machine qui h\'eberge le
2044 Director (autrement dit, le serveur de sauvegardes) et non sur le Client.
2045 En fait, le "@NomDeFichier" peut apparaître n'importe o\`u dans le fichier de
2046 configuration o\`u un objet pourrait \^etre lu, le contenu du fichier d\'esign\'e sera
2047 logiquement ins\'er\'e \`a l'emplacement du "@NomDeFichier". Ce qui doit figurer dans le
2048 fichier d\'epend de l'emplacement du "@NomDeFichier" au sein du fichier de
2050 \item Tout nom pr\'ec\'ed\'e d'une barre verticale (|) est compris comme le nom d'un
2051 programme. Ce programme sera ex\'ecut\'e sur la machine qui h\'eberge le Director au
2052 moment o\`u le job d\'emarre (et non lorsque le Director lit son fichier de
2053 configuration), et toute sortie de ce programme sera per\
\ 3u en tant que liste
2054 de fichiers ou r\'epertoires, un par ligne, \`a inclure. Ceci vous permet d'avoir un
2055 job qui, par exemple, inclue toutes les partitions locales m\^eme si vous changez le
2056 partitionnement en ajoutant des disques. En g\'en\'eral, il vous faudra pr\'ec\'eder
2057 votre commande d'un "{\bf sh -c}" afin qu'elle soit invoqu\'ee par un shell.
2058 Ce ne sera pas le cas si vous invoquez un script comme dans le second exemple
2059 ci-dessous. Vous devez aussi prendre soin d'\'echapper (pr\'ec\'eder d'un \textbackslash{})
2060 les caract\`eres jokers, les caract\`eres du shell, ainsi que toute espace dans votre
2061 commande. Si vous utilisez des simples quotes (') dans des doubles quotes (``),
2062 Bacula traitera tout ce qui est entre simples quotes comme un seul champ, et il ne
2063 dera donc pas n\'ecessaire d'\'echapper les espaces. En g\'en\'eral, parvenir \`a avoir
2064 toutes les quotes et \'echappements corrects est un calvaire, comme vous pouvez
2065 le constater dans le prochain exemple. Par cons\'equent, il est souvent plus facile
2066 de tout mettre dans un fichier et d'utiliser simplement le nom de fichier dans
2067 Bacula. Dans ce cas le "{\bf sh -c}" ne sera plus n\'ecessaire, pourvu que la
2068 premi\`ere ligne du fichier soit {\bf \#!/bin/sh}.
2077 Options { signature = SHA1 }
2078 File = "|sh -c 'df -l | grep \"^/dev/hd[ab]\" | grep -v \".*/tmp\" \
2079 | awk \"{print \\$6}\"'"
2084 produira une liste de toutes les partitions locales sur un syst\`eme RedHat Linux.
2085 Notez que la ligne si dessus a \'et\'e coup\'ee, mais devrait normalement \^etre \'ecrite
2086 sur une seule ligne. Quoter est un r\'eel probl\`eme car vous devez d'une part le faire
2087 pour Bacula - ce qui consiste \`a pr\'ec\'eder tout \textbackslash{} et tout '' avec un
2088 \textbackslash{} - et d'autre part pour les commandes shell. En d\'efinitive, il est
2089 probablement plus ais\'e d'ex\'ecuter un petit fichier tel que :
2097 File = "|my_partitions"
2102 o\`u le fichier my\_partitions contient :
2107 df -l | grep "^/dev/hd[ab]" | grep -v ".*/tmp" \
2112 Si la barre verticale (|) devant "my\_partitions" est pr\'ec\'ed\'ee d'une barre oblique
2113 (\textbackslash{}), le programme sera ex\'ecut\'e sur la machine cliente plut\^ot que sur
2114 la machine h\'ebergeant le Director -- (ceci est impl\'ement\'e, mais n'est pas compl\`etement
2115 test\'e, et a \'et\'e rapport\'e fonctionner sous Windows). Veuillez noter que si le nom de
2116 fichier est donn\'e entre quotes, vous devrez utiliser deux barres obliques. Voci un
2117 exemple, fourni par John Donagher, qui sauvegarde toutes les partitions UFS locales
2118 sur un syst\`eme distant :
2123 Name = "All local partitions"
2125 Options { signature=SHA1; onefs=yes; }
2126 File = "\\|bash -c \"df -klF ufs | tail +2 | awk '{print \$6}'\""
2132 Notez que deux barres obliques \textbackslash{} sont requises apr\`es les doubles quotes
2133 (l'une pr\'eserve l'autre). Si vous utilisez Linux, changez simplement {\bf ufs} en {\bf ext3}
2134 (ou votre syst\`eme de fichiers pr\'ef\'er\'e) et l'affaire sera dans le sac.
2136 \item Tout \'el\'ement de la liste de fichiers file-list pr\'ec\'ed\'e par un signe "inf\'erieur" (\lt{})
2137 est interpr\'et\'e comme un fichier qui sera lu sur la machine qui h\'eberge le Director
2138 au moment o\`u le job d\'emarre. Son contenu est suppos\'e \^etre une liste de r\'epertoires ou
2139 fichiers, un par ligne, \`a inclure dans la sauvegarde. Les noms ne doivent pas \^etre quot\'es, m\^eme
2140 s'ils comportent des espaces. Cette fonction vous permet de modifier le fichier externe,
2141 et ainsi ce qui est sauvegard\'e sans avoir \`a red\'emarrer Bacula comme il le faudrait avec
2142 le modificateur @ d\'ecrit plus haut.
2144 Si vous pr\'ec\'edez le signe "inf\'erieur" (\lt{}) d'une barre oblique \textbackslash{}\lt{}, le
2145 fichier mentionn\'e sera lu sur la machine cliente au lieu de celle h\'ebergeant le Director.
2146 Veullez noter que si le nom de fichier est donn\'e entre quotes, il vous faudra utiliser deux
2149 \item Si vous sp\'ecifiez explicitement un block device (NDT ?) tel que {\bf /dev/hda1}, alors
2150 Bacula consid\`erera ceci comme une partition raw \`a sauvegarder. Dans ce cas, vous \^etes
2151 fortement invit\'e \`a utiliser l'option {\bf sparse=yes}, faute de quoi vous sauvegarderez
2152 la partition enti\`ere plut\^ot que seulement les donn\'ees r\'eellement contenues dans la
2153 partition. Par exemple :
2158 Options { signature=MD5; sparse=yes }
2164 va sauvegarder les donn\'ees de la partition /dev/hd6.
2166 will backup the data in device /dev/hd6.
2168 Ludovic Strappazon a fait remarquer que cette fonction pouvait servir \`a sauvegarder
2169 un disque Microsoft Windows. Il suffit de booter avec un Linux Rescue Disk, puis de
2170 charger un client Bacula statiquement li\'e comme d\'ecrit dans le chapitre
2171 \ilink{ Disaster Recovery avec Bacula}{_ChapterStart38} de ce manuel. Sauvegardez alors
2172 la partition compl\`ete. En cas de d\'esastre, vous pouvez alors restaurer la partition
2173 d\'esir\'ee en bootant une fois encore sur le Linux Rescue Disk et en utilisant le
2174 client Bacula statiquement li\'e.
2177 \item Si vous sp\'ecifiez explicitement un p\'eriph\'erique FIFO nomm\'e (cr\'e\'e avec mkfifo),
2178 ets si vous ajoutez l'option {\bf readfifo=yes}, Bacula lira le FIFO et sauvegardera ses
2179 donn\'ees sur le volume. Par exemple :
2188 File = /home/abc/fifo
2193 si {\bf /home/abc/fifo} est un FIFO, Bacula va l'ouvrir, le lire, et stocker
2194 toutes les donn\'ees ainsi obtenues sur le volume. Notez qu'il faut que vous ayez
2195 un processus qui \'ecrit sur le FIFO, faute de quoi Bacula restera en suspens, et
2196 abandonnera au bout d'une minute pour passer au fichier suivant. Les donn\'ees
2197 lues peuvent \^etre de nature quelconque puisque Bacula les traite comme un flux.
2199 Cette fonction est un excellent moyen de faire une sauvegarde "\`a chaud" d'une
2200 tr\`es grosse base de donn\'ees. Vous pouvez utiliser la directive {\bf RunBeforeJob}
2201 pour cr\'eer le FIFO et d\'emarrer un programme qui lit dynamiquement votre base de
2202 donn\'ees et l'\'ecrit sur le FIFO. Bacula l'\'ecrira alors sur le volume.
2204 Lors de l'op\'eration de restauration, l'inverse se produit : apr\`es que Bacula ait cr\'e\'e
2205 le FIFO, s'il y avait des donn\'ees stock\'ees par son biais (inutile de les lister
2206 explicitement ni d'ajouter aucune option), elles seront renvoy\'ees vers le FIFO.
2207 Par cons\'equent, s'il existe un tel FIFO \`a restaurer, vous devez vous assurer
2208 qu'il y a un programme lecteur ou Bacula se bloquera et passera au fichier suivant
2215 Voici un exemple de d\'efinition de ressource FileSet valide. Notez que le premier
2216 Include ins\`ere le contenu du fichier {\bf /etc/backup.list} lors du d\'emarrage
2217 de Bacula (i.e. le @).
2229 File = @/etc/backup.list
2237 File = /usr/lib/another_file
2243 Notez que dans l'exemple ci-dessus, tous les fichiers mentionn\'es dans
2244 /etc/backup.list seront compress\'e avec GZIP, qu'une signature SHA1 sera
2245 calcul\'ee sur le contenu des fichiers (leurs donn\'ees), et que la prise en
2246 charge particuli\`ere des fichiers clairsem\'es (sparse) s'appliquera.
2248 Les deux r\'epertoires /root/myfile et /usr/lib/another\_file seront aussi
2249 sauvegard\'es sans aucune option, mais tous les fichiers \`a extension {\bf .o}
2250 de ces r\'epertoires seront exlus de la sauvegarde.
2252 Supposons que vous vouliez sauvegarder tout sauf {\bf /tmp} sur votre syst\`eme.
2253 La commande {\bf df} vous fournit le r\'esultat suivant :
2258 Filesystem 1k-blocks Used Available Use% Mounted on
2259 /dev/hda5 5044156 439232 4348692 10% /
2260 /dev/hda1 62193 4935 54047 9% /boot
2261 /dev/hda9 20161172 5524660 13612372 29% /home
2262 /dev/hda2 62217 6843 52161 12% /rescue
2263 /dev/hda8 5044156 42548 4745376 1% /tmp
2264 /dev/hda6 5044156 2613132 2174792 55% /usr
2265 none 127708 0 127708 0% /dev/shm
2266 //minimatou/c$ 14099200 9895424 4203776 71% /mnt/mmatou
2267 lmatou:/ 1554264 215884 1258056 15% /mnt/matou
2268 lmatou:/home 2478140 1589952 760072 68% /mnt/matou/home
2269 lmatou:/usr 1981000 1199960 678628 64% /mnt/matou/usr
2270 lpmatou:/ 995116 484112 459596 52% /mnt/pmatou
2271 lpmatou:/home 19222656 2787880 15458228 16% /mnt/pmatou/home
2272 lpmatou:/usr 2478140 2038764 311260 87% /mnt/pmatou/usr
2273 deuter:/ 4806936 97684 4465064 3% /mnt/deuter
2274 deuter:/home 4806904 280100 4282620 7% /mnt/deuter/home
2275 deuter:/files 44133352 27652876 14238608 67% /mnt/deuter/files
2279 Si vous vous contentez de sp\'ecifier {\bf /} dans votre liste d'inclusions,
2280 Bacula ne sauvegardera que le syst\`eme de fichiers {\bf /dev/hda5}. Pour
2281 sauvegarder tous vos syst\`emes de fichiers sans inclure les syst\`emes de fichiers
2282 mont\'es Samba ou NFS et en excluant /tmp, /proc, .journal, et .autofsck, que
2283 vous ne voulez ni sauvegarder ni restaurer, vous pouvez utiliser ce qui suit :
2288 Name = Include_example
2307 /tmp \'etant sur son propre syst\`eme de fichiers et n'\'etant pas explicitement nomm\'e
2308 dans la liste d'inclusion, il n'est pas n\'ecessaire de le sp\'ecifier dans la liste
2309 d'exclusion. Cependant, il peut \^etre pr\'ef\'erable de le faire malgr\'e tout par
2310 souci de clart\'e et au cas o\`u il ne serait plus sur sa propre partition apr\`es un
2311 remplacement de disques.
2313 Ayez conscience qu'il peut \^etre {\bf tr\`es} dangereux de permettre \`a Bacula de traverser ou
2314 changer de syst\`eme de fichiers au gr\'e des ppoints de montage. Par exemple, avec ce qui suit :
2319 Name = "Bad example"
2321 Options { onefs=no }
2328 vous sauvegardez une partition NFS mont\'ee ({\bf /mnt/matou}), et puisque
2329 {\bf onefs} est d\'esactiv\'ee, Bacula traverse les syst\`emes de fichiers.
2330 Si jamais {\bf /mnt/matou} contient lui m\^eme un point de montage o\`u le syst\`eme
2331 de fichiers de la machine sauvegard\'ee est mont\'e, ce qui est souvent le cas,
2332 vous vous retrouvez pris dans un boucle r\'ecursive, et la sauvegarde ne se
2335 Le FileSet suivant sauvegarde une partition raw :
2340 Name = "RawPartition"
2342 Options { sparse=yes }
2349 Lorsque vous sauvegardez et restaurez une partition raw, vous devriez vous
2350 assurer qu'aucun autre processus, y compris le syst\`eme, n'\'ecrit sur cette
2351 partition. En guise de pr\'ecaution, nous recommandons ardemment de ne sauvegarder
2352 en mode raw que des partitions non mont\'ees, ou mont\'ees en lecture seule. Ceci peut
2353 \^etre fait si n\'ecessaire avec la directive {\bf RunBeforeJob}.
2357 \subsection*{Consid\'erations sur les FileSets Windows}
2358 \index[general]{FileSets!Windows Considerations for }
2359 \index[general]{Windows Considerations for FileSets }
2360 \addcontentsline{toc}{subsection}{Windows Considerations for FileSets}
2362 Si vous saisissez des noms de fichiers Windows, les chemins des r\'epertoires devraient
2363 \^etre pr\'ec\'ed\'es de double-points (comme dans "c:"). Cependant, les s\'eparateurs de
2364 champs doivent \^etre sp\'ecifi\'es selon la convention Unix (c'est \`a dire, la barre oblique
2365 avant : "/"). Si vous souhaitez inclure une apostrophe dans un nom de fichier, pr\'ec\'edez-la
2366 d'une barre oblique arri\`ere (\textbackslash{}\textbackslash{}). Par exemple, vous pourriez
2367 utiliser ce qui suit pour sauvegarder le r\'epertoire "My Documents" d'une machine Windows :
2372 Name = "Windows Set"
2379 File = "c:/My Documents"
2385 Pour que les listes d'exclusion fonctionnent correctement sous Windows, vous devez
2386 observer les r\`egles suivante :
2389 \item les noms de fichiers sont sensibles \`a la casse, aussi vous devez utilise la
2391 \item vous ne devez pas sp\'ecifier de barre oblique finale pour exclure un r\'epertoire ;
2392 \item si vos noms de fichiers comportent des espaces, vous devez les encadrer de
2393 quillemets. Les barres obliques arri\`eres (\textbackslash{}\textbackslash{}) ne
2395 \item si vous utilisez l'ancienne syntaxe des listes d'exclusion (mentionn\'ee ci-dessous),
2396 vous ne devriez pas sp\'ecifier la lettre r\'ef\'eren\
\ 3ant le disque dans une liste d'exclusion.
2397 La nouvelle syntaxe d\'ecrite ci-dessus devrait fonctionner correctement en incluant la lettre
2401 Merci \`a Thiago Lima pour nous avoir r\'esum\'e les points ci-dessus. Si vous rencontrez
2402 des difficult\'es pour faire fonctionner vos listes d'inclusion ou d'exclusion,
2403 songez \`a utiliser la commande {\bf estimate job=xxx listing} document\'ee
2404 dans le chapitre \ilink{Console chapter}{estimate} de ce manuel.
2406 Sur les syst\`emes Win32, si vous d\'eplacez un r\'epertoire ou si vous renommez
2407 un fichier de la liste \`a sauvegarder, et si une Full a d\'ej\`a eu lieu, Bacula
2408 ne saura reconnaître qu'il existe de nouveaux fichiers \`a sauvegarder lors d'une
2409 incr\'ementale ou d'une diff\'erentielle (faites-en le reproche \`a Microsoft, pas \`a moi !).
2410 Pour pallier \`a ce probl\`eme, veuillez copier tout r\'epertoire ou fichier de la
2411 zone sauvegard\'ee. Si vous ne disposez pas de suffisamment d'espace disque,
2412 d\'eplacez-les, mais lancez alors une sauvegarde Full.
2414 \subsubsection*{Exclusion de fichiers et r\'epertoires}
2415 \index[general]{Directories!Excluding Files and }
2416 \index[general]{Excluding Files and Directories }
2417 \addcontentsline{toc}{subsubsection}{Exclusion de fichiers et r\'epertoires}
2419 Vous pouvez aussi inclure des noms de fichiers ou chemins absolus, en plus
2420 de l'utilisation de caract\`eres jokers et de la directive {\bf Exclude=yes} dans
2421 les ressources Options comme expos\'e ci-dessus, en ajoutant simplement
2422 les fichiers \`a exclure dans une ressource Exclude du FileSet. Par exemple :
2427 Name = Exclusion_example
2448 \subsection*{Un exemple de FileSet Windows}
2449 \index[general]{FileSet!Windows Example }
2450 \index[general]{Un exemple de FileSet Windows}
2451 \addcontentsline{toc}{subsection}{Un exemple de FileSet Windows}
2453 Cet exemple est une contribution de Phil Stracchino :
2457 This is my Windows 2000 fileset:
2459 Name = "Windows 2000 Full Set"
2467 # Most of these files are excluded not because we don't want
2468 # them, but because Win2K won't allow them to be backed up
2469 # except via proprietary Win32 API calls.
2470 File = "/Documents and Settings/*/Application Data/*/Profiles/
2472 File = "/Documents and Settings/*/Local Settings/Application Data/
2473 Microsoft/Windows/[Uu][Ss][Rr][Cc][Ll][Aa][Ss][Ss].*"
2474 File = "/Documents and Settings/*/[Nn][Tt][Uu][Ss][Ee][Rr].*"
2475 File = "/Documents and Settings/*/Cookies/*"
2476 File = "/Documents and Settings/*/Local Settings/History/*"
2477 File = "/Documents and Settings/*/Local Settings/
2478 Temporary Internet Files/*"
2479 File = "/Documents and Settings/*/Local Settings/Temp/*"
2481 File = "/WINNT/security/logs/scepol.log"
2482 File = "/WINNT/system32/config/*"
2483 File = "/WINNT/msdownld.tmp/*"
2484 File = "/WINNT/Internet Logs/*"
2485 File = "/WINNT/$Nt*Uninstall*"
2486 File = "/WINNT/Temp/*"
2489 File = "/pagefile.sys"
2495 Remarque : les trois lignes coup\'ees de cette liste d'exclusion ne l'ont \'et\'e
2496 que pour des motifs de mise en page, elles doivent en r\'ealit\'e \^etre \'ecrites
2497 sur une seule ligne.
2499 \subsection*{L'ancienne ressource FileSet}
2500 \index[general]{Resource!Old FileSet }
2501 \index[general]{L'ancienne ressource FileSet}
2502 \addcontentsline{toc}{subsection}{L'ancienne ressource FileSet}
2504 L'ancienne Ressource FileSet des versions ant\'erieures \`a 1.34.3 est obsol\`ete,
2505 mais fonctionne encore. Nous vous encourageons \`a utiliser la nouvelle forme,
2506 car le code correspondant sera supprim\'e \`a partir de la version 1.37.
2508 \subsection*{Tester vos FileSets}
2509 \index[general]{FileSet!Testing Your }
2510 \index[general]{Tester vos FileSets }
2511 \addcontentsline{toc}{subsection}{Tester vos FileSets}
2513 Si vous voulez vous faire une id\'ee pr\'ecise de ce qui sera effectivement
2514 sauvegard\'e par un FileSet, ou si vous voulez vous assurer de l'efficacit\'e
2515 d'une liste d'exclusion, vous pouvez utiliser la commande {\bf estimate}
2516 du programme Console. Voyez \ilink{estimate command}{estimate} dans le
2517 chapitre Console de ce manuel.
2519 \subsection*{Considerations sur le nommage Windows NTFS}
2520 \index[general]{Considerations sur le nommage Windows NTFS}
2521 \index[general]{Considerations!Windows NTFS Naming }
2522 \addcontentsline{toc}{subsection}{Considerations sur le nommage Windows NTFS}
2524 Les noms de fichiers NTFS contenant des caract\`eres Unicode (i.e. \gt{} 0xFF) ne
2525 peuvent, pour le moment, \^etre nomm\'e eplicitement. Vous devez inclure de tels
2526 fichiers en d\'esignant un r\'epertoire de niveau sup\'erieur ou une lettre de disque
2527 ne contenant pas de caract\`ere Unicode.
2529 \subsection*{La ressource Client}
2530 \label{ClientResource2}
2531 \index[general]{Resource!Client }
2532 \index[general]{La ressource Client}
2533 \addcontentsline{toc}{subsection}{La ressource Client}
2535 La ressource Client d\'efinit les attributs des clients servis (sauvegard\'es)
2536 par ce Director. Il faut une ressource Client par machine sauvegard\'ee.
2540 \item [Client (ou FileDaemon)]
2541 \index[dir]{Client (ou FileDaemon)}
2542 \index[dir]{Directive!Client (or FileDaemon)}
2543 D\'ebut des directives Client.
2545 \item [Name = \lt{}name\gt{}]
2547 \index[dir]{Directive!Name}
2548 Le nom du client qui sera utilis\'e dans la directive Job de la ressource ou
2549 dans une commande run de la Console. Cette directive est requise.
2551 \item [Address = \lt{}address\gt{}]
2552 \index[dir]{Address}
2553 \index[dir]{Directive!Address}
2554 L'adresse d'un File Daemon Bacula est un nom d'h\^ote, un nom pleinement qualifi\'e
2555 ou une adresse r\'eseau au format quatre octets point\'es. Cette directive est requise.
2557 \item [FD Port = \lt{}port-number\gt{}]
2558 \index[dir]{FD Port}
2559 \index[dir]{Directive!FD Port}
2560 O\`u le port est le num\'ero de port auquel le le File Daemon peut \^etre contact\'e.
2561 La valeur par d\'efaut est 9102.
2564 \item [Catalog = \lt{}Catalog-resource-name\gt{}]
2565 \index[dir]{Catalog}
2566 \index[dir]{Directive!Catalog}
2567 Cette directive sp\'ecifie le nom de la ressource catalog \`a utiliser pour ce
2568 client. Cette directive est requise.
2570 \item [Password = \lt{}password\gt{}]
2571 \index[dir]{Password}
2572 \index[dir]{Directive!Password}
2573 Il s'agit ici du mot de passe \`a utiliser lors de la connection avec le
2574 File Daemon, aussi le fichier de configuration de la machine \`a sauvegarder
2575 doit d\'efinir le m\^eme mot de passe pour \^etre connect\'e par ce Director.
2576 Cette directive est requise. Si vous disposez de {\bf /dev/random} ou de {\bf bc}
2577 sur votre machine, Bacula g\'en\`ere des mots de passe al\'eatoires lors du processus
2578 de configuration. Dans le cas contraire, le mot de passe est laiss\'e blanc.
2580 \label{FileRetention}
2582 \item [File Retention = \lt{}time-period-specification\gt{} ]
2583 \index[dir]{File Retention }
2584 \index[dir]{Directive!Password}
2585 La directive File Retention d\'efinit la p\'eriode pendant laquelle Bacula conservera
2586 les enregistrements File dans le catalogue. Lors de l'expiration de cette p\'eriode,
2587 si la directive {\bf AutoPrune} est active ({\bf yes}), Bacula \'elague le catalogue
2588 des enregistrements File dont l'âge est sup\'erieur \`a la p\'eriode de r\'etention.
2589 Notez que ceci n'affecte que les enregistrements du catalogue, et non vos
2590 sauvegardes archiv\'ees.
2592 Les enregistrements File peuvent en fait \^etre conserv\'es pour une p\'eriode inf\'erieure
2593 \`a celle affect\'ee \`a cette directive dans les cas o\`u vous avez sp\'ecifi\'e des p\'eriodes
2594 plus courtes pour les directives {\bf Job Retention} ou {\bf Volume Retention}.
2595 La plus courte des trois prend le pas sur les autres. Les dur\'ees peuvent \^etre exprim\'ees
2596 en secondes, minutes, heures, jours, semaines, mois, trimestres ou ann\'ees. Consultez
2597 le chapitre \ilink{Adapter les fichiers de configuration}{Time} de ce manuel pour plus de d\'etails sur les
2598 sp\'ecifications de dur\'ees.
2600 La valeur par d\'efaut est de 60 jours.
2601 \label{JobRetention}
2603 \item [Job Retention = \lt{}time-period-specification\gt{} ]
2604 \index[dir]{Job Retention}
2605 \index[dir]{Directive!Job Retention}
2606 La directive Job Retention d\'efinit la p\'eriode pendant laquelle Bacula conservera
2607 les enregistrements Job dans le catalogue. Lors de l'expiration de cette p\'eriode,
2608 si la directive {\bf AutoPrune} est active ({\bf yes}), Bacula \'elague le catalogue
2609 des enregistrements File dont l'âge est sup\'erieur \`a la p\'eriode de r\'etention.
2610 Notez que ceci n'affecte que les enregistrements du catalogue, et non vos
2611 sauvegardes archiv\'ees.
2613 Si un enregistrement de Job est s\'electionn\'e pour \'elagage, tous les enregistrements File
2614 et JobMedia associ\'es seront aussi \'elagu\'es du catalogue, sans qu'il ne soit tenu compte
2615 de la p\'eriode File Retention d\'efinie. Par cons\'equent, vous utiliserez, en principe,
2616 une p\'eriode File Retention inf\'erieure \`a la p\'eriode Job retention. La p\'eriode
2617 Job retention peut en fait s'av\'erer inf\'erieure \`a la valeur que vous avez sp\'ecifi\'ee
2618 si vous avez affect\'e une valeur inf\'erieure \`a la directive {\bf Volume Retention} dans
2619 la ressource Pool. Les p\'eriodes Job retention et Volume retention sont appliqu\'ees
2620 ind\'ependamment, la plus petite prend le pas sur l'autre.
2622 Les dur\'ees peuvent \^etre exprim\'ees
2623 en secondes, minutes, heures, jours, semaines, mois, trimestres ou ann\'ees. Consultez
2624 le chapitre \ilink{Adapter les fichiers de configuration}{Time} de ce manuel pour plus de d\'etails sur les
2625 sp\'ecifications de dur\'ees.
2627 La valeur par d\'efaut est 180 jours.
2630 \item [AutoPrune = \lt{}yes|no\gt{}]
2631 \index[dir]{AutoPrune}
2632 \index[dir]{Directive!AutoPrune}
2633 Si AutoPrune est r\'egl\'e \`a {\bf yes} (valeur par d\'efaut), Bacula (dans les versions au del\`a
2634 de 1.20) applique automatiquement les p\'eriodes File retention et Job retention pour le
2635 client \`a la fin du job. Si vous sp\'ecifiez {\bf AutoPrune = no}, l'\'elagage ne se fera pas
2636 et votre catalogue grossira \`a chaque job. L'\'elagage n'affecte que les donn\'ees du catalogue,
2637 et non les donn\'ees stock\'ees sur les volumes.
2639 \item [Maximum Concurrent Jobs = \lt{}number\gt{}]
2640 \index[dir]{Maximum Concurrent Jobs}
2641 \index[dir]{Directive!Maximum Concurrent Jobs}
2642 \lt{}number\gt{} d\'esigne le nombre maximum de jobs qui peuvent \^etre lanc\'es simultan\'ement
2643 sur le client concern\'e. Notez que cette directive ne limite que les jobs pour les clients
2644 qui ont le m\^eme nom que la ressource dans laquelle elle apparaît. Toutes les autres restrictions
2645 du nombre maximum de jobs simultan\'es telles que celles sp\'ecifi\'ees dans les ressources
2646 Director, Job, ou Storage s'appliquent aussi en plus de toute limite fix\'ee ici. La valeur
2647 par d\'efaut est 1, mais vous pouvez sp\'ecifier une valeur plus grande. Nous recommandons
2648 fortement de lire les MISES EN GARDE de la section \ilink{ Maximum Concurrent
2649 Jobs}{DirMaxConJobs} du chapitre Configurer le Director.
2652 \item [Priority = \lt{}number\gt{}]
2653 \index[dir]{Priority}
2654 \index[dir]{Directive!Priority}
2655 \lt{}number\gt{} sp\'ecifie la priorit\'e de ce client par rapport aux autres clients
2656 que le Director sauvegarde simultan\'ement. La priorit\'e admet une valeur entre 1 et 1000.
2657 Les clients sont ordonn\'es de sorte que ceux dont la valeur de priorit\'e sont les plus petites
2658 sont trait\'es les premiers (Ceci n'est pas encore impl\'ement\'e).
2661 Voici un exemple d'une d\'efinition de ressource Client valide :
2669 Password = very_good
2674 \subsection*{La ressource Storage}
2675 \label{StorageResource2}
2676 \index[general]{Resource!Storage }
2677 \index[general]{Storage Resource }
2678 \addcontentsline{toc}{subsection}{Storage Resource}
2680 La ressource Storage d\'efinit les Storage Daemons disponibles pour le Director.
2685 \index[dir]{Storage}
2686 \index[dir]{Directive!Storage}
2687 D\'ebut des ressources Storage. Il faut en sp\'ecifier au moins une.
2689 \item [Name = \lt{}name\gt{}]
2691 \index[dir]{Directive!Name}
2692 Le nom de la ressource Storage. Ce nom apparaît au niveau de la directive
2693 Storage sp\'ecifi\'ee dans la ressource Job et est requise.
2695 \item [Address = \lt{}address\gt{}]
2696 \index[dir]{Address}
2697 \index[dir]{Directive!Address}
2698 O\`u l'adresse est un nom d'h\^ote, une {\bf adresse pleinement qualifi\'ee}, ou une
2699 {\bf adresse IP}. Notez bien que l'adresse sp\'ecifi\'ee ici sera transmise au
2700 File Daemon qui l'utilisera alors pour contacter le Storage Daemon. Aussi, ce
2701 n'est {\bf pas} une bonne id\'ee d'utiliser {\bf localhost} en tant que nom,
2702 il vaut mieux utiliser un nom de machine pleinement qualifi\'e, ou une adresse IP.
2703 Cette directive est requise.
2705 \item [SD Port = \lt{}port\gt{}]
2706 \index[dir]{SD Port}
2707 \index[dir]{Directive!SD Port}
2708 O\`u "port" est le port \`a utiliser pour contacter le Storage Daemon pour les
2709 informations et pour ex\'ecuter les jobs. Ce m\^eme num\'ero de port doit
2710 apparaître dans la ressource Storage du fichier de configuration du
2711 Storage Daemon. Le port par d\'efaut est 9103.
2713 \item [Password = \lt{}password\gt{}]
2714 \index[dir]{Password}
2715 \index[dir]{Directive!Password}
2716 Il s'agit du mot de passe \`a utiliser lors de l'\'etablissement de la connection
2717 avec les services Storage. Ce m\^eme mot de passe doit aussi apparaître dans la
2718 ressource Director du fichier de configuration du Storage Daemon. Cette
2719 directive est requise. Si vous avez soit {\bf /dev/random}, soit {\bf bc}
2720 sur votre machine, Bacula g\'en\`erera un mot de passe al\'eatoire lors du processus
2721 de configuration. Dans le cas contraire, ce champ sera laiss\'e blanc.
2723 \item [Device = \lt{}device-name\gt{}]
2725 \index[dir]{Directive!Device}
2726 Cette directive sp\'ecifie le nom (pour le Storage Daemon) du p\'eriph\'erique \`a
2727 utiliser pour le stockage.
2728 Ce nom n'est pas le nom de p\'eriph\'erique physique, mais le nom de p\'eriph\'erique
2729 logique qui a \'et\'e d\'efini par la directive {\bf Name} de la ressource {\bf Device}
2730 du fichier de configuration du Storage Daemon. Si le p\'eriph\'erique est une librairie, vous
2731 devez utiliser le nom d\'efini au niveau de la directive {\bf Name} d\'efini dans la d\'efinition
2732 de la ressource {\bf Autochanger} du Storage Daemon. Vous pouvez utiliser le nom de
2733 votre choix (y compris le nom de p\'eriph\'erique physique) \`a concurrence de
2734 127 caract\`eres. Le nom de p\'eriph\'erique physique associ\'e \`a ce p\'eriph\'erique est
2735 sp\'ecifi\'e dans le fichier de configuration du Storage Daemon
2736 (en tant qu'{\bf Archive Device}). Prenez garde \`a ne pas d\'efinir deux directives
2737 Storage Resource dans le Director qui pointent vers le m\^eme p\'eriph\'erique du
2738 Storage Daemon. Il pourrait en r\'esulter un blocage du Storage Daemon si celui-ci
2739 tente d'utiliser le m\^eme p\'eriph\'erique deux fois. Cette directive est requise.
2741 \item [Media Type = \lt{}MediaType\gt{}]
2742 \index[dir]{Media Type}
2743 \index[dir]{Directive!Media Type}
2744 Cette directive sp\'ecifie le type de m\'edia \`a utiliser pour stocker les donn\'ees.
2745 Il s'agit d'une chaîne de caract\`eres arbitraire n'exc\'edant pas 127 caract\`eres.
2746 Ce peut \^etre ce que vous voulez, cependant, il est pr\'ef\'erable de la choisir de
2747 mani\`ere \`a d\'ecrire le m\'edium de stockage utilis\'e (par exemple : Fichier, DAT,
2748 ''HP DLT8000``, 8mm,...). D'autre part, il est esentiel d'avoir une sp\'ecification
2749 {\bf Media Type} unique pour chaque type de m\'edia de stockage. Si vous avez deux
2750 lecteurs DDS-4 avec des formats incompatibles et une librairie DDS-4, vous devriez
2751 certainement sp\'ecifier des {\bf Media Types} distincts. Lors d'une restauration,
2752 supposons qu'un Media Type {\bf DDS-4} est associ\'e avec le le job, Bacula peut
2753 d\'ecider d'utiliser tout Storage Daemon qui supporte le Media Type {\bf DDS-4} sur
2754 tout lecteur qui le supporte.
2756 Actuellement, Bacula n'autorise qu'un seul type de media. Par conséquent, si vous
2757 disposez d'un lecteur qui en supporte plusieurs, vous pouvez utiliser une chaîne
2758 unique pour désigner les volumes de l'un ou l'autre type, par exemple Media Type = DDS-3-4
2759 pour les types DDS-3 et DDS-4, mais ces volumes ne seront montés que sur les lecteurs
2760 spécifiés comme acceptant les deux types : DDS-3-4
2762 Si vous voulez contraindre Bacula \`a utiliser un
2763 seul Storage Daemon ou un seul lecteur, vous devez sp\'ecifier un Media Type unique
2764 pour ce lecteur. C'est un point important qui devrait \^etre bien compris. Notez que
2765 ceci s'applique \'egalement aux volumes disque. Si vous d\'efinissez plus d'une ressource
2766 Device disque dans votre fichier de configuration du Storage Daemon, les volumes sur ces
2767 deux devices seront en fait incompatibles car l'un ne pourra \^etre mont\'e sur l'autre
2768 puisqu'ils se trouvent dans des r\'epertoires diff\'erents. C'est pourquoi vous devriez
2769 probablement plut\^ot utiliser deux Media Types distincts pour vos deux devices disque
2770 (m\^eme si vous pensez \`a eux comme ayant l'un et l'autre le type File).
2772 Vous trouverez pus de d\'etails \`a ce sujet dans le chapitre
2773 \ilink{Gestion des volumes : fondements (NDT:basic volumes management)}
2774 {_ChapterStart39} de ce manuel.
2776 Le {\bf MediaType} sp\'ecifi\'e ici {\bf doit} correspondre au {\bf MediaType}
2777 sp\'ecifi\'e dans la ressource {\bf Device} du fichier de configuration du
2778 Storage Daemon. Cette directive est requise, et est utilis\'ee par le Director
2779 et le Storage Daemon pour s'assurer qu'un volume s\'electionn\'e automatiquement
2780 dans un Pool correspond \`a un p\'eriph\'erique physique. Si un Storage Daemon
2781 g\`ere plusieurs p\'eriph\'eriques (par exemple, s'il \'ecrit sur plusieurs volumes
2782 de type File sur diff\'erentes partitions), cette directive vous permet de
2783 pr\'eciser exactement quel p\'eriph\'erique utiliser.
2785 Comme mentionn\'e ci-dessus, la valeur sp\'ecifi\'ee dans la ressource Storage du
2786 Director doit s'accorder avec celle sp\'ecifi\'ee dans la ressource Device du
2787 fichier de configuration du Storage Daemon. Ceci repr\'esente aussi un contr\^ole
2788 suppl\'ementaire pour assurer que vous n'essayez pas d'\'ecrire les donn\'ees destin\'ees
2789 \`a un lecteur DLT sur un lecteur 8mm.
2791 \label{Autochanger1}
2793 \item [Autochanger = \lt{}yes|no\gt{} ]
2794 \index[dir]{Autochanger }
2795 \index[dir]{Directive!Autochanger}
2796 Si vous sp\'ecifiez {\bf yes} pour cette commande (la valeur par d\'efaut est {\bf no}),
2797 alors Bacula requ\'erira un num\'ero de Slot lorsque vous utiliserez les commandes
2798 {\bf label} et {\bf add} pour cr\'eer un nouveau volume. Ceci simplifie la cr\'eation
2799 des enregistrements de Volumes dans le catalogue si vous disposez d'une librairie.
2800 Si vous omettez de sp\'ecifier le Slot, la robotique ne sera pas utilis\'ee. Cependant,
2801 vous pouvez modifier le Slot associ\'e \`a un volume \`a tout moment grâce \`a la commande
2802 {\bf update volume} du programme Console. Lorqu'{\bf autochanger} est activ\'ee,
2803 l'algorithme utilis\'e par Bacula pour rechercher des volumes utilisables est
2804 modifi\'e de fa\
\ 3on \`a prendre en compte tout volume suppos\'e contenu dans la librairie.
2805 Si aucun volume {\bf in changer} n'est trouv\'e, Bacula tente de recycler, \'elaguer...,
2806 et s'il ne trouve toujours aucun volume, Bacula recherche un volume pr\'esent ou non
2807 dans la librairie. Privil\'egier les volumes pr\'esents dans la librairie permet de
2808 minimiser les interventions d'un op\'erateur.
2810 Pour que la robotique soit utilis\'ee, vous devez aussi sp\'ecifier {\bf Autochanger = yes}
2811 dans la ressource \ilink{La Ressource Device}{Autochanger} du fichier de configuration du
2812 Storage Daemon, ainsi que d'autres param\`etres importants du Storage Daemon. Vous
2813 trouverez plus d'information \`a ce sujet dans le chapitre
2814 \ilink{ Utiliser une librairie}{_ChapterStart18} de ce manuel.
2816 \item [Maximum Concurrent Jobs = \lt{}number\gt{}]
2817 \index[dir]{Maximum Concurrent Jobs}
2818 \index[dir]{Directive!Maximum Concurrent Jobs}
2819 O\`u \lt{}number\gt{} est le nombre maximum de jobs utilisant la
2820 ressource Storage courante qui peuvent \^etre ex\'ecut\'es simultan\'ement. Notez que cette
2821 directive ne limite que les jobs qui utilisent ce Storage Daemon. Toute autre
2822 limitation du nombre maximum de jobs simultan\'es au niveau des ressources
2823 Director, Job ou Client est aussi appliqu\'ee en plus de celle fix\'ee ici. La valeur
2824 par d\'efaut est 1, mais vous pouvez utiliser une valeur plus importante. Nous vous
2825 recommandons fortement de lire les MISES EN GARDE de la section \ilink{ Maximum Concurrent
2826 Jobs}{DirMaxConJobs} du chapitre Configurer le Director.
2828 Alors qu'il est possible de d\'efinir des nombres maximum de jobs simultan\'es sup\'erieurs
2829 \`a 1 dans les ressource Director, Job et Client, vous devriez porter une attention
2830 particuli\`ere au param\'etrage de cette directive pour le Storage Daemon. En conservant
2831 la valeur 1, vous \'evitez que deux jobs \'ecrivent simultan\'ement sur le m\^eme volume ce qui,
2832 quoique support\'e, n'est pas recommand\'e actuellement.
2835 Voici un exemple de ressource Storage valide :
2839 # Definition of tape storage device
2843 Password = storage_password # password for Storage daemon
2844 Device = "HP DLT 80" # same as Device in Storage daemon
2845 Media Type = DLT8000 # same as MediaType in Storage daemon
2850 \subsection*{La ressource Pool}
2851 \label{PoolResource}
2852 \index[general]{Resource!Pool }
2853 \index[general]{Pool Resource }
2854 \addcontentsline{toc}{subsection}{Pool Resource}
2855 La ressource Pool d\'efinit l'ensemble des volumes de stockage (cartouches ou fichiers)
2856 \`a la disposition de Bacula pour \'ecrire les donn\'ees. En configurant diff\'erents
2857 Pools, vous pouvez d\'eterminer quel ensemble de volumes (ou m\'edia) re\
\ 3oit les
2858 donn\'ees sauvegard\'ees. Ceci permet, par exemple, de stocker toutes les sauvegardes
2859 Full sur un ensemble de volumes, et les sauvegardes diff\'erentielles et
2860 incr\'ementales sur un autre. De m\^eme, vous pouvez assigner un ensemble de volumes
2861 \`a chaque machine sauvegard\'ee. Tout ceci peut \^etre r\'ealis\'e ais\'ement en d\'efinissant
2864 Un autre aspect important d'un pool est qu'il contient des attributs par d\'efaut
2865 (Nombre maximum de jobs, p\'eriode de r\'etention, drapeau de recyclage,...) qui sont
2866 conf\'er\'es \`a tout volume lui appartenant lors de sa cr\'eation. Ceci vous \'evite d'avoir
2867 \`a r\'epondre \`a un grand nombre de questions lorsque vous \'etiquettez (label) un nouveau
2868 volume. Chacun de ces attributs peut ensuite \^etre modifi\'e sur chaque volume
2869 individuellement avec la commande {\bf update} du programme Console. Notez que
2870 vous devez pr\'eciser explicitement quel pool est \`a utiliser avec chaque job. Bacula
2871 ne recherche pas automatiquement le pool correct.
2873 Dans la plupart des installations de Bacula, toutes les sauvegardes de toutes
2874 les machines vont vers un unique jeu de volumes. Dans ce cas, vous n'utiliserez
2875 probablement que le pool par d\'efaut {\bf Default}. Si votre strat\'egie de
2876 sauvegarde vous impose \`a monter chaque jour une cartouche diff\'erente, vous voudrez
2877 probablement d\'efinir des pools distincts pour chaque jour. Pour plus d'informations
2878 \`a ce sujet, consultez le chapitre \ilink{Strat\'egies de sauvegarde}{_ChapterStart3}
2881 Pour utiliser un pool, vous devez suivre trois \'etapes :
2883 D'abord, le pool doit
2884 \^etre d\'efini dans le fichier de configuration du Director. Ensuite le pool doit
2885 \^etre enregistr\'e dans le catalogue. Ceci est fait automatiquement par le Director
2886 \`a chaque fois qu'il d\'emarre, ou peut \^etre r\'ealis\'e manuellement \`a l'aide de la
2887 commande {\bf create} du programme Console. Enfin, si vous modifiez la d\'efinition
2888 du pool dans le fichier de configuration du Director et red\'emarrez Bacula,
2889 le pool sera mis \`a jour automatiquement, ce qui peut aussi \^etre r\'ealis\'e
2890 manuellement avec la commande {\bf update pool} du programme Console pour
2891 rafraichir l'image du catalogue. C'est cette image du catalogue plut\^ot
2892 que l'image de la ressource du Director qui est utilis\'ee pour les attributs
2893 de volume par d\'efaut. Notez que pour que le pool soit automatiquement
2894 cr\'e\'e ou mis \`a jour, il doit \^etre r\'ef\'erenc\'e explicitement par une ressource Job.
2896 Ensuite le m\'edium physique doit \^etre \'etiquett\'e. L'\'etiquettage peut \^etre r\'ealis\'e
2897 soit par la commande {\bf label} du programme Console, soit en utilisant le
2898 programme {\bf btape}. La m\'ethode \`a privil\'egier est la premi\`ere.
2900 Finallement, vous devez ajouter des noms de volumes (et leurs attributs) au
2901 pool. Pour que les volumes soient utilis\'es par Bacula, ils doivent \^etre
2902 du m\^eme {\bf Media Type} que l'Archive Device sp\'ecifi\'ee pour le job.
2903 (Autrement dit, si vous vous appr\'etez \`a sauvegarder vers un lecteur DLT,
2904 le pool doit contenir des volumes DLT, puisque des volumes 8mm ne peuvent
2905 \^etre mont\'es sur un lecteur DLT). Le {\bf Media Type} rev\^et une importance
2906 particuli\`ere si vous sauvegardez vers des fichiers. Lorsque vous ex\'ecutez
2907 un job, vous devez explicitement pr\'eciser le pool. Bacula s\'electionne d\`es lors
2908 automatiquement le prochain volume du pool \`a utiliser, en s'assurant que le
2909 {\bf Media Type} de tout volume s\'electionn\'e est bien celui requis par la
2910 ressource Storage sp\'ecifi\'ee pour le job.
2912 Si vous utilisez la commande {\bf label} du programme Console pour
2913 \'etiquetter les volumes, il sont automatiquement ajout\'es au pool, aussi cette
2914 derni\`ere \'etape n'est g\'en\'eralement pas requise.
2916 Il est aussi possible d'ajouter des volumes au catalogue sans avoir
2917 explicitement \'etiquett\'e les volumes physiques. Ceci s'effectue avec la commande
2918 {\bf add} du programme Console.
2920 Comme mentionn\'e plus haut, \`a chaque d\'emarrage, Bacula examine tous les pools
2921 associ\'es \`a chaque catalogue, et si un enregistrement n'existe pas encore, il
2922 est cr\'e\'e \`a partir de la d\'efinition du pool dans la ressource. Bacula devrait
2923 probablement effectuer un {\bf update pool} si vous modifiez la d\'efinition
2924 du pool mais, actuellement, vous devez le faire manuellement avec la
2925 commande {\bf update pool} du programme Console.
2927 La ressource Pool d\'efinie dans le fichier de configuration du Director peut
2928 contenir les directives suivantes :
2935 \index[dir]{Directive!Pool}
2936 D\'ebut de la ressource Pool. Il faut d\'efinir au moins une ressource Pool.
2938 \item [Name = \lt{}name\gt{}]
2940 \index[dir]{Directive!Name}
2941 Le nom du pool. Pour la plupart des applications, vous utiliserez le pool
2942 par d\'efaut nomm\'e {\bf Default}. Cette directive est requise.
2944 \item [Number of Volumes = \lt{}number\gt{}]
2945 \index[dir]{Number of Volumes }
2946 Cette directive sp\'ecifie le nombre de volumes (cartouches ou fichiers) contenus
2947 dans le pool. En principe, il est d\'efini et mis \`a jour automatiquement par la
2948 routine de maintenance du catalogue de Bacula.
2951 \item [Maximum Volumes = \lt{}number\gt{}]
2952 \index[dir]{Maximum Volumes}
2953 \index[dir]{Directive!Maximum Volumes}
2954 Cette directive sp\'ecifie le nombre maximum de volumes contenus dans le pool.
2955 Cette directive est optionnelle. Si elle est omise ou r\'egl\'ee \`a 0, tout nombre
2956 de volumes est permis. En g\'en\'eral, cette directive est utile pour les librairies,
2957 o\`u il y a un nombre fix\'e de volumes, ou pour le stockage sur fichier si vous voulez
2958 vous assurer que les sauvegardes sur disque ne deviennent pas trop nombreuses ou ne
2959 consomment pas trop d'espace.
2961 \item [Pool Type = \lt{}type\gt{}]
2962 \index[dir]{Pool Type }
2963 \index[dir]{Directive!Pool Type}
2964 Cette directive d\'efinit le type du pool, qui correspond au type du job
2965 ex\'ecut\'e. Cette directive est requise et peut prendre l'une des valeurs suivantes :
2976 \item [Use Volume Once = \lt{}yes|no\gt{}]
2977 \index[dir]{Use Volume Once}
2978 \index[dir]{Directive!Use Volume Once}
2979 Cette directive, si elle est active (valeur {\bf yes}) stipule que chaque volume
2980 ne doit \^etre utilis\'e qu'une seule fois. C'est particuli\`erement utile si le
2981 volume est un fichier et si vous voulez un nouveau fichier pour chaque nouvelle
2982 sauvegarde. La valeur par d\'efaut est {\bf no} (autrement dit, les volumes peuvent
2983 \^etre utilis\'es plusieurs fois). Cette directive sera tr\`es certainement bient\^ot
2984 obsol\`ete, aussi nous vous recommandons d'utiliser {\bf Maximum Volume Jobs = 1}
2987 La valeur d\'efinie par cette directive dans le fichier de
2988 configuration du Director est la valeur par d\'efaut utilis\'ee lorsqu'un nouveau
2989 volume est cr\'e\'e. Modifier la valeur dans le fichier de configuration ne changera
2990 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
2991 existant, vous devez utiliser la commande {\bf update} du programme Console.
2993 \item [Maximum Volume Jobs = \lt{}positive-integer\gt{}]
2994 \index[dir]{Maximum Volume Jobs}
2995 \index[dir]{Directive!Maximum Volume Jobs}
2996 Cette directive sp\'ecifie le nombre maximum de jobs qui peuvent \^etre \'ecrits sur le volume.
2997 La valeur par d\'efaut est z\'ero, ce qui signifie que le nombre de jobs sur un volume
2998 n'est pas limit\'e. Sinon, lorsque le nombre de jobs sauvegard\'es sur le volume atteint
2999 la valeur {\bf positive-integer} sp\'ecifi\'ee, le volume est marqu\'e {\bf Used}. D\`es lors,
3000 il ne peut plus \^etre utilis\'e pour y ajouter des jobs, tout comme dans le cas d'un volume
3001 avec le statut {\bf Full}, mais il peut \^etre recycl\'e si le recyclage est activ\'e. En
3002 sp\'ecifiant {\bf MaximumVolumeJobs = 1} vous obtenez le m\^eme effet que celui que vous
3003 obtiendriez avec {\bf UseVolumeOnce = yes}.
3005 Notez que la valeur d\'efinie par cette directive dans le fichier de configuration du
3006 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3007 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3008 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3009 existant, vous devez utiliser la commande {\bf update} du programme Console.
3011 \item [Maximum Volume Files = \lt{}positive-integer\gt{}]
3012 \index[dir]{Maximum Volume Files}
3013 \index[dir]{Directive!Maximum Volume Files}
3014 Cette directive sp\'ecifie le nombre maximum de fichiers qui peuvent \^etre \'ecrits sur
3015 le volume. La valeur par d\'efaut est z\'ero, ce qui signifie que le nombre de fichiers
3016 sur un volume n'est pas limit\'e. Sinon, lorsque le nombre de fichiers sauvegard\'es sur
3017 le volume atteint la valeur {\bf positive-integer} sp\'ecifi\'ee, le volume est marqu\'e
3018 {\bf Used}. D\`es lors, il ne peut plus \^etre utilis\'e pour y ajouter des jobs, tout comme
3019 dans le cas d'un volume avec le statut {\bf Full}, mais il peut \^etre recycl\'e si le
3020 recyclage est activ\'e. Ce n'est qu'\`a la fin d'un job que Cette valeur est control\'ee,
3021 et que le statut du volume est \'eventuellement chang\'e en {\bf Used}.
3023 La valeur d\'efinie par cette directive dans le fichier de configuration du
3024 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3025 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3026 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3027 existant, vous devez utiliser la commande {\bf update} du programme Console.
3029 \item [Maximum Volume Bytes = \lt{}size\gt{}]
3030 \index[dir]{Maximum Volume Bytes}
3031 \index[dir]{Directive!Maximum Volume Bytes}
3032 Cette directive sp\'ecifie le nombre maximum d'octets qui peuvent \^etre \'ecrits sur le
3033 volume. La valeur par d\'efaut est z\'ero, ce qui signifie qu'il n'y a d'autre limite
3034 que la capacit\'e physique du volume. Sinon, lorsque le nombre d'octets sauvegard\'es sur
3035 le volume atteint la valeur {\bf size} sp\'ecifi\'ee, le volume est marqu\'e
3036 {\bf Used}. D\`es lors, il ne peut plus \^etre utilis\'e pour y ajouter des jobs, tout comme
3037 dans le cas d'un volume avec le statut {\bf Full}, mais il peut \^etre recycl\'e si le
3038 recyclage est activ\'e. Ce n'est qu'\`a la fin d'un job que Cette valeur est control\'ee,
3039 et que le statut du volume est \'eventuellement chang\'e en {\bf Used}.
3041 La valeur d\'efinie par cette directive dans le fichier de configuration du
3042 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3043 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3044 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3045 existant, vous devez utiliser la commande {\bf update} du programme Console.
3047 \item [Volume Use Duration = \lt{}time-period-specification\gt{}]
3048 \index[dir]{Volume Use Duration}
3049 \index[dir]{Directive!Volume Use Duration}
3050 Cette directive d\'efinit la p\'eriode durant laquelle le volume peut \^etre utilis\'e en
3051 \'ecriture, \`a compter de la premi\`ere op\'eration d'\'ecriture de donn\'ees.
3052 La valeur par d\'efaut est z\'ero, ce qui signifie que le volume peut \^etre \'ecrit
3053 ind\'efiniment . Sinon, lorsque la dur\'ee depuis la premi\`ere \'ecriture exc\`ede la p\'eriode
3054 {\bf time-period-specification} sp\'ecifi\'ee, le volume est marqu\'e
3055 {\bf Used}. D\`es lors, il ne peut plus \^etre utilis\'e pour y ajouter des jobs, tout comme
3056 dans le cas d'un volume avec le statut {\bf Full}, mais il peut \^etre recycl\'e si le
3057 recyclage est activ\'e. L'usage de la commande {\bf status dir} applique des algorithmes
3058 similaires à l'éxecution de jobs, aussi lors d'une telle commande, le statut du volume
3059 peut être modifié. Lorsque le volume est recyclé, il peut à nouveau être utilisé.
3061 Vous pourriez utiliser cette directive, par exemple, si vous avez un volume d\'edi\'e
3062 aux sauvegardes incr\'ementales, et un volume d\'edi\'e aux Fulls hebdomadaires. Une fois que
3063 la Full est pass\'ee, vous pouvez pr\'ef\'erer utiliser un autre volume pour les incr\'ementales.
3064 Ceci peut \^etre accompli en r\`eglant la p\'eriode {\bf Volume Use Duration} \`a six jours pour
3065 les volumes des incr\'ementales. Autrement dit, celui-ci sera utilis\'e durant les six jours
3066 qui suivent une full, puis un autre volume d'incr\'ementales sera utilis\'e. Veillez \`a utiliser
3067 des p\'eriodes relativement courtes telles que 23 heures, ou vous pourriez placer Bacula en situation
3068 de devoir attendre tout un week-end le montage d'une cartouche par l'op\'erateur pour pouvoir terminer
3071 Ce n'est qu'\`a la fin d'un job que Cette valeur est control\'ee,
3072 et que le statut du volume est \'eventuellement chang\'e en {\bf Used}, ce qui signifie que
3073 bien que la p\'eriode {\bf Volume Use Duration} puisse avoir expir\'e, l'entr\'ee correspondante
3074 du catalogue ne sera pas mise \`a jour jusqu'\`a ce que le prochain job utilisant ce
3075 volume soit ex\'ecut\'e.
3077 La valeur d\'efinie par cette directive dans le fichier de configuration du
3078 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3079 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3080 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3081 existant, vous devez utiliser la commande \ilink{\bf update volume}{UpdateCommand} du
3084 \item [Catalog Files = \lt{}yes|no\gt{}]
3085 \index[dir]{Catalog Files}
3086 \index[dir]{Directive!Catalog Files}
3087 Cette directive pr\'ecise si les noms des fichiers sauvegard\'es doivent ou non \^etre
3088 enregistr\'es dans le catalogue. La valeur par d\'efaut est {\bf yes}. L'avantage de
3089 d\'esactiver cette option ({\bf Catalog Files = No}) est d'avoir un catalogue
3090 significativement plus petit. L'inconv\'enient est de ne pas pouvoir produire de
3091 liste des fichiers sauvegard\'es pour chaque job \`a partir du catalogue (autrement
3092 dit, vous ne pourrez naviguer dans les fichiers sauvegard\'es). Ainsi, sans les
3093 enregistrements de fichiers, vous ne pourrez utiliser la commande {\bf restore},
3094 ni aucune des autres commandes du programme Console qui se r\'ef\`erent aux
3095 enregistrements de fichiers.
3097 \label{PoolAutoPrune}
3099 \item [AutoPrune = \lt{}yes|no\gt{}]
3100 \index[dir]{AutoPrune}
3101 \index[dir]{Directive!AutoPrune}
3102 Si AutoPrune est activ\'ee ({\bf yes}), ce qui est le cas par d\'efaut, Bacula
3103 (depuis la version 1.20) applique automatiquement la p\'eriode de r\'etention des
3104 volumes lorsqu'un nouveau volumes est requis ou lorsqu'il n'existe aucun volume
3105 utilisable dans le pool. L'\'elagage des volumes consiste \`a supprimer du catalogue
3106 les jobs expir\'es (ceux qui sont plus anciens que la p\'eriode de r\'etention), et rend
3107 possible le recyclage de ces volumes
3109 \label{VolRetention}
3111 \item [Volume Retention = \lt{}time-period-specification\gt{}]
3112 \index[dir]{Volume Retention}
3113 \index[dir]{Directive!Volume Retention}
3114 La directive Volume Retention d\'efinit la p\'eriode durant laquelle {\bf Bacula}
3115 conserve les enregistrements Job associ\'es au volume dans le catalogue.
3116 Lors de l'expiration de cette p\'eriode, si {\bf AutoPrune} est activ\'ee, Bacula
3117 peut supprimer les enregistrements Job plus anciens que la p\'eriode {\bf time-period-specification}
3118 sp\'ecifi\'ee s'il est n\'ecessaire de lib\'erer un volume. Tous les enregistrements de fichiers
3119 associ\'es \`a des jobs supprim\'es sont aussi supprim\'es. Les dur\'ees peuvent \^etre exprim\'ees
3120 en secondes, minutes, heures, jours, semaines, mois, trimestres ou ann\'ees.
3121 La p\'eriode {\bf Volume Retention} s'applique ind\'ependamment des p\'eriodes {\bf Job Retention}
3122 et {\bf File Retention} d\'efinies dans la ressource Client. Ceci signifie que la
3123 p\'eriode la plus courte est celle qui s'applique.Notez bien que lorsque la p\'eriode
3124 {\bf Volume Retention} a \'et\'e atteinte les enregistrements de Job et ceux de fichiers
3125 sont supprimm\'es les uns et les autres.
3126 Cet élagage peut aussi se produire à l'exécution de la commande {\bf status dir} car elle
3127 applique des algorithmes similaires à ceux utilisés pour déterminer le prochain volume
3130 Il est important de savoir que lorsque la p\'eriode Volume Retention expire,
3131 Bacula ne recycle pas syst\'ematiquement le volume concern\'e. Il tente de conserver
3132 les donn\'ees intactes aussi longtemps que possible avant d'\'ecrire sur ce volume.
3134 La valeur par d\'efaut est 365 jours. Notez que cette directive r\`egle la valeur par
3135 d\'efaut pour chaque enregistrement de volume du catalogue lorsque le volume
3136 est cr\'e\'e. Cette valeur du catalogue peut ensuite \^etre modifi\'ee avec la commande
3137 {\bf update } du programme Console.
3139 En d\'efinissant plusieurs pools avec diff\'erentes p\'eriodes de r\'etention (volume
3140 retention), vous pouvez efficacement g\'erer vos cartouches avec, par exemple
3141 un pool de cartouches recycl\'e chaque semaine, un autre recycl\'e chaque mois, et
3142 ainsi de suite. Cependant, il faut bien garder \`a l'esprit que si votre p\'eriode
3143 de r\'etention {\bf Volume Retention} est trop courte, il peut arriver que votre
3144 derni\`ere sauvegarde Full valide soit supprim\'ee, de sorte que vous n'ayez plus
3145 une sauvegarde compl\`ete de votre syst\`eme, et que votre prochaine incr\'ementale
3146 soit \'elev\'ee en une Full. Par cons\'equent, la valeur minimum de la p\'eriode
3147 {\bf Volume Retention} devrait \^etre au moins le double de l'intervalle
3148 s\'eparant vos Fulls. Autrement dit, pour des Fulls mensuelles, la p\'eriode
3149 {\bf Volume Retention} devrait \^etre sup\'erieure ou \'egale \`a deux mois.
3151 Notez que la valeur d\'efinie par cette directive dans le fichier de configuration du
3152 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3153 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3154 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3155 existant, vous devez utiliser la commande {\bf update} du programme Console.
3159 \item [Recycle = \lt{}yes|no\gt{}]
3160 \index[dir]{Recycle}
3161 \index[dir]{Directive!Recycle}
3162 Cette directive sp\'ecifie la valeur par d\'efaut pour le recyclage des volumes purg\'es.
3163 Si elle est activ\'ee ({\bf yes}) et si Bacula a besoin d'un volume mais n'en trouve
3164 aucun utilisable, il recherche alors les volumes purg\'es (c'est \`a dire ceux dont tous
3165 les jobs et fichiers ont expir\'e et ont, de fait, \'et\'e supprim\'es du catalogue). Si un
3166 volume est recycl\'e, toutes les donn\'ees pr\'ecedemment \'ecrites sur ce volumes seront
3167 \'ecras\'ees. Si le recyclage est d\'esactiv\'e ({\bf no}), le volume ne sera pas recycl\'e, et ainsi
3168 les donn\'ees resteront valides. Si vous souhaitez r\'eutiliser un volume dont le drapeau de
3169 recyclage est no (0 dans le catalogue), vous devez manuellement le changer en yes (commande
3172 Notez que la valeur d\'efinie par cette directive dans le fichier de configuration du
3173 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3174 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3175 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3176 existant, vous devez utiliser la commande {\bf update} du programme Console.
3178 \label{RecycleOldest}
3180 \item [Recycle Oldest Volume = \lt{}yes|no\gt{}]
3181 \index[dir]{Recycle Oldest Volume}
3182 \index[dir]{Directive!Recycle Oldest Volume}
3183 Cette directive indique au Director de rechercher le volume le plus ancien
3184 du pool lorsq'un nouveau est requis par le Storage Daemon et qu'aucun autre
3185 n'est disponible. Le catalog est alors {\bf \'elagu\'e} dans le respect des
3186 p\'eriodes {\bf Job}, {\bf File} et {\bf Volume Retention}, c'est pourquoi cette
3187 directive est, de {\bf tr\`es} loin, pr\'ef\'erable \`a directive Purge Oldest Volume.
3189 Cette directive peut \^etre utile si vous avez un nombre fixe de volumes dans
3190 un pool et que vous voulez cycler sur ces volumes apr\`es avoir sp\'ecifi\'e
3191 les p\'eriodes de r\'etention qui conviennent.
3193 \label{RecycleCurrent}
3195 \item [Recycle Current Volume = \lt{}yes|no\gt{}]
3196 \index[dir]{Recycle Current Volume}
3197 \index[dir]{Directive!Recycle Current Volume}
3198 Si Bacula a besoin d'un nouveau volume, cette directive lui indique d'\'elaguer
3199 le volume dans le respect des p\'eriodes {\bf Job}, {\bf File} et
3200 {\bf Volume Retention}. Si tous les jobs sont \'elagu\'es, (c'est \`a dire si le
3201 volume est purg\'e), alors le volume est recycl\'e et sera utilis\'e pour la
3202 prochaine op\'eration d'\'ecriture. Cette directive respecte toutes les
3203 p\'eriodes {\bf Job}, {\bf File} et {\bf Volume Retention}, c'est pourquoi
3204 elle est , de {\bf tr\`es} loin, pr\'ef\'erable \`a la directive Purge Oldest Volume.
3206 Cette directive peut \^etre utile si vous avez un nombre fixe de volumes dans
3207 un pool et que vous voulez cycler sur ces volumes apr\`es avoir sp\'ecifi\'e
3208 les p\'eriodes de r\'etention qui \'elaguent les volumes avant que vous n'ayez
3209 termin\'e le cycle sur les volumes.
3213 \item [Purge Oldest Volume = \lt{}yes|no\gt{}]
3214 \index[dir]{Purge Oldest Volume}
3215 \index[dir]{Directive!Purge Oldest Volume}
3216 Cette directive indique au Director de rechercher le volume utilis\'e le plus
3217 ancien dans le pool lorsqu'un nouveau volume est requis par le Storage
3218 Daemon et qu'aucun n'est disponible. Le catalogue est alors purg\'e sans
3219 \'egards pour les p\'eriodes de r\'etention des fichiers et jobs \'ecrits sur ce
3220 volume. Le volume est alors recycl\'e pour \^etre utilis\'e pour la prochaine
3221 op\'eration d'\'ecriture. Cette directive outrepasse toute p\'eriode de r\'etention
3222 (Job, File, ou Volume) que vous avez pu sp\'ecifier par ailleurs.
3224 Cette directive peut \^etre utile si vous avez un nombre fixe de volumes dans
3225 un pool et que vous voulez cycler sur ces volumes lorsque tous les volumes
3226 sont pleins, sans avoir \`a vous soucier de param\'etrer les p\'eriodes de
3227 r\'etentions qui conviendraient. Cependant, en l'utilisant, vous courrez le
3228 risque de perdre toutes vos donn\'ees.
3230 {\bf Soyez conscient que {\bf Purge Oldest Volume} ne fait aucun cas d'aucune
3231 p\'eriode de r\'etention.} Si vous activez cette directive alors que vous ne poss\'edez
3232 qu'un seul volume, ce volume sera syst\'ematiquement \'ecras\'e tout de suite apr\`es
3233 avoir \'et\'e rempli ! Aussi, assurez vous au moins d'avoir un nombre d\'ecent de
3234 volumes dans votre pool avant d'ex\'ecuter un job. Si vous voulez que les p\'eriodes
3235 de r\'etention soient prises en compte, n'utilisez pas cette directive. Pour
3236 sp\'ecifier une p\'eriode de r\'etention, utilisez la directive {\bf Volume Retention}
3239 Je recommande fortement de ne pas utiliser cette directive, car il est certain que
3240 t\^ot ou tard, Bacula recyclera un volume contenant des donn\'ees valides et r\'ecentes.
3241 La valeur par d\'efaut est {\bf no}
3243 \item [Cleaning Prefix = \lt{}string\gt{}]
3244 \index[dir]{Cleaning Prefix}
3245 \index[dir]{Directive!Cleaning Prefix}
3246 Cette directive d\'efinit un pr\'efixe qui, s'il correspond au d\'ebut du nom d'un
3247 volume lors de son \'etiquettage, indique \`a Bacula que le volume en question est
3248 une cartouche de nettoyage, qui aura le statut {\bf VolStatus = Cleaning}.
3249 Ainsi Bacula ne tentera jamais d'utiliser cette cartouche. Cette option est
3250 particuli\`erement utile avec les librairies \'equip\'ees de lecteurs de codes barres o\`u,
3251 conventionnellement, les codes barres commen\
\ 3ant par {\bf CLN} sont trait\'es en
3252 tant que cartouches de nettoyage.
3256 \item [Label Format = \lt{}format\gt{}]
3257 \index[dir]{Label Format}
3258 \index[dir]{Directive!Label Format}
3259 Cette directive pr\'ecise le format des \'etiquettes des volumes de ce pool.
3260 La directive {\bf Format} est utilis\'ee comme un patron pour cr\'eer de nouveaux
3261 noms de volumes lors de l'\'etiquettage automatique.
3263 Le {\bf format} devrait \^etre sp\'ecifi\'e entre guillemets, et consiste en une
3264 chaîne de lettres, chiffres et caract\`eres sp\'eciaux tiret ({\bf -}), soulign\'e
3265 ({\bf \_}), double point ({\bf :}) et point ({\bf .}), qui sont consid\'er\'es valides
3266 pour un nom de volume.
3268 De plus, le {\bf format} peut comporter des caract\`eres variables qui seront
3269 substitu\'ees par un algorithme complexe, ce qui permet de cr\'eer des noms de volumes
3270 avec plusieurs formats diff\'erents. En tous les cas, le processus d'expansion des
3271 variables doit aboutir au jeu de caract\`eres d\'efinis comme l\'egaux dans le
3272 dernier paragraphe. G\'en\'eralement, ces caract\`eres variables commencent par
3273 un signe dollar ({\bf \$}) ou un crochet droit ({\bf [}). Si vous sp\'ecifiez
3274 des caract\`eres variables vous devriez toujours les encadrer de guillemets.
3275 Pour plus de d\'etails sur ce sujet, veuillez consulter le chapitre
3276 \ilink{Variable Expansion}{_ChapterStart50} de ce manuel.
3278 Si aucun caract\`ere variable n'est d\'ecouvert dans la chaîne, le nom de volume
3279 sera constitu\'e de la chaîne {\bf format} suffix\'ee du nombre de volumes dans le
3280 pool plus un, au format 4 chiffres et avec des z\'eros en t\^ete. Par exemple,
3281 avec {\bf Label Format = ''File-``}, les volumes seront nomm\'es
3282 {\bf File-0001}, {\bf File-0002}, ...
3284 Exception faite des variables sp\'ecifiques aux jobs, vous pouvez tester votre
3285 {\bf LabelFormat} en utilisant la section \ilink{ var command}{var} du
3286 chapitre Console de ce manuel.
3288 Dans la plupart des cas, vous devriez encadrer la sp\'ecification de format (la
3289 partie \`a droite du signe \'egale) entre guillemets. Notez que cette directive est
3290 obsol\`ete et qu'elle est remplac\'ee, \`a partir de la version 1.37 par un script Python
3291 pour la cr\'eation des noms de volumes.
3295 Pour qu'un pool puisse \^etre utilis\'e lors d'une sauvegarde, il faut qu'il lui soit
3296 associ\'e au moins un volume. Les volumes sont cr\'e\'es et affect\'es aux pools avec les
3297 commandes {\bf label} ou {\bf add} du programme {\bf Bacula Console}. Outre
3298 l'affectation du volume au pool (c'est \`a dire son r\'ef\'erencement
3299 dans le catalogue), le volume physique doit recevoir une \'etiquette logicielle
3300 valide pour que Bacula l'accepte. Ceci peut \^etre r\'ealis\'e automatiquement grâce
3301 \`a la commande {\bf label}. D'autre part, Bacula peut effectuer cette op\'eration
3302 automatiquement si l'instruction lui en est donn\'e, mais cette fonctionnalit\'e
3303 n'est pas encore pleinement impl\'ement\'ee.
3305 Voici un exemple d'une d\'efinition de ressource Pool valide :
3317 \subsubsection*{The Scratch Pool}
3318 \addcontentsline{toc}{subsection}{Scratch Pool}
3319 \index[general]{Scratch Pool}
3320 En g\'en\'eral, vous pouvez nommer vos pool \`a votre guise, il existe cependant
3321 une importante restriction : le pool nomm\'e {\bf Scratch}, s'il existe,
3322 se comporte comme une r\'eserve de volumes o\`u Bacula pourra puiser s'il ne trouve
3323 aucun volume utilisable dans le pool normalement utilis\'e par le job. Le volume
3324 est alors d\'eplac\'e du pool Scratch vers le pool en d\'efaut.
3326 \subsection*{La ressource Catalog}
3327 \label{CatalogResource}
3328 \index[general]{Resource!Catalog }
3329 \index[general]{Ressource Catalog}
3330 \addcontentsline{toc}{subsection}{La ressource Catalog}
3332 La ressource Catalog pr\'ecise quel catalogue utiliser pour le job courant.
3333 Actuellement, Bacula ne peut utiliser qu'un type de serveur de bases de
3334 donn\'ees d\'efini lors de sa configuration : SQLite, MySQL, PostgreSQL.
3335 En revanche, vous pouvez utiliser autant de
3336 catalogues que vous le souhaitez. Par exemple, vous pouvez avoir un
3337 catalogue par client, ou encore un catalogue pour les sauvegardes, un autre
3338 pour les jobs de type Verify et un troisi\`eme pour les restaurations.
3343 \index[dir]{Catalog}
3344 \index[dir]{Directive!Catalog}
3345 D\'ebut de la ressource Catalog. Il faut au moins une ressource Catalogue.
3347 \item [Name = \lt{}name\gt{}]
3349 \index[dir]{Directive!Name}
3350 Le nom du Catalog. Il n'a pas besoin d'\^etre en relation avec le nom sur le serveur
3351 de base de donn\'ees. Ce nom sera repris dans la ressource Client, indiquant ainsi
3352 que toutes les donn\'ees relatives \`a ce client sont maintenues dans ce catalogue.
3353 Cette directive est requise.*
3356 \item [password = \lt{}password\gt{}]
3357 \index[dir]{password}
3358 \index[dir]{Directive!password}
3359 Cette directive sp\'ecifie le mot de passe \`a utiliser pour se connecter au
3360 catalogue. Cette directive est requise.
3362 \item [DB Name = \lt{}name\gt{}]
3363 \index[dir]{DB Name}
3364 \index[dir]{Directive!DB Name}
3365 Cette directive sp\'ecifie le nom de la base de donn\'ees. Si vous utilisez plusieurs
3366 catalogues, vous sp\'ecifiez lequel ici. Si vous utilisez un serveur de bases de
3367 donn\'ees externe plut\^ot que l'int\'egr\'e, vous devez sp\'ecifier un nom connu du
3368 serveur (autrement dit, le nom que vous avez utilis\'e lorsque vous avez cr\'e\'e les
3369 tables Bacula.). Cette directive est requise.
3371 \item [user = \lt{}user\gt{}]
3373 \index[dir]{Directive!user}
3374 L'utilisateur habilit\'e \`a se connecter au catalogue. Cette directive est requise.
3376 \item [DB Socket = \lt{}socket-name\gt{}]
3377 \index[dir]{DB Socket}
3378 \index[dir]{Directive!DB Socket}
3379 Il s'agit du nom d'un {\it socket} \`a utiliser sur la machine locale pour se
3380 connecter au catalogue. Cette directive n'est utilis\'ee que par MySQL, elle est
3381 ignor\'ee par SQLite. Normalement, si ni {\bf DB Socket}, ni {\bf DB Address} ne sont
3382 sp\'ecifi\'ees, MySQL utilise le socket par d\'efaut.
3384 \item [DB Address = \lt{}address\gt{}]
3385 \index[dir]{DB Address}
3386 \index[dir]{Directive!DB Address}
3387 Il s'agit de l'adresse du serveur de bases de donn\'ees. En principe, vous
3388 utiliserez cette directive plut\^ot que {\bf DB Socket} si le serveur de bases de
3389 donn\'ees est une autre machine. Dans ce cas, vous sp\'ecifierez aussi le port {\bf DB Port}.
3390 Cette directive n'est utilis\'ee que par MySQL, et ignor\'ee par SQLite. Elle est
3393 \item [DB Port = \lt{}port\gt{}]
3394 \index[dir]{DB Port}
3395 \index[dir]{Directive!DB Port}
3396 Cette directive d\'efinit le port \`a utiliser en conjonction avec {\bf DB Address} pour
3397 acc\'eder au catalogue s'il est h\'eberg\'e sur une autre machine. Elle n'est utilis\'ee que par
3398 MySQL, et ignor\'ee par SQLite. Elle est optionnelle.
3400 %% \item [Multiple Connections = \lt{}yes|no\gt{}]
3401 %% \index[dir]{Multiple Connections}
3402 %% \index[dir]{Directive!Multiple Connections}
3403 %% Par d\'efaut, cette directive est d\'esactiv\'ee, ce qui implique que tous les jobs utilisant
3404 %% le m\^eme catalogue se partagent une m\^eme connection au catalogue, et que Bacula n'autorise
3405 %% qu'un job \`a la fois \`a communiquer. Si vous activez cette directive ({\bf yes}), Bacula
3406 %% permettra les connection multiples au catalogue, c'est pourquoi la base de donn\'ees
3407 %% doit supporter le {\it multi thread}. Pour SQLite et PostgreSQL, ce n'est pas un probl\`eme.
3408 %% Pour MySQL, vous devez vous assurer {\bf attentivement} d'avoir la version {\it multi thread}
3409 %% de la librairie cliente sur votre syst\`eme. Une fois cette directive activ\'ee, chaque job
3410 %% disposera de sa propre connection au catalogue, la base de donn\'ees contr\^olant les interactions
3411 %% entre les diff\'erents jobs. Ceci peut accroître significativement les op\'erations de la
3412 %% base de donn\'ees si vous ex\'ecutez plusieurs jobs simultan\'es. De plus, pour SQLite et PostgreSQL,
3413 %% Bacula activera automatiquement les transactions dans la base de donn\'ees. Ceci peut accroître
3414 %% significativement les insertions d'attributs dans le catalogue, que ce soit pour un job unique
3415 %% ou pour plusieurs jobs simultan\'es.
3417 %% Cette directive n'a pas \'et\'e test\'ee. Veuillez, s'il vous plaît, la tester scrupuleusement avant
3418 %% de l'activer en production, et nous fournir un retour de vos tests.
3422 Voici un exemple d'une d\'efinition de ressource Catalog valide :
3431 password = "" # no password = no security
3436 en voici une deuxi\`eme pour un catalogue sur une autre machine :
3446 DB Address = remote.acme.com
3452 \subection*{La ressource Messages}
3453 \label{MessagesResource2}
3454 \index[general]{Resource!Messages }
3455 \index[general]{Messages Ressource }
3456 \addcontentsline{toc}{subsection}{Messages Resource}
3458 Pour les d\'etails sur la ressource Messages, veuillez consulter
3459 le chapitre \ilink{La ressource Messages}{_ChapterStart15} de ce manuel.
3461 \subsection*{La ressource Console}
3462 \label{ConsoleResource1}
3463 \index[general]{Console Resource }
3464 \index[general]{Resource!Console }
3465 \addcontentsline{toc}{subsection}{Console Resource}
3467 A partir de la version 1.33 de Bacula, l'administrateur dispose de trois sortes de
3468 consoles diff\'erentes pour interagir avec le Director. Ces trois types de consoles
3469 comportent trois niveaux de s\'ecurit\'e diff\'erents.
3472 \item Le premier type de console est une console {\bf anonyme} ou {\bf par d\'efaut},
3473 qui d\'etient tous les privil\`eges. La ressource Console n'est pas requise pour
3474 ce type puisque le mot de passe est sp\'ecifi\'e dans la ressource Director et par
3475 cons\'equent, de telles consoles n'ont pas de nom d\'efini par une directive {\bf Name =}.
3476 C'est le premier type de console impl\'ement\'e dans les versions ant\'erieures \`a 1.33, il
3477 demeure valide. Sont usage est typiquement r\'eserv\'e aux administrateurs.
3478 \item Le second type de console, apparu avec la version 1.33 est une console "nomm\'ee"
3479 d\'efinie dans une ressource Console simultan\'ement dans le fichier de configuration du
3480 Director et dans le fichier de configuration de la Console, les noms et mots de passe
3481 devant \^etre en conjonction dans ces deux fichiers.
3482 Ce type de console ne d\'etient absolument aucun privil\`ege, except\'es ceux explicitement
3483 sp\'ecifi\'es dans la ressource Console du fichier de configuration du Director.
3484 Ainsi, vous pouvez d\'efinir plusieurs consoles avec des noms et mots de passe distincts
3485 destin\'ees \`a diff\'erents utilisateurs avec diff\'erents privil\`eges. Par d\'efaut ces consoles
3486 ne peuvent absolument rien faire. Il vous revient de leur accorder des privil\`eges
3487 ou plut\^ot des acc\`es aux commandes et ressources en sp\'ecifiant des listes de
3488 contr\^ole d'acc\`es (ACL) dans la ressource Console du fichier de configuration du
3489 Director. Les ACLs sont sp\'ecifi\'ees par une directive suivie d'une liste de noms
3490 d'acc\`es. Vous trouverez des exemples ci-dessous.
3491 \item Le troisi\`eme type de console est similaire au second en ce qu'il requiert
3492 une d\'efinition de ressource Console dans le fichier de configuration du
3493 Director et dans le fichier de configuration de la Console. De plus, si le nom de
3494 la console sp\'ecifi\'e par la directive {\bf Name =} est le m\^eme que le nom du client,
3495 cette console est autoris\'ee \`a utiliser la commande {\bf SetIP} pour modifier la
3496 directive Address dans la ressource client du fichier de configuration du
3497 Director en l'adresse IP de la console. Ceci permet aux portables et autres machines
3498 utilisant DHCP (adresses IP dynamiques) de "notifier" le Director de leur adresse
3502 La ressource Console est optionnelle. Les directives suivantes sont permises
3503 dans le fichier de configuration du Director.
3507 \item [Name = \lt{}name\gt{}]
3509 \index[dir]{Directive!Name}
3510 Le nom de la console. Ce nom doit \^etre en conjonction avec celui sp\'ecifi\'e
3511 dans le fichier de configuration de la Console (comme c'est le cas pour les
3512 d\'efinitions de clients).
3514 \item [Password = \lt{}password\gt{}]
3515 \index[dir]{Password}
3516 \index[dir]{Directive!Password}
3517 Sp\'ecifie le mot de passe qu'une console nomm\'ee doit fournir pour \^etre autoris\'ee.
3518 Le m\^eme mot de passe doit apparaître dans la ressource Console du fichier
3519 de configuration de la Console. Pour plus de s\'ecurit\'e, le mot de passe n'est
3520 jamais r\'eellement transmis \`a travers le r\'eseau, mais plut\^ot un code de
3521 hachage de type {\it challenge response} cr\'e\'e \`a partir du mot de passe.
3522 Cette directive est requise. Si vous disposez de {\bf /dev/random} ou {\bf bc}
3523 sur votre machine, Bacula g\'en\`erera al\'eatoirement ce mot de passe lors du
3524 processus de configuration, autrement, il sera laiss\'e blanc.
3526 \item [JobACL = \lt{}name-list\gt{}]
3528 \index[dir]{Directive!JobACL}
3529 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Job
3530 qui peuvent \^etre acc\'ed\'es par la console. Sans cette directive, la console ne peut
3531 acc\'eder \`a aucune des ressources Job d\'efinies dans le fichier de configuration
3532 du Director. Plusieurs ressources Job peuvent \^etre sp\'ecifi\'ees en les s\'eparant par
3533 des virgules, et/ou en sp\'ecifiant plusieurs directives JobACL. Par exemple, la
3534 directive peut \^etre sp\'ecifi\'ee ainsi :
3538 JobACL = kernsave, "Backup client 1", "Backup client 2"
3539 JobACL = "RestoreFiles"
3544 Avec cette sp\'ecificaton, la console peut acc\'eder aux ressources du Director pour
3545 les quatre jobs d\'esign\'es par la directive JobACL, et uniquement \`a eux.
3547 \item [ClientACL = \lt{}name-list\gt{}]
3548 \index[dir]{ClientACL}
3549 \index[dir]{Directive!ClientACL}
3550 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Client
3551 iaccessibles par la console.
3553 \item [StorageACL = \lt{}name-list\gt{}]
3554 \index[dir]{StorageACL}
3555 \index[dir]{Directive!StorageACL}
3556 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Storage
3557 accessibles par la console.
3559 \item [ScheduleACL = \lt{}name-list\gt{}]
3560 \index[dir]{ScheduleACL}
3561 \index[dir]{Directive!ScheduleACL}
3562 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Schedule
3563 accessibles par la console.
3565 \item [PoolACL = \lt{}name-list\gt{}]
3566 \index[dir]{PoolACL}
3567 \index[dir]{Directive!PoolACL}
3568 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Pool
3569 accesibles ar la console.
3571 \item [FileSetACL = \lt{}name-list\gt{}]
3572 \index[dir]{FileSetACL}
3573 \index[dir]{Directive!FileSetACL}
3574 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources FileSet
3575 accessibles par la console.
3577 \item [CatalogACL = \lt{}name-list\gt{}]
3578 \index[dir]{CatalogACL}
3579 \index[dir]{Directive!CatalogACL}
3580 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Catalog
3581 accessibles par la console.
3583 \item [CommandACL = \lt{}name-list\gt{}]
3584 \index[dir]{CommandACL}
3585 \index[dir]{Directive!CommandACL}
3586 Cette directive est utilis\'ee pour sp\'ecifier une liste de commandes de la console
3587 qui peuvent \^etre ex\'ecut\'ees par la console.
3591 En plus des diff\'erents noms de ressources du Director et de commandes, le mot-clef
3592 sp\'ecial {\bf *all*} peut \^etre sp\'ecifi\'e dans chacune des directives ACL ci-dessus.
3593 Sa pr\'esence signifie que toute ressource ou commande (pourvu qu'elle soit appropri\'ee
3594 \`a la directive) est accept\'ee. Pour un exemple de fichier de configuration, voyez le
3595 chapitre \ilink{Configuration de la console}{_ChapterStart36} de ce manuel
3597 \subsection*{La ressource Counter}
3598 \label{CounterResource}
3599 \index[general]{Ressource!Counter }
3600 \index[general]{Ressource Counter }
3601 \addcontentsline{toc}{subsection}{Ressource Counter}
3602 La ressource Counter d\'efinit une variable-compteur qui peut \^etre acc\'ed\'ee par le
3603 processus d'expansion de variables utilis\'e pour la cr\'eation de d'\'etiquettes (labels)
3604 de volumes avec la directive {\bf LabelFormat}. Consultez le paragraphe sur la directive
3605 \ilink{LabelFormat}{Label} de ce chapitre pour plus de d\'etails.
3610 \index[dir]{Counter}
3611 \index[dir]{Directive!Counter}
3612 D\'ebut de la ressource Counter. les directives Counter sont optionnelles.
3614 \item [Name = \lt{}name\gt{}]
3616 \index[dir]{Directive!Name}
3617 iLe nom de la variable-compteur. Il s'agit du nom que vous utiliserez pour vous r\'ef\'erer
3618 \`a cette variable et acc\'eder \`a sa valeur.
3620 \item [Minimum = \lt{}integer\gt{}]
3621 \index[dir]{Minimum}
3622 \index[dir]{Directive!Minimum}
3623 Sp\'ecifie la valeur minimale de la variable-compteur. Cette valeur devient celle par d\'efaut.
3624 Si elle n'est pas fournie, sa valeur est z\'ero.
3626 \item [Maximum = \lt{}integer\gt{}]
3627 \index[dir]{Maximum}
3628 \index[dir]{Directive!Maximum}
3629 Sp\'ecifie la valeur maximale de la variable-compteur. Si elle n'est pas fournie, ou si elles
3630 est r\'egl\'ee \`a z\'ero, la variable compteur peut prendre une valeur maximale de 2 147 483 648
3631 ($2^{31}$). Au del\`a de cette valeur, le compteur est remis au minimum.
3633 \item [*WrapCounter = \lt{}counter-name\gt{}]
3634 \index[dir]{*WrapCounter}
3635 \index[dir]{Directive!*WrapCounter}
3636 Si cette valeur est sp\'ecifi\'ee, lorsque la variable-compteur d\'epasse le maximum et
3637 est remise au minimum, le compteur sp\'ecifi\'e par la directive {\bf WrapCounter} est
3638 incr\'ement\'e. (Ceci n'est, pour le moment, pas impl\'ement\'e.)
3640 \item [Catalog = \lt{}catalog-name\gt{}]
3641 \index[dir]{Catalog}
3642 \index[dir]{Directive!Catalog}
3643 Si cette directive est sp\'ecifi\'ee, le compteur et sa valeur sont sauvegard\'es dans le
3644 catalogue sp\'ecifi\'e. Dans le cas contraire, le compteur est red\'efini \`a chaque
3645 d\'emarrage de Bacula.
3649 \subsection*{ Voici un exemple complet de fichier de configuration du Director.}
3650 \label{SampleDirectorConfiguration}
3651 \index[general]{File!Exemple Complet Director Configuration }
3652 \index[general]{Exemple Complet Fichier Configuration Director}
3653 \addcontentsline{toc}{subsection}{Exemple Complet Fichier Configuration Directo}
3654 Un exemple de fichier de configuration du Director pourrait \^etre le suivant :
3660 # Default Bacula Director Configuration file
3662 # The only thing that MUST be changed is to add one or more
3663 # file or directory names in the Include directive of the
3666 # For Bacula release 1.15 (5 March 2002) -- redhat
3668 # You might also want to change the default email address
3669 # from root to your address. See the "mail" and "operator"
3670 # directives in the Messages resource.
3672 Director { # define myself
3674 QueryFile = "/home/kern/bacula/bin/query.sql"
3675 WorkingDirectory = "/home/kern/bacula/bin/working"
3676 PidDirectory = "/home/kern/bacula/bin/working"
3677 Password = "XkSfzu/Cf/wX4L8Zh4G4/yhCbpLcz3YVdmVoQvU3EyF/"
3679 # Define the backup Job
3681 Name = "NightlySave"
3683 Level = Incremental # default
3686 Schedule = "WeeklyCycle"
3696 Where = /tmp/bacula-restores
3702 # List of files to be backed up
3706 Options { signature=SHA1 }
3708 # Put your list of files here, one per line or include an
3709 # external list with:
3713 # Note: / backs up everything
3718 # When to do the backups
3720 Name = "WeeklyCycle"
3721 Run = Full sun at 1:05
3722 Run = Incremental mon-sat at 1:05
3724 # Client (File Services) to backup
3729 Password = "MQk6lVinz4GG2hdIZk1dsKE/LxMZGo6znMHiD7t7vzF+"
3730 File Retention = 60d # sixty day file retention
3731 Job Retention = 1y # 1 year Job retention
3732 AutoPrune = yes # Auto apply retention periods
3734 # Definition of DLT tape storage device
3738 Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3739 Device = "HP DLT 80" # same as Device in Storage daemon
3740 Media Type = DLT8000 # same as MediaType in Storage daemon
3742 # Definition for a DLT autochanger device
3746 Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3747 Device = "Autochanger" # same as Device in Storage daemon
3748 Media Type = DLT-8000 # Different from DLTDrive
3751 # Definition of DDS tape storage device
3755 Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3756 Device = SDT-10000 # same as Device in Storage daemon
3757 Media Type = DDS-4 # same as MediaType in Storage daemon
3759 # Definition of 8mm tape storage device
3763 Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3764 Device = "Exabyte 8mm"
3767 # Definition of file storage device
3771 Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3772 Device = FileStorage
3775 # Generic catalog service
3778 dbname = bacula; user = bacula; password = ""
3780 # Reasonable message delivery -- send most everything to
3781 # the email address and to the console
3784 mail = root@localhost = all, !skipped, !terminate
3785 operator = root@localhost = mount
3786 console = all, !skipped, !saved
3789 # Default pool definition
3797 # Restricted console used by tray-monitor to get the status of the director
3801 Password = "GN0uRo7PTUmlMbqrJ2Gr1p0fk0HQJTxwnFyE4WSST3MWZseR"
3802 CommandACL = status, .status