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\'ecifi\'e un utilisateur et/ou un groupe pour le Director lors de la
139 configuration avec les options {\bf {-}{-}with-dir-user} et/ou {\bf {-}{-}with-dir-group} de
140 la commande ./configure, le r\'epertoire de travail Working Directory doit appartenir
141 doit appartenir \`a ce groupe et \`a cet utilisateur.
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\^eme 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\^ine quot\'ee.
283 Si cette directive n'est pas sp\'ecifi\'ee, le Director acceptera des connections de Console
284 de toute adresse valide. Notez que contrairement \`a la sp\'ecification DirAdresses d\'ecrite
285 plus haut, cette directive ne permet de sp\'ecifier qu'une seule adresse. Cette directive
286 n'est pas requise si vous utilisez la directive DirAdresses.
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\'esactiver l'ex\'ecution 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\^itront plus dans le catalogue apr\`es avoir fait une nouvelle sauvegarde
460 Full. Le processus pour supprimer ces fichiers du catalogue lors d'une
461 incr\'ementale ralentirait fortement les sauvegardes incr\'ementales. Il n'est
462 actuellement pas impl\'ement\'e dans Bacula.
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\^itront plus dans le catalogue apr\`es avoir fait une nouvelle sauvegarde
524 Full. Le processus pour supprimer ces fichiers du catalogue lors d'une
525 incr\'ementale ralentirait fortement les sauvegardes diff\'erentielles. Il n'est
526 actuellement pas impl\'ement\'e dans Bacula, mais plannifi\'e pour une future version
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 [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 [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 [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 [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 [ 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 [ 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 [ 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 [ 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 [ 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 [ 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 [ 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 [ 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 [ 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 [ 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 [ 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 [ 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 [ 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 [ 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 [ 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 [RunScript \{...\}]
876 \index[dir]{RunScript}
877 \index[dir]{Directive!Run Script}
879 La commande sp\'ecifi\'ee est ex\'ecut\'ee en tant que programme externe avant le
880 lancement du job. Cette directive est optionnelle.
881 Vous disposez des options suivantes :
883 \begin{tabular}{|c|c|c|l}
884 Options & Valeur & Defaut & Informations \\
887 Runs On Success & Yes/No & {\it Yes} & La commande est exécutée si le job s'est terminé avec succès\\
889 Runs On Failure & Yes/No & {\it No} & La commande est exécutée si le job a échoué\\
891 Runs On Client & Yes/No & {\it Yes} & La commande est exécutée sur le client\\
893 Runs When & Before|After|Always & {\it Never} & Le moment où la commande doit être exécutée\\
895 Abort Job On Error & Yes/No & {\it Yes} & Abandonne le job si le script retourne
896 un résultat non nul\\
898 Command & & & Le chemin vers votre script\\
901 Tout retour de la commande sur la sortie standard est
902 incluse dans le rapport de job de Bacula. La cha\^ine {bf command} doit \^etre
903 un nom de programme valide ou un script shell
906 la cha\^ine {bf command} est parcourue puis envoy\'ee vers la fonction execvp(), ce qui
907 signifie que le chemin de la commande est recherch\'e pour son ex\'ecution, mais
908 qu'il n'y a aucune interpr\'etation shell. Par cons\'equent, si vous voulez utiliser
909 des commandes complexes ou toute fonctionnalit\'e du shell telle que la
910 redirection, vous devez appeler un script shell o\`u vous mettrez vos commandes.
912 Avant de soumettre la commande sp\'ecifi\'ee au syst\`eme d'exploitation, Bacula
913 effectue les substitutions suivantes :
920 %e = Statut de sortie du job
922 %j = Nom unique du job
925 %s = Temps Depuis (NDT : Since Time)
926 %t = Type de job (Backup,...)
931 Le code de statut de fin de job peut prendre les valeurs suivantes :
933 \index[dir]{Exit Status}
940 \item Unknown term code
943 Aussi, si vous l'utilisez dans une ligne de commande, il vous faudra l'encadrer
946 Vous disposez des raccourcis suivants :
947 \begin{tabular}{|c|c|c|c|c|c}
948 Mot clef & RunsOnSuccess & RunsOnFailure & AbortJobOnError & Runs On Client & RunsWhen \\
950 Run Before Job & & & Yes & No & Before \\
952 Run After Job & Yes & No & & No & After \\
954 Run After Failed Job & No & Yes & & No & After \\
956 Client Run Before Job & & & Yes & Yes & Before \\
958 Client Run After Job & Yes & No & & Yes & After \\
960 Client Run After Failed Job & No & Yes & & Yes & After \\
968 Command = "/etc/init.d/apache stop"
974 Command = "/etc/init.d/apache start"
978 {\bf Consid\'erations particuli\`eres \`a Windows}
979 D'autre part, pour les clients Windows \`a partir de la version 1.33, notez bien
980 que vous devez fournir un chemin correct pour votre script, et que le script
981 peut avoir l'extension .com, .exe, ou .bat. Si vous sp\'ecifiez un chemin,
982 vous devez aussi sp\'ecifier l'extension compl\`ete. Les commandes \`a la fa\c{c}on
983 d'Unix ne fonctionneront pas, \`a moins que vous n'ayez install\'e et
984 correctement configur\'e Cygwin en plus (et s\'epar\'ement) de Bacula.
986 La commande peut \^etre n'importe quel programme reconnu par cmd.exe ou command.com
987 comme un fichier ex\'ecutable. Sp\'ecifier une extension de fichier ex\'ecutable
988 est optionnel, \`a moins qu'il y ait une ambigu\"it\'e (par exemple ls.bat, ls.exe).
990 Bacula cherche la commande dans le r\'epertoire "System \%Path\%" (Dans la
991 bo\^ite de dialogue des variables d'environnement vous avez les variables
992 "syst\`eme" et "utilisateurs". Si bacula-fd fonctionne en tant que
993 service, seules les variables d'environnement syst\`emes sont accessibles.)
995 Les variables d'environnement syst\`eme peuvent \^etre invoqu\'ees avec la
996 syntaxe \%var\% et utilis\'ees comme portion du nom de la commande ou des
999 Lorsque la sp\'ecification du chemin absolu d'un ex\'ecutable ou le nom de
1000 l'ex\'ecutable contient des espaces ou des caract\`eres sp\'eciaux, ils doivent
1001 \^etre quot\'es. Il en va de m\^eme pour les arguments.
1005 ClientRunBeforeJob = "\"C:/Program Files/Software
1006 Vendor/Executable\" /arg1 /arg2 \"foo bar\""
1010 Les caract\`eres sp\'eciaux \&()[]\{\}\^{}=;!'+,`\~{} devront \^etre quot\'es s'ils font
1011 partie d'un nom de fichier ou d'un argument.
1014 If someone is logged in a blank ``command'' window running the commands will
1015 be present during the execution of the command.
1017 Quelques suggestions de Phil Stracchino pour l'ex\'ecution sur les machines
1018 Win32 avec le File Daemon Win32 natif :
1021 \item Vous pourriez utiliser la directive ClientRunBeforeJob pour sp\'ecifier
1022 un fichier .bat qui ex\'ecute les commandes cot\'e client plut\^ot que
1023 d'essayer d'ex\'ecuter (par exemple) regedit /e directement.
1024 \item Le fichier batch devrait retourner explicitement 0 lors des ex\'ecutions correctes.
1025 \item Le chemin vers le fichier batch devrait \^etre sp\'ecifi\'e au format Unix :
1027 ClientRunBeforeJob = ``c:/bacula/bin/systemstate.bat''
1029 plut\^ot qu'au format DOS/Windows :
1031 ClientRunBeforeJob =
1032 ``c:\textbackslash{}bacula\textbackslash{}bin\textbackslash{}systemstate.bat''
1036 L'exemple suivant d'utilisation de la directive Client Run Before Job a \'et\'e soumis
1037 par un utilisateur :\\
1038 Vous pourriez \'ecrire un script shell pour sauvegarder une base DB2 dans un FIFO. Voici
1039 le script en question :
1048 db2 BACKUP DATABASE mercuryd TO $DIR/dbpipe WITHOUT PROMPTING &
1053 La ligne suivante dans la ressource Job du fichier bacula-dir.conf :
1056 Client Run Before Job = "su - mercuryd -c \"/u01/mercuryd/backupdb.sh '%t'
1061 Lorsque le job est ex\'ecut\'e, vous obtiendrez un message de sortie du script
1062 annon\c{c}ant que la sauvegarde a d\'emarr\'e. M\^eme si la commande est ex\'ecut\'ee en
1063 arri\`ere plan avec \&, le job bloquera jusqu'\`a la commande "db2 BACKUP DATABASE", et
1064 la sauvegarde se fige.
1066 Pour rem\'edier \`a cette situation, la ligne "db2 BACKUP DATABASE"
1067 devrait \^etre modifi\'ee en :
1071 db2 BACKUP DATABASE mercuryd TO $DIR/dbpipe WITHOUT PROMPTING > $DIR/backup.log
1076 Il est important de rediriger l'entr\'ee et la sortie d'une commande en arri\`ere plan
1077 vers /dev/null pour \'eviter le bloquage du script.
1079 \item [ Run Before Job = \lt{}command\gt{}]
1080 \index[dir]{Run Before Job}
1081 \index[dir]{Directive!Run Before Job}
1082 La commande sp\'ecifi\'ee est ex\'ecut\'ee en tant que programme externe avant le
1083 lancement du job. Cette directive n'est pas requise,mais si elle est d\'efinie,
1084 et si le code retour d'ex\'ecution du programme est diff\'erent de z\'ero, le job qui
1085 a lanc\'e le programme est effac\'e.
1088 Run Before Job = "echo test"
1093 Command = "echo test"
1099 Lutz Kittler a fait remarquer que ceci peut \^etre un moyen ais\'e pour modifier
1100 vos schedules pour les vacances. Par exemple, supposons que vous fassiez
1101 habituellement des sauvegardes Full le vendredi, mais que jeudi et vendredi
1102 soient f\'eri\'es. Pour \'eviter d'avoir \`a changer les cartouches entre jeudi et vendredi
1103 alors que personne n'est au bureau, vous pouvez cr\'eer un RunBeforeJob qui retourne
1104 un statut non nul jeudi et z\'ero les autres jours. Ainsi, le job de jeudi ne sera pas
1105 ex\'ecut\'e, et la cartouche que vous avez ins\'er\'e mercredi sera disponible pour la Full
1108 \item [ Run After Job = \lt{}command\gt{}]
1109 \index[dir]{Run After Job}
1110 \index[dir]{Directive!Run After Job}
1111 La commande sp\'ecifi\'ee est ex\'ecut\'ee en tant que programme externe apr\`es la fin
1112 du job. La cha\^ine {bf command} doit \^etre un nom de programme valide ou un
1113 script shell. Cette directive n'est pas requise. Si le code de sortie du
1114 programme est non nul, Bacula affiche un message d'avertissement (warning).
1116 la commande sp\'ecifi\'ee au syst\`eme d'exploitation, Bacula effectue les
1117 substitutions de caract\`eres d\'ecrites au paragraphe {\bf RunScript}
1119 Un exemple d'utilisation de cette directive est donn\'e au chapitre
1120 \ilink{Astuces}{JobNotification} de ce manuel.
1121 Lisez le paragraphe {\bf Run After Failed Job} si vous voulez ex\'ecuter
1122 une commande lorqu'un job se termine avec un statut anormal.
1124 \item [Run After Failed Job = \lt{}command\gt{}]
1125 \index[dir]{Run After Job}
1126 \index[dir]{Directive!Run After Job}
1127 La commande sp\'ecifi\'ee est ex\'ecut\'ee en tant que programme externe apr\`es la fin
1128 du job lorqu'il se termine avec un statut d'erreur. Cette directive est optionnelle.
1129 La cha\^ine {\bf command} doit \^etre le nom d'un programme ou d'un script shell.
1130 Si le code de sortie du programme est non nul, Bacula affiche un mesage d'avertissement
1131 (warning). Avant de soumettre
1132 la commande sp\'ecifi\'ee au syst\`eme d'exploitation, Bacula effectue les
1133 substitutions de caract\`eres d\'ecrites au paragraphe {\bf RunScript}. Notez que
1134 vous pouvez, si vous souhaitez que
1135 votre programme soit ex\'ecut\'e quel que soit l'issue du job, utiliser une définition
1139 Command = "echo test"
1143 RunsOnSuccess = yes # default, you can drop this line
1146 Le chapitre \ilink{Trucs et astuces}{JobNotification} de ce manuel propose un
1147 exemple d'utilisation de cette directive.
1149 \item [ Client Run Before Job = \lt{}command\gt{}]
1150 \index[dir]{Client Run Before Job}
1151 \index[dir]{Directive!Client Run Before Job}
1152 Cette directive est similaire \`a {\bf Run Before Job} except\'e que la
1153 commande est ex\'ecut\'ee sur la machine cliente. Les m\^emes restrictions
1154 s'appliquent aux syt\`emes Unix que celles signal\'ees pour {\bf Run Before Job}.
1156 \item [ Client Run After Job = \lt{}command\gt{}]
1157 \index[dir]{Client Run After Job}
1158 \index[dir]{Directive!Client Run After Job}
1159 Cette directive est similaire \`a {\bf Run After Job} sauf qu'elle est ex\'ecut\'ee
1160 sur la machine cliente. Veuillez consulter les notes concernant les clients
1161 Windows dans le paragraphe {\bf RunScript} ci-dessus.
1163 \item [ Rerun Failed Levels = \lt{}yes|no\gt{}]
1164 \index[dir]{Rerun Failed Levels}
1165 \index[dir]{Directive!Rerun Failed Levels}
1166 Si la valeur de cette directive est {\bf yes} ({\bf no} par d\'efaut), et si
1167 Bacula d\'etecte qu'un job ant\'erieur d'un niveau plus \'elev\'e (Full ou
1168 diff\'erentiel), alors le job est \'elev\'e au niveau le plus haut. Ceci est
1169 particuli\`erement utile pour sauvegarder les pc portables qui peuvent
1170 \^etre fr\'equemment inaccessibles. En effet, apr\`es l'\'echec d'une Full, vous
1171 souhaiterez probablement que la prochaine sauvegarde soit de niveau Full
1172 plut\^ot qu'Incremental ou Diff\'erentiel.
1174 \item [ Spool Data = \lt{}yes|no\gt{}]
1175 \index[dir]{Spool Data}
1176 \index[dir]{Directive!Spool Data}
1177 Si la valeur de cette directive est {\bf yes} ({\bf no} par d\'efaut), le
1178 Storage Daemon aura pour consigne de stocker les donn\'ees dans un
1179 fichier spoule sur disque plut\^ot que de les \'ecrire directement sur bande.
1180 Lorsque toutes les donn\'ees sont dans le spoule ou lorsque la taille
1181 maximale fix\'ee pour le fichier spoule est atteinte, les donn\'ees sont
1182 d\'echarg\'ees du spoule vers les bandes. Lorsque la valeur de cette directive
1183 est {\bf yes}, la directive Spool Attributes est aussi automatiquement
1184 mise \`a la valeur {\bf yes}. L'utilisation de cette fonctionnalit\'e
1185 pr\'evient les arr\^ets et red\'emarrage incessants lors des incr\'ementales.
1186 Elle ne doit pas \^etre utilis\'ee si vous sauvegardez sur disque.
1189 \item [ Spool Attributes = \lt{}yes|no\gt{}]
1190 \index[dir]{Spool Attributes}
1191 \index[dir]{Directive!Spool Attributes}
1192 \index[dir]{lenteur}
1193 \index[general]{lent}
1194 \index[dir]{Sauvegardes!lent}
1195 \index[general]{Sauvegardes!lent}
1196 La valeur par d\'efaut est {\bf no}, ce qui signifie que le Storage Daemon
1197 envoie les attributs de fichiers au Director au moment o\`u ils (les fichiers)
1198 sont ecrits sur la bande. Cependant, si vous souhaitez \'eviter le risque
1199 de ralentissement d\^u aux mises \`a jour du catalogue, vous pouvez r\'egler
1200 cette directive \`a {\bf yes}, dans ce cas, le Storage Daemon stockera les
1201 attributs de fichiers dans un fichier tampon du Working Directory pour ne les
1202 transmettre au Director qu'\`a la fin de l'\'ecriture sur bande des donn\'ees du job.
1204 \item [ Where = \lt{}directory\gt{}]
1206 \index[dir]{Directive!Where}
1207 Cette directive ne concerne que les jobs de type Restauration. Elle permet
1208 de sp\'ecifier un pr\'efixe au nom du r\'epertoire o\`u tous les fichiers sont
1209 restaur\'es. Ceci permet de restaurer les fichiers en un emplacement
1210 diff\'erent de celui o\`u ils ont \'et\'e sauvegard\'es. Si {\bf Where} n'est pas
1211 renseign\'e, ou si sa valeur est backslash ({\bf /}), les fichiers sont
1212 restaur\'es \`a leur emplacement d'origine. Par d\'efaut, nous avons donn\'e \`a
1213 {\bf Where} la valeur {\bf /tmp/bacula-restores} dans les fichiers de
1214 configuration fournis en exemple, ceci afin d'\'eviter l'\'ecrasement
1215 accidentel de vos fichiers.
1217 \item [ Replace = \lt{}replace-option\gt{}]
1218 \index[dir]{Replace}
1219 \index[dir]{Directive!Replace}
1220 Cette directive ne concerne que les jobs de type Restauration. Elle pr\'ecise
1221 la conduite \`a adopter dans l'\'eventualit\'e o\`u Bacula serait conduit \`a restaurer
1222 un fichier ou un r\'epertoire qui existe d\'ej\`a. Les options suivantes sont
1228 \index[dir]{always }
1229 Lorsque le fichier \`a restaurer existe d\'ej\`a, il est supprim\'e et remplac\'e par la
1230 copie sauvegard\'ee.
1233 \index[dir]{ifnewer }
1234 Si le fichier sauvegard\'e (sur bande) est plus r\'ecent que le fichier existant,
1235 le fichier existant est supprim\'e et remplac\'e par la copie sauvegard\'ee.
1238 \index[dir]{ifolder }
1239 Si le fichier sauvegard\'e (sur bande) est plus ancien que le fichier existant,
1240 le fichier existant est supprim\'e et remplac\'e par la copie sauvegard\'ee.
1244 Si le fichier sauvegard\'e existe d\'ej\`a, Bacula renonce \`a restaurer ce fichier.
1247 \item [ Prefix Links=\lt{}yes|no\gt{}]
1248 \index[dir]{Prefix Links}
1249 \index[dir]{Directive!Prefix Links}
1250 Si la valeur de cette directive est {\bf Yes} et si un pr\'efixe de chemin
1251 {\bf Where} est sp\'ecifi\'e, alors ce dernier s'applique aussi aux liens
1252 absolus. La valeur par d\'efaut est {\bf No}. Lorsque cette directive est \`a
1253 {\bf Yes}, tous les liens absolus seront aussi modifi\'es pour
1254 pointer vers le nouveau r\'epertoire. En principe, c'est ce qui est souhait\'e :
1255 l'ensemble du r\'epertoire restaur\'e conserve sa coh\'erence interne. Cependant,
1256 si vous voulez replacer les fichiers ult\'erieurement \`a leurs emplacements
1257 d'origine, tous les liens absolus seront bris\'es.
1259 \item [ Maximum Concurrent Jobs = \lt{}number\gt{}]
1260 \index[dir]{Maximum Concurrent Jobs}
1261 \index[dir]{Directive!Maximum Concurrent Jobs}
1262 O\`u \lt{}number\gt{} est le nombre maximum de jobs de la ressource Job courrante
1263 qui peuvent \^etre ex\'ecut\'es simultan\'ement. Notez que cette directive ne limite
1264 que les jobs avec le m\^eme nom que la ressource dans laquelle elle
1265 figure. Toute autre restriction du nombre maximum de jobs simultan\'es, que ce soit au
1266 niveau du Director, du Client ou de la ressource Storage, s'applique en plus de
1267 de la limite stipul\'ee ici. La valeur par d\'efaut est 1, mais vous pouvez utiliser
1268 une valeur plus grande. Nous vous recommandons fortement de lire
1269 attentivement le paragraphe WARNING sous \ilink{ Maximum Concurrent Jobs}{DirMaxConJobs}
1270 dans la section concernant la ressource Director.
1272 \item [ Reschedule On Error = \lt{}yes|no\gt{}]
1273 \index[dir]{Reschedule On Error}
1274 \index[dir]{Directive!Reschedule On Error}
1275 Si cette directive est activ\'ee, alors si le job se termine en erreur, il sera
1276 reprogramm\'e en accord avec les directives {\bf Reschedule Interval} et
1277 {\bf Reschedule Times}. Si vous supprimez le job, il ne sera pas reprogramm\'e.
1278 La valeur par d\'efaut est {\bf no}.
1280 Cette sp\'ecification peut se r\'ev\'eler utile pour les pc portables ainsi que pour toutes
1281 les machines qui ne sont pas connect\'ees au r\'eseau en permanence.
1283 \item [ Reschedule Interval = \lt{}time-specification\gt{}]
1284 \index[dir]{Reschedule Interval}
1285 \index[dir]{Directive!Reschedule Interval}
1286 Si cette directive est activ\'ee, alors si le job se termine en erreur, il sera
1287 reprogramm\'e apr\`es l'intervalle de temps stipul\'e par {\bf time-specification}.
1288 Consultez la section \ilink{ the time specification formats}{Time} du chapitre
1289 Configurer Bacula pour plus de d\'etails sur les sp\'ecifications de temps. Si
1290 aucun intervalle n'est sp\'ecifi\'e, le job ne sera pas reprogramm\'e en cas d'erreur.
1292 \item [ Reschedule Times = \lt{}count\gt{}]
1293 \index[dir]{Reschedule Times}
1294 \index[dir]{Directive!Reschedule Times}
1295 Cette directive pr\'ecise le nombre maximal de tentatives d'ex\'ecution du job.
1296 S'il est fix\'e \`a z\'ero (valeur par d\'efaut), le job sera reprogramm\'e
1299 \item [Run = \lt{}job-name\gt{}]
1301 \index[dir]{Directive!Run}
1302 \index[dir]{Cloner un Job}
1303 La directive Run (\`a ne pas confondre avec l'option Run dans un
1304 Schedule) vous permet de d\'emarrer ou de cloner des jobs. En utilisant les
1305 mots-clef de clonage (voir ci dessous), vous pouvez sauvegarder les m\^emes
1306 donn\'ees (ou presque les m\^emes) vers deux (ou plus) lecteurs en m\^eme temps.
1307 Le nom de job {\bf job-name} est en principe le m\^eme que celui de la
1308 ressource job courante (cr\'eant ainsi un clone). Cependant, ce peut \^etre
1309 n'importe quel nom de job, de sorte qu'un job peut d\'emarrer d'autre jobs li\'es.
1310 La partie apr\`es le signe \'egale doit \^etre encadr\'ee de double quotes, et peut
1311 contenir toute cha\^ine ou jeu d'options (surcharges) qui pourraient \^etre
1312 sp\'ecifi\'ees \`a l'utilisation de la commande Run dans la Console. Par exemple,
1313 {\bf storage=DDS-4 ...}. De plus, deux mots-clef sp\'eciaux vous permettent de
1314 cloner le job courant : {\bf level=\%l} et {\bf since=\%s}. le \%l du mot clef
1315 level permet d'entrer le niveau r\'eel du job courant et le \%s du mot clef since
1316 permet d'imposer la m\^eme date pour la comparaison que celle utilis\'ee par le job courant.a
1317 Notez que dans le cas du mot-clef since, le \%s doit \^etre encadr\'e de double quotes,
1318 qui doivent \^etre elles m\^emes pr\'ec\'ed\'ees de barres obliques arri\`eres puisque elles sont
1319 d\'ej\`a entre double quotes. Par exemple :
1322 run = "Nightly-backup level=%s since=\"%s\" storage=DDS-4"
1324 Un job clon\'e ne d\'emarrera pas de nouveaux clones, aussi il n'est pas possible de les cascader.
1327 \item [ Priority = \lt{}number\gt{}]
1328 \index[dir]{Priority}
1329 \index[dir]{Directive!Priority}
1330 Cette directive vous permet de contr\^oler l'ordre d'ex\'ecution des jobs en
1331 sp\'ecifiant un entier positif non nul. Plus grand est ce nombre, plus basse
1332 est la priorit\'e du job. En supposant que vous n'ex\'ecutiez pas de jobs
1333 simultan\'es, tous les jobs en file d'attente avec la priorit\'e 1 seront
1334 ex\'ecut\'es avant ceux avec la priorit\'e 2, et ainsi de suite, sans prise en
1335 compte de l'ordre original de planification.
1337 La priorit\'e affecte seulement les jobs en file d'attente, et non les jobs d\'eja
1338 en cours d'ex\'ecution. Si un ou plusieurs jobs de priorit\'e 2 sont d\'ej\`a en cours
1339 d'ex\'ecution, et si un nouveau job est programm\'e avec la priorit\'e 1, les jobs
1340 en cours d'ex\'ecution doivent se terminer pour que le job de priorit\'e 1 puisse
1343 La priorit\'e par d\'efaut est 10.
1345 Si vous voulez ex\'ecutez plusieurs jobs simultan\'es,
1346 vous devriez garder les points suivants \`a l'esprit :
1349 \item Pour ex\'ecuter plusieurs jobs simultan\'es, vous devez ajuster la directive
1350 {\bf Maximum Concurrent Jobs} (utiliser une valeur supérieure à 1)
1351 en cinq ou six endroits diff\'erents : dans le
1352 fichier bacula-dir.conf, les ressources {\bf Job}, {\bf Client}, {\bf Storage};
1353 dans le fichier bacula-fd, la ressource {\bf FileDaemon}; et dans le fichier
1354 bacula-sd.conf, la ressource {\bf Storage}. Si vous omettez l'un d'entre eux,
1355 les jobs seront ex\'ecut\'es un par un.
1356 \item Bacula n'ex\'ecute pas simultan\'ement les jobs de priorit\'es distinctes.
1357 \item Si Bacula ex\'ecute un job de priorit\'e 2 et si un nouveau job de priorit\'e
1358 1 est programm\'e, il attendra la fin du job de priorit\'e 1, m\^eme si les
1359 param\`etres {\bf Maximum Concurrent Jobs} pourraient permettre l'ex\'ecution
1360 simultan\'ee de deux jobs.
1361 \item Supposons que Bacula soit en train d'ex\'ecuter un job de priorit\'e 2 et qu'un
1362 job de priorit\'e 1 soit programm\'e et mis en queue en attente de la fin du
1363 job de priorit\'e 2. Si vous d\'emarrez alors un second job de priorit\'e 2, le job
1364 en attente de priorit\'e 1 emp\`echera le nouveau job de priorit\'e 2 de s'ex\'ecuter
1365 en parall\`ele au premier. Ainsi : tant qu'il reste un job de priorit\'e sup\'erieure
1366 \`a ex\'ecuter, aucun nouveau job de priorit\'e inf\'erieure ne pourra d\'emarrer, m\^eme si
1367 les param\`etres {\bf Maximum Concurrent Jobs} devraient le permettre. Ceci permet
1368 d'assurer que les jobs de priorit\'e sup\'erieure seront ex\'ecut\'es d\`es que possible.
1371 Si vous avez plusieurs jobs de priorit\'es diff\'erentes, il est pr\'ef\'erable de ne pas les
1372 d\'emarrer exactement \`a la m\^eme heure, car Bacula doit les examiner un \`a la fois. Si,
1373 par hazard, Bacula commence par traiter un job de priorit\'e inf\'erieure, il sera
1374 ex\'ecut\'e avant votre job de priorit\'e \'elev\'e. Pour \'eviter cette situation,
1375 d\'emarrez l'un quelconque des jobs de priorit\'e \'elev\'ee quelques secondes avant
1376 ceux de basse priorit\'e. Ainsi, vous serez assur\'e que Bacula examine les jobs
1377 dans l'ordre voulu et que votre sch\'ema de priorit\'es sera respect\'e.
1379 \label{WritePartAfterJob}
1381 \item [ Write Part After Job = \lt{}yes|no\gt{}]
1382 \index[sd]{Write Part After Job}
1383 \index[dir]{Directive!Write Part After Job}
1384 Cette directive est impl\'ement\'ee depuis la version 1.37.
1385 Si la valeur de cette directive est {\bf yes} ({\bf no} par d\'efaut), un nouveau
1386 "fichier partition" (ndt : part file) sera cr\'e\'e apr\`es la fin du job.
1388 Cette directive devrait \^etre activ\'ee lors de l'\'ecriture sur des p\'eriph\'erique
1389 qui requi\`erent un montage (par exemple, les DVDs), afin de vous assurer que
1390 le fichier partition courant, celui qui contient les donn\'ees de ce job, est
1391 envoy\'e vers le p\'eriph\'erique, et qu'aucune donn\'ee n'est laiss\'ee dans le fichier
1392 temporaire sur le disque dur. Quoi qu'il en soit, avec certains supports tels
1393 que les DVD+R et DVD-R, beaucoup d'espace (environ 10 Mb) est perdu \`a chaque fois
1394 qu'un fichier partition est \'ecrit. Aussi, si vous ex\'ecutez plusieurs jobs \`a la
1395 suite, vous devriez r\'egler cette directive \`a {\bf no} pour tous ces jobs sauf
1396 le dernier, pour \'eviter un gaspillage important d'espace, tout en ayant la certitude
1397 que les donn\'ees sont bien \'ecrites sur le m\'edium lorsque tous les jobs sont
1400 Cette directive est ignor\'ee avec les bandes et les p\'eriph\'eriques FIFO.
1403 Voici un exemple de d\'efinition de ressource Job valide.
1410 Level = Incremental # default
1412 FileSet="Minou Full Set"
1415 Schedule = "MinouWeeklyCycle"
1421 \subsection*{La ressource JobDefs}
1422 \label{JobDefsResource}
1423 \index[general]{JobDefs Resource }
1424 \index[general]{Resource!JobDefs }
1425 \addcontentsline{toc}{subsection}{JobDefs Resource}
1427 La ressource Jobdefs admet toutes les directives qui peuvent appara\^itre dans
1428 une ressource Job. Une ressource Jobdefs ne cr\'e\'e en aucun cas un Job, son r\^ole
1429 est de pouvoir \^etre d\'esign\'ee dans une ressource Job comme un ensemble de
1430 param\`etres par d\'efaut. Ceci permet de d\'efinir plusieurs jobs similaires avec
1431 concision, en ne mentionnant, pour chaque job, que les diff\'erences avec les
1432 valeurs par d\'efaut sp\'ecifi\'ees dans la ressource Jobdefs.
1434 \subsection*{La ressource Schedule}
1435 \label{ScheduleResource}
1436 \index[general]{Resource!Schedule }
1437 \index[general]{Schedule Resource }
1438 \addcontentsline{toc}{subsection}{Schedule Resource}
1440 La ressource Schedule offre un moyen pour planifier automatiquement un Job,
1441 mais aussi la possibilit\'e de surcharger les param\`etres par d\'efaut de Level,
1442 Pool, Storage, et Messages ressources. Si une ressource Schedule n'est pas
1443 sp\'ecifi\'ee dans un job, ce job ne peut \^etre ex\'ecut\'e que manuellement.
1444 En g\'en\'eral, vous sp\'ecifierez une action et le moment de son lancement.
1449 \index[dir]{Schedule}
1450 \index[dir]{Directive!Schedule}
1451 D\'ebut des directives Schedule. La ressource {\bf Schedule} n'est pas requise,
1452 mais il vous en faudra au moins une si vous souhaitez que vos jobs soient
1453 ex\'ecut\'es automatiquement.
1455 \item [Name = \lt{}name\gt{}]
1457 \index[dir]{Directive!Name}
1458 Le nom du Schedule d\'efini. Cette directive est requise.
1460 \item [Run = \lt{}Job-overrides\gt{} \lt{}Date-time-specification\gt{} ]
1462 \index[dir]{Directive!Run}
1463 La directive Run d\'efinit quand un job doit \^etre ex\'ecut\'e, et les \'eventuelles
1464 surcharges \`a appliquer. Il est possible de sp\'ecifier plusieurs directives
1465 {\bf run} au sein d'une ressource {\bf Schedule}, elles seront toutes
1466 appliqu\'ees. Si vous avez deux directives {\bf Run} qui d\'emarrent au m\^eme
1467 moment, deux jobs seront lanc\'es simultan\'ement (en fait, avec une seconde d'\'ecart).
1470 La directive {\bf Job-overrides} permet d'outrepasser les sp\'ecifications de
1471 Level, Storage, Messages et Pool \'ecrites dans la ressource Job. De plus,
1472 les sp\'ecifications FullPool, DifferentialPool et IncrementalPool permettent
1473 de passer outre les sp\'ecification de Pool, en accord avec le niveau (level)
1474 effectif d'ex\'ecution du job.
1476 L'utilisation de surcharges permet de peaufiner le param\'etrage d'un job
1477 particulier. Par exemple, vous pourriez surcharger une sp\'ecification
1478 Messages qui enverrait vos logs de backups vers un fichier, de fa\
\ 3on \`a ce qu'ils
1479 vous soient envoy\'es par mails pour les Fulls hebdomadaires ou mensuelles.
1481 Les directives {\bf Job-overrides} sont sp\'ecifi\'ees en tant que {\bf mot-clef=valeur}
1482 o\`u le mot-clef est l'un des suivants : Level, Storage, Messages, Pool, FullPool,
1483 DifferentialPool ou IncrementalPool, et la {\bf valeur} est d\'efinie selon le format
1484 adapt\'e \`a la directive. Vous pouvez sp\'ecifier plusieurs surcharges {\bf Job-overrides}
1485 en une seule directive {\bf Run} en les s\'eparant par des espaces ou des
1486 trailing comas (traduction ?). Par exemple :
1492 \index[dir]{Directive!Level}
1493 Tous les fichiers du FileSet qu'ils aient ou non chang\'e.
1495 \item [Level=Incremental]
1497 \index[dir]{Directive!Level}
1498 Tous les fichiers qui ont chang\'e depuis la derni\`ere sauvegarde.
1502 \index[dir]{Directive!Pool}
1503 Sp\'ecifie l'utilisation du Pool nomm\'e {\bf Weekly}.
1505 \item [Storage=DLT\_Drive]
1506 \index[dir]{Storage }
1507 \index[dir]{Directive!Storage}
1508 Sp\'ecifie l'utilisation du lecteur {\bf DLT\_Drive} pour p\'eriph\'erique de stockage.
1510 \item [Messages=Verbose]
1511 \index[dir]{Messages }
1512 \index[dir]{Directive!Messages}
1513 Sp\'ecifie l'utilisation de la ressource messages {\bf Verbose} pour le job.
1515 \item [FullPool=Full]
1516 \index[dir]{FullPool}
1517 \index[dir]{Directive!FullPool}
1519 Sp\'ecifie l'utilisation du Pool nomm\'e {\bf Full} si le job est une sauvegarde Full,
1520 ou s'il a \'et\'e \'elev\'e en Full bien qu'ayant \'et\'e lanc\'e en tant que diff\'erentiel ou
1523 \item [DifferentialPool=Differential]
1524 \index[dir]{DifferentialPool }
1525 \index[dir]{Directive!DifferentialPool}
1526 Sp\'ecifie l'utilisation du Pool nomm\'e {\bf Differential} si le job est une
1527 sauvegarde diff\'erentielle.
1529 \item [IncrementalPool=Incremental]
1530 \index[dir]{IncrementalPool}
1531 \index[dir]{Directive!IncrementalPool}
1532 Sp\'ecifie l'utilisation du Pool nomm\'e {\bf Incremental} si le job est une
1533 sauvegarde incr\'ementale.
1535 \item [SpoolData=yes|no]
1536 \index[dir]{SpoolData}
1537 \index[dir]{Directive!SpoolData}
1538 Indique \`a Bacula d'ordonner au Storage Daemon de placer les donn\'ees sur un
1539 spool disque avant de les envoyer vers les cartouches.
1541 \item [WritePartAfterJob=yes|no]
1542 \index[dir]{WritePartAfterJob}
1543 \index[dir]{Directive!WritePartAfterJob}
1544 Indique \`a Bacula d'ordonner au Storage Daemon d'\'ecrire le fichier partition
1545 courant vers le p\'eriph\'erique lorsque le job s'ach\`eve (voir
1546 \ilink{la directive Write Part After Job dans la ressource Job}{WritePartAfterJob}).
1549 {\bf Date-time-specification} D\'etermine la planification d'ex\'ecution du job.
1550 La sp\'ecification est une r\'ep\'etition, et, par d\'efaut, Bacula est param\'etr\'e
1551 pour ex\'ecuter un job au d\'ebut de chaque heure de chaque jour de chaque semaine
1552 de chaque mois de chaque ann\'ee. Ce n'est probablement pas ce que vous souhaitez,
1553 aussi vous devez pr\'eciser ou limiter les moments o\`u vous souhaitez voir vos jobs
1554 ex\'ecut\'es. Toute sp\'ecification est suppos\'ee cyclique et servira \`a limiter le
1555 cycle par d\'efaut. Ceci se fait en sp\'ecifiant des masques ou des horaires,
1556 jours de la semaine, jours du mois, semaines du mois, semaines de l'ann\'ee et
1557 mois de l'ann\'ee o\`u vous voulez ex\'ecuter le job. En combinant ces possibilit\'es,
1558 vous pouvez d\'efinir une planification qui se r\'ep\`ete \`a presque n'importe quelle
1561 Concr\`etement, vous devez d\'efinir les {\bf mois}, {\bf jour}, {\bf heure} et
1562 {\bf minute} o\`u le job est \`a ex\'ecuter. Parmis ces quatre objets, le {\bf jour}
1563 est particulier en ce qu'il peut sp\'ecifier un jour du mois (1,2,...31) ou de la
1564 semaine (Monday, Tuesday,...Sunday). Enfin, vous pouvez aussi sp\'ecifier un
1565 jour de la semaine pour restreindre la planification \`a la premi\`ere, deuxi\`eme,
1566 troisi\`eme, quatri\`eme ou cinqui\`eme semaine du mois.
1568 Par exemple, si vous sp\'ecifiez seulement un jour de la semaine, disons {\bf Mardi},
1569 le job sera ex\'ecut\'e toutes les heures de chaque mardi de chaque mois. La raison
1570 en est que les param\`etres {\bf Mois} et {\bf Heure} sont rest\'es \`a leurs valeurs
1571 par d\'efaut : chaque mois et chaque heure.
1573 Notez que, par d\'efaut, sans autre sp\'ecification, votre job s'ex\'ecutera au
1574 d\'ebut de chaque heure. Si vous souhaitez que votre job s'ex\'ecute plus souvent
1575 qu'une fois par heure, il vous faudra d\'efinir plusieurs sp\'ecifications {\bf run}
1576 avec pour chacune une minut diff\'erente.
1578 Les dates et horaires d'ex\'ecutions des jobs peuvent \^etre sp\'ecifi\'es comme suit,
1585 <week-keyword> = 1st | 2nd | 3rd | 4th | 5th | first |
1586 second | third | forth | fifth
1587 <wday-keyword> = sun | mon | tue | wed | thu | fri | sat |
1588 sunday | monday | tuesday | wednesday |
1589 thursday | friday | saturday
1590 <week-of-year-keyword> = w00 | w01 | ... w52 | w53
1591 <month-keyword> = jan | feb | mar | apr | may | jun | jul |
1592 aug | sep | oct | nov | dec | january |
1593 february | ... | december
1594 <daily-keyword> = daily
1595 <weekly-keyword> = weekly
1596 <monthly-keyword> = monthly
1597 <hourly-keyword> = hourly
1598 <digit> = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0
1599 <number> = <digit> | <digit><number>
1600 <12hour> = 0 | 1 | 2 | ... 12
1601 <hour> = 0 | 1 | 2 | ... 23
1602 <minute> = 0 | 1 | 2 | ... 59
1603 <day> = 1 | 2 | ... 31
1604 <time> = <hour>:<minute> |
1605 <12hour>:<minute>am |
1607 <time-spec> = <at-keyword> <time> |
1609 <date-keyword> = <void-keyword> <weekly-keyword>
1610 <day-range> = <day>-<day>
1611 <month-range> = <month-keyword>-<month-keyword>
1612 <wday-range> = <wday-keyword>-<wday-keyword>
1613 <range> = <day-range> | <month-range> |
1615 <date> = <date-keyword> | <day> | <range>
1616 <date-spec> = <date> | <date-spec>
1617 <day-spec> = <day> | <wday-keyword> |
1618 <day-range> | <wday-range> |
1619 <week-keyword> <wday-keyword>
1620 <day-range> | <wday-range> |
1622 <month-spec> = <month-keyword> | <month-range> |
1624 <date-time-spec> = <month-spec> <day-spec> <time-spec>
1630 Notez que les sp\'ecifications de semaine et d'ann\'ee suivent les d\'efinitions ISO
1631 standard de semaine et ann\'ee, o\`u la semaine 1 est la semaine qui contient le
1632 premier jeudi de l'ann\'ee, ou alternativement, la semaine qui contient le
1633 quatri\`eme jour de janvier. Les semaines sont num\'erot\'ees w01 \`a w53. w00 est
1634 pour Bacula la semaine qui pr\'ec\`ede la premi\`ere semaine ISO (c'est \`a dire celle
1635 qui contient les quelques premiers jours de l'ann\'ee si aucun n'est un jeudi).
1636 w00 n'est pas d\'efinie dans les sp\'ecifications ISO. Une semaine commence le Lundi
1637 et se termine le Dimanche.
1639 Voici un exemple de ressource Schedule nomm\'ee {\bf WeeklyCycle} qui ex\'ecute
1640 un job de niveau Full chaque Dimanche \`a 1h05 et un job de niveau incr\'emental
1641 du Lundi au Samedi \`a 1h05 :
1646 Name = "WeeklyCycle"
1647 Run = Level=Full sun at 1:05
1648 Run = Level=Incremental mon-sat at 1:05
1653 Voici un exemple de cycle mensuel :
1658 Name = "MonthlyCycle"
1659 Run = Level=Full Pool=Monthly 1st sun at 1:05
1660 Run = Level=Differential 2nd-5th sun at 1:05
1661 Run = Level=Incremental Pool=Daily mon-sat at 1:05
1666 Le premier de chaque mois :
1672 Run = Level=Full on 1 at 1:05
1673 Run = Level=Incremental on 2-31 at 1:05
1678 Toutes les dix minutes :
1684 Run = Level=Full hourly at 0:05
1685 Run = Level=Full hourly at 0:15
1686 Run = Level=Full hourly at 0:25
1687 Run = Level=Full hourly at 0:35
1688 Run = Level=Full hourly at 0:45
1689 Run = Level=Full hourly at 0:55
1694 \subsection*{Notes techniques sur les Schedules}
1695 \index[general]{Schedules!Technical Notes on }
1696 \index[general]{Technical Notes on Schedules }
1697 \addcontentsline{toc}{subsection}{Notes techniques sur les Schedules}
1698 Au niveau interne, Bacula consid\`ere un schedule en tant que bit masque.
1699 Il y a six masques et un champ minute pour chaque schedule. Les masques sont
1700 heure, jour du mois (mday), jour de la semaine (wday), semaine du mois (wom),
1701 et semaine de l'ann\'ee (woy). Le schedule est initialis\'e de fa\
\ 3on \`a avoir les
1702 bits de chacun de ces masques positionn\'es, ce qui signifie qu'au d\'ebut de chaque
1703 heure, le job sera ex\'ecut\'e. Quand vous sp\'ecifiez un mois pour la premi\`ere
1704 fois, le masque est effac\'e et le bit correspondant au mois s\'electionn\'e est
1705 ajout\'e au masque. Si vous sp\'ecifiez un second mois, le bit correspondant
1706 est aussi ajout\'e. Ainsi, lorsque Bacula examine le masque pour voir si
1707 les bits plac\'es correspondent \`a la date courante, votre job ne sera ex\'ecut\'e
1708 que pendant les deux mois que vous avez sp\'ecifi\'es. De m\^eme, si vous sp\'ecifiez
1709 un horaire, le masque Heure est effac\'e et le bit correspondant \`a l'heure que
1710 vous avez sp\'ecifi\'ee est plac\'e, les minutes sont quant \`a elles stock\'ees dans le
1713 Pour chacun de vos schedules, vous pouvez visualiser le masque associ\'e
1714 grâce \`a la commande {\bf show schedules} du programme Console.
1715 Notez que le bit masque est "zero based", et que Dimanche est le premier
1716 jour de la semaine (bit 0)
1718 \subsection*{La ressource FileSet }
1719 \label{FileSetResource}
1720 \index[general]{Resource!FileSet }
1721 \index[general]{FileSet Resource }
1722 \addcontentsline{toc}{subsection}{FileSet Resource}
1724 La ressource FileSet d\'efinit les fichiers \`a inclure dans une sauvegarde. Pour
1725 chaque job de type sauvegarde, il est n\'ecessaire de d\'efinir au moins une
1726 ressource {\bf FileSet}. Un {\bf FileSet} consiste en une liste de fichiers
1727 ou r\'epertoires \`a inclure, une liste de fichiers ou r\'epertoires \`a exclure, et
1728 diverses options de sauvegardes telles que compression, chiffrement et
1729 signatures qui doivent \^etre appliqu\'ees \`a chaque fichier.
1731 Toute modification de la liste des fichiers inclus provoque la cr\'eation par Bacula
1732 d'un nouveau FileSet (d\'efini par le nom et la somme de contr\^ole MD5 du contenu
1733 du paragraphe Include). Chaque fois qu'un nouveau FileSet est cr\'e\'e, Bacula
1734 s'assure que la premi\`ere sauvegarde est une Full.
1739 \index[dir]{FileSet }
1740 D\'ebut de la ressource FileSet. Au moins une ressource {\bf FileSet} doit
1743 \item [Name = \lt{}name\gt{}]
1745 Le nom de la ressource FileSet. Cette directive est requise.
1747 \item [Ignore FileSet Changes = \lt{}yes|no\gt{}]
1748 \index[dir]{Ignore FileSet Changes }
1749 Si cette directive est activ\'ee ({\bf yes}), toute modification des listes
1750 d'inclusion ou d'exclusion du FileSet sera ignor\'ee et Bacula n'\'el\`evera
1751 pas la prochaine sauvegarde en Full. La valeur par d\'efaut est {\bf no}, ainsi,
1752 si vous modifiez une des listes d'inclusion ou d'exclusion du FileSet, Bacula
1753 forcera une sauvegarde Full pour assurer que tout soit bien sauvegard\'e
1754 proprement. Il n'est pas recommand\'e d'activer cette directive. Cette directive
1755 est disponible \`a partir de Bacula 1.35.4.
1757 \item [{Include \ \{ [ Options \{\lt{}file-options\gt{}\} ...]
1758 \lt{}file-list\gt{} \}
1760 \index[dir]{Include \ \{ [ Options \{\lt{}file-options\gt{}\} ...]
1761 \lt{}file-list\gt{} \} }
1763 \item [Options \ \{ \lt{}file-options\gt{} \}
1765 \index[dir]{Options \ \{ \lt{}file-options\gt{} \} }
1767 \item [Exclude \ \{ \lt{}file-list\gt{} \}]
1768 \index[dir]{Exclude \ \{ \lt{}file-list\gt{} \} }
1770 La ressource Include doit contenir une liste de r\'epertoires et/ou fichiers
1771 \`a traiter lors de la sauvegarde. Normalement, tous les fichiers trouv\'es dans
1772 tous les sous-r\'epertoires de tout r\'epertoire de la liste d'inclusion des
1773 fichiers seront sauvegard\'es. La ressource Include peut aussi comporter une
1774 ou plusieurs ressources Options qui sp\'ecifient des param\`etres tels que
1775 la compression \`a appliquer \`a tous les fichiers ou \`a n'importe quel sous ensemble
1776 de fichiers \`a sauvegarder.
1778 Le nombre de ressources {\bf Include} par FileSet n'est pas limit\'e, chacune ayant
1779 sa propre liste de r\'epertoires et/ou fichiers \`a sauvegarder et ses propres
1780 param\`etres d\'efinis par une ou plusieurs ressources Options. La liste de fichiers
1781 {\bf file-list} consiste en un nom de fichier ou r\'epertoire par ligne.
1782 Les noms de r\'epertoire doivent \^etre sp\'ecifi\'es sans slash final.
1784 Vous devez toujours sp\'ecifier des chemins absolus pour tout fichier ou
1785 r\'epertoire que vous placez dans un FileSet. De plus, sur les machines Windows,
1786 vous devez {\bf toujours} pr\'efixer le r\'epertoire ou nom de fichier d'une
1787 sp\'ecification de disque (par exemple : {\bf c:/xxx}) en utilisant le s\'eparateur
1788 de r\'epertoire Unix (slash /).
1790 Le comportement par d\'efaut de Bacula en ce qui concerne le traitement des
1791 r\'epertoires est de descendre r\'ecursivement dans chaque r\'epertoire
1792 et de sauvegarder tous les fichiers et sous-r\'epertoires. Par d\'efaut, Bacula
1793 ne suit pas les syst\`emes de fichiers transverses (en terminologie Unix, les
1794 points de montage). Ceci signifie que si vous sp\'ecifiez la partition racine
1795 ( par exemple /), Bacula sauvegardera seulement la partition racine, et aucun
1796 des syst\`emes de fichiers mont\'es. De fa\
\ 3on analogue, sur les syst\`emes Windows,
1797 vous devez expliciter chacun des disques que vous souhaitez sauvegarder (par
1798 exemple {\bf c:/} et {\bf d:/}...). De plus, au moins pour les syst\`emes
1799 Windows, il sera la plupart du temps n\'ecessaire d'encadrer chaque sp\'ecification
1800 de doubles quotes, particuli\`erement si le nom du r\'epertoire (ou du fichier)
1801 comporte des espaces. La commande {\bf df} des syst\`emes Unix vous fournira
1802 la liste des r\'epertoires qu'il vous faudra sp\'ecifier pour tout sauvegarder.
1803 Voyez ci-dessous pour un exemple.
1805 Soyez attentif \`a ne pas inclure un r\'epertoire deux fois, car il serait
1806 sauvegard\'e deux fois, ce qui gaspillerait l'espace sur votre p\'eriph\'erique
1807 de sauvegarde. Cette erreur est facile \`a commettre. Par exemple :
1814 Options { compression=GZIP }
1819 Sur un syst\`eme Unix o\`u /usr est un sous r\'epertoire (plut\^ot qu'un syst\`eme de
1820 fichiers mont\'e), cette ressource Include sauvegarderait /usr deux fois.
1821 Dans ce cas, sur les versions ant\'erieures \`a 1.32f-5-09Mar04, en raison
1822 d'un bug, vous ne pourriez restaurer les fichiers li\'es physiquement sauvegard\'es
1825 Si vous avez utilis\'e des versions de Bacula ant\'erieures \`a 1.34.3, vous noterez
1826 ces modifications dans la syntaxe des FileSets :
1829 \item il n'y a pas de signe \'egale (=) apr\`es le "include" et avant l'accolade
1831 \item chaque r\'epertoire (ou nom de fichier) \`a sauvegarder est pr\'ec\'ed\'e de
1833 \item les options qui apparaissaient pr\'ec\'edemmant sur la ligne Include doivent
1834 d\'esormais \^etre sp\'ecifi\'ees dans leur propre ressource Options.
1837 La ressource Options est optionnelle, mais lorsqu'elle est sp\'ecifi\'ee, elle doit
1838 contenir une liste de lignes "{\bf mot-clef=valeur}" relatives aux options \`a appliquer
1839 \`a la liste de fichiers/r\'epertoires. Plusieurs ressources Options peuvent \^etre
1840 sp\'ecifi\'ees l'une apr\`es l'autre. Lorsqu'un fichier se trouve dans un dossier
1841 sp\'ecifi\'e, les options sont appliqu\'ees au nom de fichier pour savoir s'il doit
1842 \^etre sauvegard\'e, et comment. Les ressources Options sont appliqu\'ees dans l'ordre
1843 o\`u elles appara\^issent dans le FileSet jusqu'\`a ce qu'il y en ait une qui corresponde.
1844 Une ressource Options qui ne contient pas de directive {\bf wild} (sp\'ecification
1845 de caract\`ere joker, voir ci-dessous) est consid\'er\'ee comme concernant tous les
1846 fichiers. Il est important de bien comprendre ceci, car une fois que Bacula a
1847 d\'etermin\'e que des Options s'appliquent \`a un fichier donn\'e, ce fichier sera
1848 sauvegard\'e sans tenir compte d'aucunes des \'eventuelles autres ressources Options.
1849 Ceci signifie que toute ressource Options avec caract\`eres joker doit appara\^itre
1850 avant une ressource Options sans caract\`eres joker.
1852 Si, pour quelque raison, Bacula applique toutes les ressources Options \`a un
1853 fichier sans qu'aucune ne corresponde (en g\'en\'eral \`a cause de caract\`eres joker
1854 qui ne correspondent pas), par d\'efaut Bacula sauvegardera le fichier. Ceci est
1855 assez logique si vous consid\'erez la situation sans options, o\`u vous souhaitez
1856 que tout soit sauvegard\'e. De plus, dans le cas ou aucune correspondance n'est
1857 trouv\'ee, Bacula utilise les options de la derni\`ere ressource Options. Par cons\'equent,
1858 si vous souhaitez d\'efinir un jeu d'options par d\'efaut, vous devriez les placer
1859 dans la derni\`ere ressource Options.
1861 Les directives disponibles pour les ressources Options sont les suivantes :
1864 \item [compression=GZIP]
1865 \index[dir]{compression }
1866 Tous les fichiers sauvegard\'es sont compress\'es (NDT : compression logicielle,
1867 par opposition \`a la compression mat\'erielle effectu\'ee par le lecteur) au
1868 format GNU ZIP. Chaque fichier est compress\'e individuellement par le File
1869 Daemon. S'il y a un probl\`eme \`a la lecture d'une cartouche au niveau de
1870 l'enregistrement d'un fichier, il affectera tout au plus ce fichier et aucun
1871 des autres fichiers de la cartouche. La plupart du temps, cette option n'est
1872 pas n\'ecessaire si vous avez un lecteur de bandes moderne qui applique sa
1873 propre compression. En fait, si vous activez les deux compressions
1874 simultan\'ement, il se peut que vos fichiers occupent plus d'espace sur le
1875 volume qu'avec une seule.
1877 La compression logicielle est particuli\`erement int\'eressante lorsque vous
1878 sauvegardez sur disque, et peut \^etre d'un grand secours si vous avez un
1879 ordinateur rapide mais un r\'eseau lent.
1881 La sp\'ecification {\bf GZIP} utilise le niveau de compression six par d\'efaut
1882 (i.e. {\bf GZIP} est \'equivalent \`a {\bf GZIP6}). Si vous voulez utiliser un
1883 niveau diff\'erent (de 1 \`a 9), vous pouvez le sp\'ecifier en ajoutant le num\'ero
1884 du niveau voulu \`a la fin du mot {\bf GZIP}, sans espace. Ainsi, {\bf compression=GZIP1}
1885 d\'esigne la compression la moins efficace, mais l'algorithme le plus rapide,
1886 tandis que {\bf compression=GZIP9} est le niveau de compression le plus \'elev\'e,
1887 mais requi\`ere plus de puissance de calcul. Selon la documentation GZIP, les
1888 niveaux de compression sup\'erieurs \`a 6 ne procurent g\'en\'eralement que peu
1889 de compression suppl\'ementaire alors qu'ils sont plut\^ot exigeants en puissance
1892 \item [signature=SHA1]
1893 \index[dir]{signature }
1894 La signature SHA1 est calcul\'ee pour tous les fichiers sauvegard\'es.
1895 L'algorithme SHA1 est
1896 r\'eput\'e plus lent que MD5, mais bien meilleur d'un point de vue cryptographique
1897 (i.e. beaucoup moins de collisions et probabilit\'e de piratage bien inf\'erieure.).
1898 Nous recommandons fortement d'activer l'une ou l'autre des options SHA1 ou MD5
1899 par d\'efaut pour tous les fichiers. Notez que seule l'une de ces deux options
1900 peut \^etre activ\'ee pour tout fichier.
1902 \item [signature=MD5]
1903 \index[dir]{signature }
1904 La signature MD5 est calcul\'ee pour tous les fichiers sauvegard\'es. Activer cette
1905 option r\'esulte en une charge CPU suppl\'ementaire de l'ordre de 5\% pour chaque
1906 fichier sauvegard\'e. D'autre part, la signature MD5 ajoute 16 octets
1907 suppl\'ementaires au catalogue pour chaque fichier sauvegard\'e. Nous recommandons
1908 fortement d'activer l'une ou l'autre des options SHA1 ou MD5 par d\'efaut pour tous
1911 \item [verify=\lt{}options\gt{}]
1912 \index[dir]{verify }
1913 Les "options-lettres" sont utilis\'ees lors de l'ex\'ecution de jobs de type {\bf Verify}
1914 de niveau {\bf Level=Catalog} et de niveau {\bf Level=DiskToCatalog}. Les options
1915 peuvent \^etre n'importe quelle combinaison de ces lettres.
1923 compare bits de permissions
1926 compare le nombre de liens
1929 compare les user ids
1932 compare les group ids
1938 compare les date d'acc\`es (access time)
1941 compare les dates de modification (st\_mtime)
1944 compare les dates de changement (st\_ctime)
1947 signale tout fichier dont la taille a diminu\'e
1950 compare les signatures MD5
1953 compare les signatures SHA1
1956 Le jeu d'options {\bf pins5} (qui compare les bits de permissions, les inodes,
1957 les nombres de liens, la taille des fichiers et les signatures MD5) est tr\`es
1958 utile pour des jobs de type verify de niveaux {\bf Level=Catalog} ou
1959 {\bf Level=DiskToCatalog}.
1961 \item [{\bf onefs=yes|no}]
1963 Si cette option est activ\'ee (valeur {\bf yes}, par d\'efaut), Bacula ne
1964 changera pas de syst\`eme de fichiers. Autrement dit, il ne sauvegardera pas
1965 les syst\`emes de fichiers mont\'es sur des sous-r\'epertoires. Si vous souhaitez
1966 sauvegarder plusieurs syst\`emes de fichiers, vous pouvez les \'enum\'erer
1967 explicitement. Une autre possibilit\'e consiste \`a d\'esactiver l'option onefs
1968 ({\bf onefs=no}) afin que Bacula sauvegarde les syst\`emes de fichiers mont\'es
1969 trouv\'es dans les r\'epertoires list\'es dans votre FileSet. Ainsi, si vous avez
1970 des syst\`emes de fichiers NFS ou Samba mont\'es sur un r\'epertoire list\'e dans le
1971 FileSet, ils seront aussi sauvegard\'es. En principe, il est pr\'ef\'erable
1972 d'activer cette option et de nommer explicitement chaque syst\`eme de fichier
1973 que vous voulez sauvegarder. Ce nommage explicite \'evite le risque de tomber
1974 dans une boucle infinie de syst\`emes de fichiers. Voyez l'exemple ci-dessous
1975 pour plus de d\'etails.
1979 \item [{\bf portable=yes|no}]
1980 \index[dir]{portable }
1981 Si cette option est activ\'ee (la valeur par d\'efaut est {\bf no}), le File Daemon
1982 sauvegarde les fichiers win32 dans un format portable, mais tous les attributs
1983 de fichiers win32 ne seront pas sauvegard\'es ni restaurables. La valeur par
1984 d\'efaut est {\bf no}, ce qui signifie que sur les syst\`emes Win32, les donn\'ees
1985 sont sauvegard\'ees en utilisant les appels Windows API et sur les WinNT/2k/XP,
1986 tous les attributs de s\'ecurit\'e et de propri\'et\'e sont correctement sauvegard\'es
1987 et restaur\'es. Cependant, ce format n'est pas portable aux autres syst\`emes
1988 -- par exemple UNIX, Win95/98/Me. Lors de la sauvegarde de syst\`emes Unix,
1989 cette option est ignor\'ee, et \`a moins que vous n'ayez un besoin sp\'ecifique de
1990 portabilit\'e de vos sauvegardes, nous recommandons d'accepter la valeur par
1991 d\'efaut ({\bf no}) de sorte qu'un maximum d'informations concernant vos
1992 fichiers soit sauvegard\'e.
1994 \item [{\bf recurse=yes|no}]
1995 \index[dir]{recurse }
1996 Si cette option est activ\'ee (la valeur par d\'efaut est {\bf yes}), Bacula
1997 descend r\'ecursivement dans tout sous-r\'epertoire trouv\'e, \`a moins qu'il ne soit
1998 explicitement exclu par une d\'efinition {\bf exclude}. Si vous d\'esactivez cette
1999 option ({\bf recurse=no}), Bacula sauvegardera toutes les entr\'ees de sous-
2000 r\'epertoires, mais n'entrera pas dans ces sous-r\'epertoires, et ainsi ne
2001 sauvegardera pas les fichiers ou \'epertoires contenus dans ces sous-r\'epertoires.
2002 En principe, vous pr\'ef\`ererez la valeur par d\'efaut ({\bf yes}).
2004 \item [{\bf sparse=yes|no}]
2005 \index[dir]{sparse }
2006 Cette option active un code sp\'ecial qui d\'etecte les fichiers clairsem\'es tels
2007 ceux cr\'e\'es par ndbm. Elle est d\'esactiv\'ee par d\'efaut ({\bf sparse=no}), de sorte
2008 qu'aucun contr\^ole n'est fait pour rechercher les fichiers clairsem\'es. Vous
2009 pouvez l'activer sans danger sur des fichiers non clairsem\'es, cependant elle
2010 entra\^ine une l\'eg\`ere charge suppl\'ementaire pour la d\'etection de tampons remplis
2011 de z\'eros (buffers of all zero), et un l\'eger surplus d'espace sur l'archive
2012 de sortie sera utilis\'e pour ssauver les adresses de recherche de chaque
2013 enregistrement non-nul trouv\'e.
2015 {\bf Restrictions:} Bacula lit les fichiers dans des tampons de 32K. Si le tampon
2016 entier est rempli de z\'eros, il sera trait\'e en tant que bloc clairsem\'e, et ne sera pas
2017 \'ecrit sur la cartouche. En revanche, si une partie quelconque du tampon est
2018 non-nulle, le tampon sera int\'egralement copi\'e sur la cartouche, avec \'eventuellement
2019 des secteurs de disque (g\'en\'eralement 4098 octets) enti\`erement nuls. La d\'etection par
2020 Bacula des blocs clairsem\'es a lieu sur des blocs de 32K plut\^ot que sur des blocs de
2021 taille d\'etermin\'ee par le syst\`eme. Si quelqu'un consid\`ere ceci comme un r\'eelle
2022 probl\`eme, merci d'envoyer une demande de modification en exposant les raisons.
2023 Ce code est apparu avec la version 1.27 de Bacula.
2025 Si vous n'\^etes pas familier avec les notions de fichiers clairsem\'es, prenons
2026 pour exemple un fichier o\`u vous \'ecrivez 512 octets \`a l'adresse 0, puis 512 octets
2027 \`a l'adresse 1 million. Le syst\`eme d'exploitation n'allouera que deux blocs, et
2028 rien n'est allou\'e pour l'espace vide. Pourtant, lorsque vous lisez le fichier
2029 clairsem\'e, le syst\`eme retourne tous les z\'eros comme si l'espace \'etait allou\'e,
2030 et si vous sauvegardez un tel fichier, vous utiliserez beaucoup d'espace
2031 sur le volume pour \'ecrire des z\'eros. Pire encore, lorsque vous restaurez ce
2032 fichier \`a son emplacement initial, tous les emplacements pr\'ec\'edemment vides
2033 seront cette fois allou\'es, occupant ainsi beaucoup plus d'espace disque.
2034 En activant l'option {\bf sparse}, Bacula recherchera sp\'ecifiquement l'espace
2035 vide dans les fichiers afin d'\'eviter ces inconv\'enients. Le prix \`a payer est que
2036 Bacula doit d'abord examiner chaque bloc lu avant de l'\'ecrire. Sur un syst\`eme lent,
2037 ceci peut-\^etre important. Si vous suspectez certains de vos fichiers d'\^etre
2038 clairsem\'es, vous devriez mesurer les performances et gains d'espace avec et
2039 sans l'options, ou ne l'activer que pour les fichiers effectivement
2044 \item [{\bf readfifo=yes|no}]
2045 \index[dir]{readfifo }
2046 Cette option, si elle est activ\'ee, indique au client de lire les donn\'ees
2047 (lors d'une sauvegarde) et de les \'ecrire (lors d'une restauration) sur
2048 un FIFO (pipe) explicitement explicitement mentionn\'e dans le FileSet.
2049 Dans ce cas, vous devez avoir un programme actif qui \'ecrit sur ce FIFO
2050 dans le cas d'une sauvegarde, ou qui le lit dans le cas d'une restauration.
2051 (Ceci peut \^etre accompli par la directive {\bf RunBeforeJob}). Si cette
2052 condition n'est pas satisfaite, Bacula demeurera en suspens ind\'efiniment
2053 en lecture/\'ecriture du FIFO. Lorsque cette option est d\'esactiv\'ee (par d\'efaut),
2054 le Client sauvegarde simplement l'entr\'ee du r\'epertoire pour le FIFO.
2056 \item [{\bf mtimeonly=yes|no}]
2057 \index[dir]{mtimeonly }
2058 Cette option, si elle est activ\'ee, indique au client que la s\'election de fichiers
2059 lors d'une sauvegarde incr\'ementale ou diff\'erentielle ne doit se r\'ef\'erer qu'aux valeurs
2060 de st\_mtime du paquet stat(). La valeur par d\'efaut est {\bf no}, ce qui signifie
2061 que la s\'election de fichiers \`a sauvegarder se base sur les deux valeurs st\_mtime et
2062 st\_ctime. En g\'en\'eral, il n'est pas recommand\'e d'activer cette option.
2064 \item [{\bf keepatime=yes|no}]
2065 \index[dir]{keepatime }
2066 Avec cette option activ\'ee, Bacula r\'etablit le champ st\_atime (date d'acc\`es) des
2067 fichiers qu'il sauvegarde \`a leur valeur d'avant la sauvegarde. Cette option
2068 n'est g\'en\'eralement pas recommand\'ee car il existe peu de programmes qui utilisent
2069 st\_atime, et la charge de la sauvegarde se trouve augment\'ee par les appels
2070 syst\`emes n\'ecessaires pour r\'etablir les dates. (Je ne suis pas sur que ceci
2071 fonctionne sous Win32).
2073 \item [{\bf wild=\lt{}string\gt{}}]
2075 Sp\'ecifie une cha\^ine de caract\`eres jokers \`a appliquer aux fichiers. Notez
2076 que si {\bf Exclude} n'est pas activ\'ee, cette cha\^ine s\'electionnera les fichiers
2077 \`a sauvegarder. Si au contraire {\bf Exclude=yes} est sp\'ecifi\'e, la cha\^ine
2078 s\'electionnera les fichiers \`a exclure de la sauvegarde. Plusieurs directives
2079 wild-card peuvent \^etre sp\'ecifi\'ees et sont appliqu\'ees s\'equentiellement
2080 jusqu'\`a ce que l'une d'elles corresponde.
2082 \item [{\bf regex=\lt{}string\gt{}}]
2084 Sp\'ecifie une expression r\'eguli\`ere \'etendue POSIX \`a appliquer aux fichiers.
2085 Cette directive est disponible \`a partir de Bacula 1.35. Si {\bf Exclude} n'est
2086 pas activ\'ee, cette expression r\'eguli\`ere s\'electionnera les fichiers \`a
2087 sauvegarder. Si au contraire {\bf Exclude=yes} est sp\'ecifi\'e, elle s\'electionnera
2088 les fichiers \`a exclure de la sauvegarde. Plusieurs directives regex peuvent \^etre
2089 sp\'ecifi\'ees et sont appliqu\'ees s\'equentiellement jusqu'\`a ce que l'une d'elles corresponde.
2091 \item [{\bf exclude=yes|no}]
2092 \index[dir]{exclude }
2093 Lorsque cette option est activ\'ee, tout fichier qui correspond aux options est exclu de
2094 la sauvegarde. La valeur par d\'efaut est {\bf no}.
2098 \item [{\bf aclsupport=yes|no}]
2099 \index[dir]{aclsupport }
2100 Si cette option est activ\'ee, et si vous avez install\'e la librarie POSIX {\bf libacl}
2101 sur votre syst\`eme, Bacula sauvegardera Listes de Contr\^oles d'Acc\`es (ACL) UNIX des
2102 fichiers et r\'epertoires telles que d\'efinies dans IEEE Std 1003.1e version 17 et
2103 "POSIX.1e" (abandonn\'e). Cette fonction n'est disponible que sur UNIX et d\'epend de
2104 la librairie ACL. Bacula est automatiquement compil\'e avec le support ACL si la
2105 librairie {\bf libacl} est install\'ee sur votre syst\`eme (ceci est report\'e dans
2106 le fichier config.out). Lors de la restauration, Bacula tentera de restaurer les
2107 ACLs. S'il n'y a pas de support ACL sur le syst\`eme cible, Bacula ne restaurera que les
2108 fichiers et r\'epertoires sans les informations ACL. Veuillez noter que si vous
2109 sauvegardez un syst\`eme de fichiers EXT3 ou XFS avec le support des ACLs, et que vous
2110 restaurez vers un syst\`eme de fichiers sans ACLs (tel , peut-\^etre reiserfs), les
2111 ACLs seront ignor\'ees.
2115 {\bf \lt{}file-list\gt{}} est une liste de r\'epertoires et/ou noms de fichiers sp\'ecifi\'es
2116 avec la directive {\bf File =}. Pour inclure des noms contenant des espaces,
2117 entourez-les de guillemets (doubles quotes).
2119 Il existe quelques notations particuli\`eres pour sp\'ecifier des fichiers et r\'epertoires
2120 dans une liste de fichiers {\bf file-list}. Les voici :
2123 \item Tout nom pr\'ec\'ed\'e d'un signe "at" (@) est compris comme le nom d'un fichier,
2124 lequel contient une liste de fichiers, chacun pr\'ec\'ed\'e d'une directive "File=".
2125 Ce fichier est lu lorsque le fichier de configuration est parcouru au d\'emarrage
2126 du Director. Notez bien que le fichier est lu sur sur la machine qui h\'eberge le
2127 Director (autrement dit, le serveur de sauvegardes) et non sur le Client.
2128 En fait, le "@NomDeFichier" peut appara\^itre n'importe o\`u dans le fichier de
2129 configuration o\`u un objet pourrait \^etre lu, le contenu du fichier d\'esign\'e sera
2130 logiquement ins\'er\'e \`a l'emplacement du "@NomDeFichier". Ce qui doit figurer dans le
2131 fichier d\'epend de l'emplacement du "@NomDeFichier" au sein du fichier de
2133 \item Tout nom pr\'ec\'ed\'e d'une barre verticale (|) est compris comme le nom d'un
2134 programme. Ce programme sera ex\'ecut\'e sur la machine qui h\'eberge le Director au
2135 moment o\`u le job d\'emarre (et non lorsque le Director lit son fichier de
2136 configuration), et toute sortie de ce programme sera per\
\ 3u en tant que liste
2137 de fichiers ou r\'epertoires, un par ligne, \`a inclure. Ceci vous permet d'avoir un
2138 job qui, par exemple, inclue toutes les partitions locales m\^eme si vous changez le
2139 partitionnement en ajoutant des disques. En g\'en\'eral, il vous faudra pr\'ec\'eder
2140 votre commande d'un "{\bf sh -c}" afin qu'elle soit invoqu\'ee par un shell.
2141 Ce ne sera pas le cas si vous invoquez un script comme dans le second exemple
2142 ci-dessous. Vous devez aussi prendre soin d'\'echapper (pr\'ec\'eder d'un \textbackslash{})
2143 les caract\`eres jokers, les caract\`eres du shell, ainsi que toute espace dans votre
2144 commande. Si vous utilisez des simples quotes (') dans des doubles quotes (``),
2145 Bacula traitera tout ce qui est entre simples quotes comme un seul champ, et il ne
2146 dera donc pas n\'ecessaire d'\'echapper les espaces. En g\'en\'eral, parvenir \`a avoir
2147 toutes les quotes et \'echappements corrects est un calvaire, comme vous pouvez
2148 le constater dans le prochain exemple. Par cons\'equent, il est souvent plus facile
2149 de tout mettre dans un fichier et d'utiliser simplement le nom de fichier dans
2150 Bacula. Dans ce cas le "{\bf sh -c}" ne sera plus n\'ecessaire, pourvu que la
2151 premi\`ere ligne du fichier soit {\bf \#!/bin/sh}.
2160 Options { signature = SHA1 }
2161 File = "|sh -c 'df -l | grep \"^/dev/hd[ab]\" | grep -v \".*/tmp\" \
2162 | awk \"{print \\$6}\"'"
2167 produira une liste de toutes les partitions locales sur un syst\`eme RedHat Linux.
2168 Notez que la ligne si dessus a \'et\'e coup\'ee, mais devrait normalement \^etre \'ecrite
2169 sur une seule ligne. Quoter est un r\'eel probl\`eme car vous devez d'une part le faire
2170 pour Bacula - ce qui consiste \`a pr\'ec\'eder tout \textbackslash{} et tout '' avec un
2171 \textbackslash{} - et d'autre part pour les commandes shell. En d\'efinitive, il est
2172 probablement plus ais\'e d'ex\'ecuter un petit fichier tel que :
2180 File = "|my_partitions"
2185 o\`u le fichier my\_partitions contient :
2190 df -l | grep "^/dev/hd[ab]" | grep -v ".*/tmp" \
2195 Si la barre verticale (|) devant "my\_partitions" est pr\'ec\'ed\'ee d'une barre oblique
2196 (\textbackslash{}), le programme sera ex\'ecut\'e sur la machine cliente plut\^ot que sur
2197 la machine h\'ebergeant le Director -- (ceci est impl\'ement\'e, mais n'est pas compl\`etement
2198 test\'e, et a \'et\'e rapport\'e fonctionner sous Windows). Veuillez noter que si le nom de
2199 fichier est donn\'e entre quotes, vous devrez utiliser deux barres obliques. Voci un
2200 exemple, fourni par John Donagher, qui sauvegarde toutes les partitions UFS locales
2201 sur un syst\`eme distant :
2206 Name = "All local partitions"
2208 Options { signature=SHA1; onefs=yes; }
2209 File = "\\|bash -c \"df -klF ufs | tail +2 | awk '{print \$6}'\""
2215 Notez que deux barres obliques \textbackslash{} sont requises apr\`es les doubles quotes
2216 (l'une pr\'eserve l'autre). Si vous utilisez Linux, changez simplement {\bf ufs} en {\bf ext3}
2217 (ou votre syst\`eme de fichiers pr\'ef\'er\'e) et l'affaire sera dans le sac.
2219 \item Tout \'el\'ement de la liste de fichiers file-list pr\'ec\'ed\'e par un signe "inf\'erieur" (\lt{})
2220 est interpr\'et\'e comme un fichier qui sera lu sur la machine qui h\'eberge le Director
2221 au moment o\`u le job d\'emarre. Son contenu est suppos\'e \^etre une liste de r\'epertoires ou
2222 fichiers, un par ligne, \`a inclure dans la sauvegarde. Les noms ne doivent pas \^etre quot\'es, m\^eme
2223 s'ils comportent des espaces. Cette fonction vous permet de modifier le fichier externe,
2224 et ainsi ce qui est sauvegard\'e sans avoir \`a red\'emarrer Bacula comme il le faudrait avec
2225 le modificateur @ d\'ecrit plus haut.
2227 Si vous pr\'ec\'edez le signe "inf\'erieur" (\lt{}) d'une barre oblique \textbackslash{}\lt{}, le
2228 fichier mentionn\'e sera lu sur la machine cliente au lieu de celle h\'ebergeant le Director.
2229 Veullez noter que si le nom de fichier est donn\'e entre quotes, il vous faudra utiliser deux
2232 \item Si vous sp\'ecifiez explicitement un block device (NDT ?) tel que {\bf /dev/hda1}, alors
2233 Bacula consid\`erera ceci comme une partition raw \`a sauvegarder. Dans ce cas, vous \^etes
2234 fortement invit\'e \`a utiliser l'option {\bf sparse=yes}, faute de quoi vous sauvegarderez
2235 la partition enti\`ere plut\^ot que seulement les donn\'ees r\'eellement contenues dans la
2236 partition. Par exemple :
2241 Options { signature=MD5; sparse=yes }
2247 va sauvegarder les donn\'ees de la partition /dev/hd6.
2249 will backup the data in device /dev/hd6.
2251 Ludovic Strappazon a fait remarquer que cette fonction pouvait servir \`a sauvegarder
2252 un disque Microsoft Windows. Il suffit de booter avec un Linux Rescue Disk, puis de
2253 charger un client Bacula statiquement li\'e comme d\'ecrit dans le chapitre
2254 \ilink{ Disaster Recovery avec Bacula}{_ChapterStart38} de ce manuel. Sauvegardez alors
2255 la partition compl\`ete. En cas de d\'esastre, vous pouvez alors restaurer la partition
2256 d\'esir\'ee en bootant une fois encore sur le Linux Rescue Disk et en utilisant le
2257 client Bacula statiquement li\'e.
2260 \item Si vous sp\'ecifiez explicitement un p\'eriph\'erique FIFO nomm\'e (cr\'e\'e avec mkfifo),
2261 ets si vous ajoutez l'option {\bf readfifo=yes}, Bacula lira le FIFO et sauvegardera ses
2262 donn\'ees sur le volume. Par exemple :
2271 File = /home/abc/fifo
2276 si {\bf /home/abc/fifo} est un FIFO, Bacula va l'ouvrir, le lire, et stocker
2277 toutes les donn\'ees ainsi obtenues sur le volume. Notez qu'il faut que vous ayez
2278 un processus qui \'ecrit sur le FIFO, faute de quoi Bacula restera en suspens, et
2279 abandonnera au bout d'une minute pour passer au fichier suivant. Les donn\'ees
2280 lues peuvent \^etre de nature quelconque puisque Bacula les traite comme un flux.
2282 Cette fonction est un excellent moyen de faire une sauvegarde "\`a chaud" d'une
2283 tr\`es grosse base de donn\'ees. Vous pouvez utiliser la directive {\bf RunBeforeJob}
2284 pour cr\'eer le FIFO et d\'emarrer un programme qui lit dynamiquement votre base de
2285 donn\'ees et l'\'ecrit sur le FIFO. Bacula l'\'ecrira alors sur le volume.
2287 Lors de l'op\'eration de restauration, l'inverse se produit : apr\`es que Bacula ait cr\'e\'e
2288 le FIFO, s'il y avait des donn\'ees stock\'ees par son biais (inutile de les lister
2289 explicitement ni d'ajouter aucune option), elles seront renvoy\'ees vers le FIFO.
2290 Par cons\'equent, s'il existe un tel FIFO \`a restaurer, vous devez vous assurer
2291 qu'il y a un programme lecteur ou Bacula se bloquera et passera au fichier suivant
2298 Voici un exemple de d\'efinition de ressource FileSet valide. Notez que le premier
2299 Include ins\`ere le contenu du fichier {\bf /etc/backup.list} lors du d\'emarrage
2300 de Bacula (i.e. le @).
2312 File = @/etc/backup.list
2320 File = /usr/lib/another_file
2326 Notez que dans l'exemple ci-dessus, tous les fichiers mentionn\'es dans
2327 /etc/backup.list seront compress\'e avec GZIP, qu'une signature SHA1 sera
2328 calcul\'ee sur le contenu des fichiers (leurs donn\'ees), et que la prise en
2329 charge particuli\`ere des fichiers clairsem\'es (sparse) s'appliquera.
2331 Les deux r\'epertoires /root/myfile et /usr/lib/another\_file seront aussi
2332 sauvegard\'es sans aucune option, mais tous les fichiers \`a extension {\bf .o}
2333 de ces r\'epertoires seront exlus de la sauvegarde.
2335 Supposons que vous vouliez sauvegarder tout sauf {\bf /tmp} sur votre syst\`eme.
2336 La commande {\bf df} vous fournit le r\'esultat suivant :
2341 Filesystem 1k-blocks Used Available Use% Mounted on
2342 /dev/hda5 5044156 439232 4348692 10% /
2343 /dev/hda1 62193 4935 54047 9% /boot
2344 /dev/hda9 20161172 5524660 13612372 29% /home
2345 /dev/hda2 62217 6843 52161 12% /rescue
2346 /dev/hda8 5044156 42548 4745376 1% /tmp
2347 /dev/hda6 5044156 2613132 2174792 55% /usr
2348 none 127708 0 127708 0% /dev/shm
2349 //minimatou/c$ 14099200 9895424 4203776 71% /mnt/mmatou
2350 lmatou:/ 1554264 215884 1258056 15% /mnt/matou
2351 lmatou:/home 2478140 1589952 760072 68% /mnt/matou/home
2352 lmatou:/usr 1981000 1199960 678628 64% /mnt/matou/usr
2353 lpmatou:/ 995116 484112 459596 52% /mnt/pmatou
2354 lpmatou:/home 19222656 2787880 15458228 16% /mnt/pmatou/home
2355 lpmatou:/usr 2478140 2038764 311260 87% /mnt/pmatou/usr
2356 deuter:/ 4806936 97684 4465064 3% /mnt/deuter
2357 deuter:/home 4806904 280100 4282620 7% /mnt/deuter/home
2358 deuter:/files 44133352 27652876 14238608 67% /mnt/deuter/files
2362 Si vous vous contentez de sp\'ecifier {\bf /} dans votre liste d'inclusions,
2363 Bacula ne sauvegardera que le syst\`eme de fichiers {\bf /dev/hda5}. Pour
2364 sauvegarder tous vos syst\`emes de fichiers sans inclure les syst\`emes de fichiers
2365 mont\'es Samba ou NFS et en excluant /tmp, /proc, .journal, et .autofsck, que
2366 vous ne voulez ni sauvegarder ni restaurer, vous pouvez utiliser ce qui suit :
2371 Name = Include_example
2390 /tmp \'etant sur son propre syst\`eme de fichiers et n'\'etant pas explicitement nomm\'e
2391 dans la liste d'inclusion, il n'est pas n\'ecessaire de le sp\'ecifier dans la liste
2392 d'exclusion. Cependant, il peut \^etre pr\'ef\'erable de le faire malgr\'e tout par
2393 souci de clart\'e et au cas o\`u il ne serait plus sur sa propre partition apr\`es un
2394 remplacement de disques.
2396 Ayez conscience qu'il peut \^etre {\bf tr\`es} dangereux de permettre \`a Bacula de traverser ou
2397 changer de syst\`eme de fichiers au gr\'e des ppoints de montage. Par exemple, avec ce qui suit :
2402 Name = "Bad example"
2404 Options { onefs=no }
2411 vous sauvegardez une partition NFS mont\'ee ({\bf /mnt/matou}), et puisque
2412 {\bf onefs} est d\'esactiv\'ee, Bacula traverse les syst\`emes de fichiers.
2413 Si jamais {\bf /mnt/matou} contient lui m\^eme un point de montage o\`u le syst\`eme
2414 de fichiers de la machine sauvegard\'ee est mont\'e, ce qui est souvent le cas,
2415 vous vous retrouvez pris dans un boucle r\'ecursive, et la sauvegarde ne se
2418 Le FileSet suivant sauvegarde une partition raw :
2423 Name = "RawPartition"
2425 Options { sparse=yes }
2432 Lorsque vous sauvegardez et restaurez une partition raw, vous devriez vous
2433 assurer qu'aucun autre processus, y compris le syst\`eme, n'\'ecrit sur cette
2434 partition. En guise de pr\'ecaution, nous recommandons ardemment de ne sauvegarder
2435 en mode raw que des partitions non mont\'ees, ou mont\'ees en lecture seule. Ceci peut
2436 \^etre fait si n\'ecessaire avec la directive {\bf RunBeforeJob}.
2440 \subsection*{Consid\'erations sur les FileSets Windows}
2441 \index[general]{FileSets!Windows Considerations for }
2442 \index[general]{Windows Considerations for FileSets }
2443 \addcontentsline{toc}{subsection}{Windows Considerations for FileSets}
2445 Si vous saisissez des noms de fichiers Windows, les chemins des r\'epertoires devraient
2446 \^etre pr\'ec\'ed\'es de double-points (comme dans "c:"). Cependant, les s\'eparateurs de
2447 champs doivent \^etre sp\'ecifi\'es selon la convention Unix (c'est \`a dire, la barre oblique
2448 avant : "/"). Si vous souhaitez inclure une apostrophe dans un nom de fichier, pr\'ec\'edez-la
2449 d'une barre oblique arri\`ere (\textbackslash{}\textbackslash{}). Par exemple, vous pourriez
2450 utiliser ce qui suit pour sauvegarder le r\'epertoire "My Documents" d'une machine Windows :
2455 Name = "Windows Set"
2462 File = "c:/My Documents"
2468 Pour que les listes d'exclusion fonctionnent correctement sous Windows, vous devez
2469 observer les r\`egles suivante :
2472 \item les noms de fichiers sont sensibles \`a la casse, aussi vous devez utilise la
2474 \item vous ne devez pas sp\'ecifier de barre oblique finale pour exclure un r\'epertoire ;
2475 \item si vos noms de fichiers comportent des espaces, vous devez les encadrer de
2476 quillemets. Les barres obliques arri\`eres (\textbackslash{}\textbackslash{}) ne
2478 \item si vous utilisez l'ancienne syntaxe des listes d'exclusion (mentionn\'ee ci-dessous),
2479 vous ne devriez pas sp\'ecifier la lettre r\'ef\'eren\
\ 3ant le disque dans une liste d'exclusion.
2480 La nouvelle syntaxe d\'ecrite ci-dessus devrait fonctionner correctement en incluant la lettre
2484 Merci \`a Thiago Lima pour nous avoir r\'esum\'e les points ci-dessus. Si vous rencontrez
2485 des difficult\'es pour faire fonctionner vos listes d'inclusion ou d'exclusion,
2486 songez \`a utiliser la commande {\bf estimate job=xxx listing} document\'ee
2487 dans le chapitre \ilink{Console chapter}{estimate} de ce manuel.
2489 Sur les syst\`emes Win32, si vous d\'eplacez un r\'epertoire ou si vous renommez
2490 un fichier de la liste \`a sauvegarder, et si une Full a d\'ej\`a eu lieu, Bacula
2491 ne saura reconna\^itre qu'il existe de nouveaux fichiers \`a sauvegarder lors d'une
2492 incr\'ementale ou d'une diff\'erentielle (faites-en le reproche \`a Microsoft, pas \`a moi !).
2493 Pour pallier \`a ce probl\`eme, veuillez copier tout r\'epertoire ou fichier de la
2494 zone sauvegard\'ee. Si vous ne disposez pas de suffisamment d'espace disque,
2495 d\'eplacez-les, mais lancez alors une sauvegarde Full.
2497 \subsubsection*{Exclusion de fichiers et r\'epertoires}
2498 \index[general]{Directories!Excluding Files and }
2499 \index[general]{Excluding Files and Directories }
2500 \addcontentsline{toc}{subsubsection}{Exclusion de fichiers et r\'epertoires}
2502 Vous pouvez aussi inclure des noms de fichiers ou chemins absolus, en plus
2503 de l'utilisation de caract\`eres jokers et de la directive {\bf Exclude=yes} dans
2504 les ressources Options comme expos\'e ci-dessus, en ajoutant simplement
2505 les fichiers \`a exclure dans une ressource Exclude du FileSet. Par exemple :
2510 Name = Exclusion_example
2531 \subsection*{Un exemple de FileSet Windows}
2532 \index[general]{FileSet!Windows Example }
2533 \index[general]{Un exemple de FileSet Windows}
2534 \addcontentsline{toc}{subsection}{Un exemple de FileSet Windows}
2536 Cet exemple est une contribution de Phil Stracchino :
2540 This is my Windows 2000 fileset:
2542 Name = "Windows 2000 Full Set"
2550 # Most of these files are excluded not because we don't want
2551 # them, but because Win2K won't allow them to be backed up
2552 # except via proprietary Win32 API calls.
2553 File = "/Documents and Settings/*/Application Data/*/Profiles/
2555 File = "/Documents and Settings/*/Local Settings/Application Data/
2556 Microsoft/Windows/[Uu][Ss][Rr][Cc][Ll][Aa][Ss][Ss].*"
2557 File = "/Documents and Settings/*/[Nn][Tt][Uu][Ss][Ee][Rr].*"
2558 File = "/Documents and Settings/*/Cookies/*"
2559 File = "/Documents and Settings/*/Local Settings/History/*"
2560 File = "/Documents and Settings/*/Local Settings/
2561 Temporary Internet Files/*"
2562 File = "/Documents and Settings/*/Local Settings/Temp/*"
2564 File = "/WINNT/security/logs/scepol.log"
2565 File = "/WINNT/system32/config/*"
2566 File = "/WINNT/msdownld.tmp/*"
2567 File = "/WINNT/Internet Logs/*"
2568 File = "/WINNT/$Nt*Uninstall*"
2569 File = "/WINNT/Temp/*"
2572 File = "/pagefile.sys"
2578 Remarque : les trois lignes coup\'ees de cette liste d'exclusion ne l'ont \'et\'e
2579 que pour des motifs de mise en page, elles doivent en r\'ealit\'e \^etre \'ecrites
2580 sur une seule ligne.
2582 \subsection*{L'ancienne ressource FileSet}
2583 \index[general]{Resource!Old FileSet }
2584 \index[general]{L'ancienne ressource FileSet}
2585 \addcontentsline{toc}{subsection}{L'ancienne ressource FileSet}
2587 L'ancienne Ressource FileSet des versions ant\'erieures \`a 1.34.3 est obsol\`ete,
2588 mais fonctionne encore. Nous vous encourageons \`a utiliser la nouvelle forme,
2589 car le code correspondant sera supprim\'e \`a partir de la version 1.37.
2591 \subsection*{Tester vos FileSets}
2592 \index[general]{FileSet!Testing Your }
2593 \index[general]{Tester vos FileSets }
2594 \addcontentsline{toc}{subsection}{Tester vos FileSets}
2596 Si vous voulez vous faire une id\'ee pr\'ecise de ce qui sera effectivement
2597 sauvegard\'e par un FileSet, ou si vous voulez vous assurer de l'efficacit\'e
2598 d'une liste d'exclusion, vous pouvez utiliser la commande {\bf estimate}
2599 du programme Console. Voyez \ilink{estimate command}{estimate} dans le
2600 chapitre Console de ce manuel.
2602 \subsection*{Considerations sur le nommage Windows NTFS}
2603 \index[general]{Considerations sur le nommage Windows NTFS}
2604 \index[general]{Considerations!Windows NTFS Naming }
2605 \addcontentsline{toc}{subsection}{Considerations sur le nommage Windows NTFS}
2607 Les noms de fichiers NTFS contenant des caract\`eres Unicode (i.e. \gt{} 0xFF) ne
2608 peuvent, pour le moment, \^etre nomm\'e eplicitement. Vous devez inclure de tels
2609 fichiers en d\'esignant un r\'epertoire de niveau sup\'erieur ou une lettre de disque
2610 ne contenant pas de caract\`ere Unicode.
2612 \subsection*{La ressource Client}
2613 \label{ClientResource2}
2614 \index[general]{Resource!Client }
2615 \index[general]{La ressource Client}
2616 \addcontentsline{toc}{subsection}{La ressource Client}
2618 La ressource Client d\'efinit les attributs des clients servis (sauvegard\'es)
2619 par ce Director. Il faut une ressource Client par machine sauvegard\'ee.
2623 \item [Client (ou FileDaemon)]
2624 \index[dir]{Client (ou FileDaemon)}
2625 \index[dir]{Directive!Client (or FileDaemon)}
2626 D\'ebut des directives Client.
2628 \item [Name = \lt{}name\gt{}]
2630 \index[dir]{Directive!Name}
2631 Le nom du client qui sera utilis\'e dans la directive Job de la ressource ou
2632 dans une commande run de la Console. Cette directive est requise.
2634 \item [Address = \lt{}address\gt{}]
2635 \index[dir]{Address}
2636 \index[dir]{Directive!Address}
2637 L'adresse d'un File Daemon Bacula est un nom d'h\^ote, un nom pleinement qualifi\'e
2638 ou une adresse r\'eseau au format quatre octets point\'es. Cette directive est requise.
2640 \item [FD Port = \lt{}port-number\gt{}]
2641 \index[dir]{FD Port}
2642 \index[dir]{Directive!FD Port}
2643 O\`u le port est le num\'ero de port auquel le le File Daemon peut \^etre contact\'e.
2644 La valeur par d\'efaut est 9102.
2647 \item [Catalog = \lt{}Catalog-resource-name\gt{}]
2648 \index[dir]{Catalog}
2649 \index[dir]{Directive!Catalog}
2650 Cette directive sp\'ecifie le nom de la ressource catalog \`a utiliser pour ce
2651 client. Cette directive est requise.
2653 \item [Password = \lt{}password\gt{}]
2654 \index[dir]{Password}
2655 \index[dir]{Directive!Password}
2656 Il s'agit ici du mot de passe \`a utiliser lors de la connection avec le
2657 File Daemon, aussi le fichier de configuration de la machine \`a sauvegarder
2658 doit d\'efinir le m\^eme mot de passe pour \^etre connect\'e par ce Director.
2659 Cette directive est requise. Si vous disposez de {\bf /dev/random} ou de {\bf bc}
2660 sur votre machine, Bacula g\'en\`ere des mots de passe al\'eatoires lors du processus
2661 de configuration. Dans le cas contraire, le mot de passe est laiss\'e blanc.
2663 \label{FileRetention}
2665 \item [File Retention = \lt{}time-period-specification\gt{} ]
2666 \index[dir]{File Retention }
2667 \index[dir]{Directive!Password}
2668 La directive File Retention d\'efinit la p\'eriode pendant laquelle Bacula conservera
2669 les enregistrements File dans le catalogue. Lors de l'expiration de cette p\'eriode,
2670 si la directive {\bf AutoPrune} est active ({\bf yes}), Bacula \'elague le catalogue
2671 des enregistrements File dont l'âge est sup\'erieur \`a la p\'eriode de r\'etention.
2672 Notez que ceci n'affecte que les enregistrements du catalogue, et non vos
2673 sauvegardes archiv\'ees.
2675 Les enregistrements File peuvent en fait \^etre conserv\'es pour une p\'eriode inf\'erieure
2676 \`a celle affect\'ee \`a cette directive dans les cas o\`u vous avez sp\'ecifi\'e des p\'eriodes
2677 plus courtes pour les directives {\bf Job Retention} ou {\bf Volume Retention}.
2678 La plus courte des trois prend le pas sur les autres. Les dur\'ees peuvent \^etre exprim\'ees
2679 en secondes, minutes, heures, jours, semaines, mois, trimestres ou ann\'ees. Consultez
2680 le chapitre \ilink{Adapter les fichiers de configuration}{Time} de ce manuel pour plus de d\'etails sur les
2681 sp\'ecifications de dur\'ees.
2683 La valeur par d\'efaut est de 60 jours.
2684 \label{JobRetention}
2686 \item [Job Retention = \lt{}time-period-specification\gt{} ]
2687 \index[dir]{Job Retention}
2688 \index[dir]{Directive!Job Retention}
2689 La directive Job Retention d\'efinit la p\'eriode pendant laquelle Bacula conservera
2690 les enregistrements Job dans le catalogue. Lors de l'expiration de cette p\'eriode,
2691 si la directive {\bf AutoPrune} est active ({\bf yes}), Bacula \'elague le catalogue
2692 des enregistrements File dont l'âge est sup\'erieur \`a la p\'eriode de r\'etention.
2693 Notez que ceci n'affecte que les enregistrements du catalogue, et non vos
2694 sauvegardes archiv\'ees.
2696 Si un enregistrement de Job est s\'electionn\'e pour \'elagage, tous les enregistrements File
2697 et JobMedia associ\'es seront aussi \'elagu\'es du catalogue, sans qu'il ne soit tenu compte
2698 de la p\'eriode File Retention d\'efinie. Par cons\'equent, vous utiliserez, en principe,
2699 une p\'eriode File Retention inf\'erieure \`a la p\'eriode Job retention. La p\'eriode
2700 Job retention peut en fait s'av\'erer inf\'erieure \`a la valeur que vous avez sp\'ecifi\'ee
2701 si vous avez affect\'e une valeur inf\'erieure \`a la directive {\bf Volume Retention} dans
2702 la ressource Pool. Les p\'eriodes Job retention et Volume retention sont appliqu\'ees
2703 ind\'ependamment, la plus petite prend le pas sur l'autre.
2705 Les dur\'ees peuvent \^etre exprim\'ees
2706 en secondes, minutes, heures, jours, semaines, mois, trimestres ou ann\'ees. Consultez
2707 le chapitre \ilink{Adapter les fichiers de configuration}{Time} de ce manuel pour plus de d\'etails sur les
2708 sp\'ecifications de dur\'ees.
2710 La valeur par d\'efaut est 180 jours.
2713 \item [AutoPrune = \lt{}yes|no\gt{}]
2714 \index[dir]{AutoPrune}
2715 \index[dir]{Directive!AutoPrune}
2716 Si AutoPrune est r\'egl\'e \`a {\bf yes} (valeur par d\'efaut), Bacula (dans les versions au del\`a
2717 de 1.20) applique automatiquement les p\'eriodes File retention et Job retention pour le
2718 client \`a la fin du job. Si vous sp\'ecifiez {\bf AutoPrune = no}, l'\'elagage ne se fera pas
2719 et votre catalogue grossira \`a chaque job. L'\'elagage n'affecte que les donn\'ees du catalogue,
2720 et non les donn\'ees stock\'ees sur les volumes.
2722 \item [Maximum Concurrent Jobs = \lt{}number\gt{}]
2723 \index[dir]{Maximum Concurrent Jobs}
2724 \index[dir]{Directive!Maximum Concurrent Jobs}
2725 \lt{}number\gt{} d\'esigne le nombre maximum de jobs qui peuvent \^etre lanc\'es simultan\'ement
2726 sur le client concern\'e. Notez que cette directive ne limite que les jobs pour les clients
2727 qui ont le m\^eme nom que la ressource dans laquelle elle appara\^it. Toutes les autres restrictions
2728 du nombre maximum de jobs simultan\'es telles que celles sp\'ecifi\'ees dans les ressources
2729 Director, Job, ou Storage s'appliquent aussi en plus de toute limite fix\'ee ici. La valeur
2730 par d\'efaut est 1, mais vous pouvez sp\'ecifier une valeur plus grande. Nous recommandons
2731 fortement de lire les MISES EN GARDE de la section \ilink{ Maximum Concurrent
2732 Jobs}{DirMaxConJobs} du chapitre Configurer le Director.
2735 \item [Priority = \lt{}number\gt{}]
2736 \index[dir]{Priority}
2737 \index[dir]{Directive!Priority}
2738 \lt{}number\gt{} sp\'ecifie la priorit\'e de ce client par rapport aux autres clients
2739 que le Director sauvegarde simultan\'ement. La priorit\'e admet une valeur entre 1 et 1000.
2740 Les clients sont ordonn\'es de sorte que ceux dont la valeur de priorit\'e sont les plus petites
2741 sont trait\'es les premiers (Ceci n'est pas encore impl\'ement\'e).
2744 Voici un exemple d'une d\'efinition de ressource Client valide :
2752 Password = very_good
2757 \subsection*{La ressource Storage}
2758 \label{StorageResource2}
2759 \index[general]{Resource!Storage }
2760 \index[general]{Storage Resource }
2761 \addcontentsline{toc}{subsection}{Storage Resource}
2763 La ressource Storage d\'efinit les Storage Daemons disponibles pour le Director.
2768 \index[dir]{Storage}
2769 \index[dir]{Directive!Storage}
2770 D\'ebut des ressources Storage. Il faut en sp\'ecifier au moins une.
2772 \item [Name = \lt{}name\gt{}]
2774 \index[dir]{Directive!Name}
2775 Le nom de la ressource Storage. Ce nom appara\^it au niveau de la directive
2776 Storage sp\'ecifi\'ee dans la ressource Job et est requise.
2778 \item [Address = \lt{}address\gt{}]
2779 \index[dir]{Address}
2780 \index[dir]{Directive!Address}
2781 O\`u l'adresse est un nom d'h\^ote, une {\bf adresse pleinement qualifi\'ee}, ou une
2782 {\bf adresse IP}. Notez bien que l'adresse sp\'ecifi\'ee ici sera transmise au
2783 File Daemon qui l'utilisera alors pour contacter le Storage Daemon. Aussi, ce
2784 n'est {\bf pas} une bonne id\'ee d'utiliser {\bf localhost} en tant que nom,
2785 il vaut mieux utiliser un nom de machine pleinement qualifi\'e, ou une adresse IP.
2786 Cette directive est requise.
2788 \item [SD Port = \lt{}port\gt{}]
2789 \index[dir]{SD Port}
2790 \index[dir]{Directive!SD Port}
2791 O\`u "port" est le port \`a utiliser pour contacter le Storage Daemon pour les
2792 informations et pour ex\'ecuter les jobs. Ce m\^eme num\'ero de port doit
2793 appara\^itre dans la ressource Storage du fichier de configuration du
2794 Storage Daemon. Le port par d\'efaut est 9103.
2796 \item [Password = \lt{}password\gt{}]
2797 \index[dir]{Password}
2798 \index[dir]{Directive!Password}
2799 Il s'agit du mot de passe \`a utiliser lors de l'\'etablissement de la connection
2800 avec les services Storage. Ce m\^eme mot de passe doit aussi appara\^itre dans la
2801 ressource Director du fichier de configuration du Storage Daemon. Cette
2802 directive est requise. Si vous avez soit {\bf /dev/random}, soit {\bf bc}
2803 sur votre machine, Bacula g\'en\`erera un mot de passe al\'eatoire lors du processus
2804 de configuration. Dans le cas contraire, ce champ sera laiss\'e blanc.
2806 \item [Device = \lt{}device-name\gt{}]
2808 \index[dir]{Directive!Device}
2809 Cette directive sp\'ecifie le nom (pour le Storage Daemon) du p\'eriph\'erique \`a
2810 utiliser pour le stockage.
2811 Ce nom n'est pas le nom de p\'eriph\'erique physique, mais le nom de p\'eriph\'erique
2812 logique qui a \'et\'e d\'efini par la directive {\bf Name} de la ressource {\bf Device}
2813 du fichier de configuration du Storage Daemon. Si le p\'eriph\'erique est une librairie, vous
2814 devez utiliser le nom d\'efini au niveau de la directive {\bf Name} d\'efini dans la d\'efinition
2815 de la ressource {\bf Autochanger} du Storage Daemon. Vous pouvez utiliser le nom de
2816 votre choix (y compris le nom de p\'eriph\'erique physique) \`a concurrence de
2817 127 caract\`eres. Le nom de p\'eriph\'erique physique associ\'e \`a ce p\'eriph\'erique est
2818 sp\'ecifi\'e dans le fichier de configuration du Storage Daemon
2819 (en tant qu'{\bf Archive Device}). Prenez garde \`a ne pas d\'efinir deux directives
2820 Storage Resource dans le Director qui pointent vers le m\^eme p\'eriph\'erique du
2821 Storage Daemon. Il pourrait en r\'esulter un blocage du Storage Daemon si celui-ci
2822 tente d'utiliser le m\^eme p\'eriph\'erique deux fois. Cette directive est requise.
2824 \item [Media Type = \lt{}MediaType\gt{}]
2825 \index[dir]{Media Type}
2826 \index[dir]{Directive!Media Type}
2827 Cette directive sp\'ecifie le type de m\'edia \`a utiliser pour stocker les donn\'ees.
2828 Il s'agit d'une cha\^ine de caract\`eres arbitraire n'exc\'edant pas 127 caract\`eres.
2829 Ce peut \^etre ce que vous voulez, cependant, il est pr\'ef\'erable de la choisir de
2830 mani\`ere \`a d\'ecrire le m\'edium de stockage utilis\'e (par exemple : Fichier, DAT,
2831 ''HP DLT8000``, 8mm,...). D'autre part, il est esentiel d'avoir une sp\'ecification
2832 {\bf Media Type} unique pour chaque type de m\'edia de stockage. Si vous avez deux
2833 lecteurs DDS-4 avec des formats incompatibles et une librairie DDS-4, vous devriez
2834 certainement sp\'ecifier des {\bf Media Types} distincts. Lors d'une restauration,
2835 supposons qu'un Media Type {\bf DDS-4} est associ\'e avec le le job, Bacula peut
2836 d\'ecider d'utiliser tout Storage Daemon qui supporte le Media Type {\bf DDS-4} sur
2837 tout lecteur qui le supporte.
2839 Actuellement, Bacula n'autorise qu'un seul type de media. Par cons\'equent, si vous
2840 disposez d'un lecteur qui en supporte plusieurs, vous pouvez utiliser une cha\^ine
2841 unique pour d\'esigner les volumes de l'un ou l'autre type, par exemple Media Type = DDS-3-4
2842 pour les types DDS-3 et DDS-4, mais ces volumes ne seront mont\'es que sur les lecteurs
2843 sp\'ecifi\'es comme acceptant les deux types : DDS-3-4
2845 Si vous voulez contraindre Bacula \`a utiliser un
2846 seul Storage Daemon ou un seul lecteur, vous devez sp\'ecifier un Media Type unique
2847 pour ce lecteur. C'est un point important qui devrait \^etre bien compris. Notez que
2848 ceci s'applique \'egalement aux volumes disque. Si vous d\'efinissez plus d'une ressource
2849 Device disque dans votre fichier de configuration du Storage Daemon, les volumes sur ces
2850 deux devices seront en fait incompatibles car l'un ne pourra \^etre mont\'e sur l'autre
2851 puisqu'ils se trouvent dans des r\'epertoires diff\'erents. C'est pourquoi vous devriez
2852 probablement plut\^ot utiliser deux Media Types distincts pour vos deux devices disque
2853 (m\^eme si vous pensez \`a eux comme ayant l'un et l'autre le type File).
2855 Vous trouverez pus de d\'etails \`a ce sujet dans le chapitre
2856 \ilink{Gestion des volumes : fondements (NDT:basic volumes management)}
2857 {_ChapterStart39} de ce manuel.
2859 Le {\bf MediaType} sp\'ecifi\'e ici {\bf doit} correspondre au {\bf MediaType}
2860 sp\'ecifi\'e dans la ressource {\bf Device} du fichier de configuration du
2861 Storage Daemon. Cette directive est requise, et est utilis\'ee par le Director
2862 et le Storage Daemon pour s'assurer qu'un volume s\'electionn\'e automatiquement
2863 dans un Pool correspond \`a un p\'eriph\'erique physique. Si un Storage Daemon
2864 g\`ere plusieurs p\'eriph\'eriques (par exemple, s'il \'ecrit sur plusieurs volumes
2865 de type File sur diff\'erentes partitions), cette directive vous permet de
2866 pr\'eciser exactement quel p\'eriph\'erique utiliser.
2868 Comme mentionn\'e ci-dessus, la valeur sp\'ecifi\'ee dans la ressource Storage du
2869 Director doit s'accorder avec celle sp\'ecifi\'ee dans la ressource Device du
2870 fichier de configuration du Storage Daemon. Ceci repr\'esente aussi un contr\^ole
2871 suppl\'ementaire pour assurer que vous n'essayez pas d'\'ecrire les donn\'ees destin\'ees
2872 \`a un lecteur DLT sur un lecteur 8mm.
2874 \label{Autochanger1}
2876 \item [Autochanger = \lt{}yes|no\gt{} ]
2877 \index[dir]{Autochanger }
2878 \index[dir]{Directive!Autochanger}
2879 Si vous sp\'ecifiez {\bf yes} pour cette commande (la valeur par d\'efaut est {\bf no}),
2880 alors Bacula requ\'erira un num\'ero de Slot lorsque vous utiliserez les commandes
2881 {\bf label} et {\bf add} pour cr\'eer un nouveau volume. Ceci simplifie la cr\'eation
2882 des enregistrements de Volumes dans le catalogue si vous disposez d'une librairie.
2883 Si vous omettez de sp\'ecifier le Slot, la robotique ne sera pas utilis\'ee. Cependant,
2884 vous pouvez modifier le Slot associ\'e \`a un volume \`a tout moment grâce \`a la commande
2885 {\bf update volume} du programme Console. Lorqu'{\bf autochanger} est activ\'ee,
2886 l'algorithme utilis\'e par Bacula pour rechercher des volumes utilisables est
2887 modifi\'e de fa\
\ 3on \`a prendre en compte tout volume suppos\'e contenu dans la librairie.
2888 Si aucun volume {\bf in changer} n'est trouv\'e, Bacula tente de recycler, \'elaguer...,
2889 et s'il ne trouve toujours aucun volume, Bacula recherche un volume pr\'esent ou non
2890 dans la librairie. Privil\'egier les volumes pr\'esents dans la librairie permet de
2891 minimiser les interventions d'un op\'erateur.
2893 Pour que la robotique soit utilis\'ee, vous devez aussi sp\'ecifier {\bf Autochanger = yes}
2894 dans la ressource \ilink{La Ressource Device}{Autochanger} du fichier de configuration du
2895 Storage Daemon, ainsi que d'autres param\`etres importants du Storage Daemon. Vous
2896 trouverez plus d'information \`a ce sujet dans le chapitre
2897 \ilink{ Utiliser une librairie}{_ChapterStart18} de ce manuel.
2899 \item [Maximum Concurrent Jobs = \lt{}number\gt{}]
2900 \index[dir]{Maximum Concurrent Jobs}
2901 \index[dir]{Directive!Maximum Concurrent Jobs}
2902 O\`u \lt{}number\gt{} est le nombre maximum de jobs utilisant la
2903 ressource Storage courante qui peuvent \^etre ex\'ecut\'es simultan\'ement. Notez que cette
2904 directive ne limite que les jobs qui utilisent ce Storage Daemon. Toute autre
2905 limitation du nombre maximum de jobs simultan\'es au niveau des ressources
2906 Director, Job ou Client est aussi appliqu\'ee en plus de celle fix\'ee ici. La valeur
2907 par d\'efaut est 1, mais vous pouvez utiliser une valeur plus importante. Nous vous
2908 recommandons fortement de lire les MISES EN GARDE de la section \ilink{ Maximum Concurrent
2909 Jobs}{DirMaxConJobs} du chapitre Configurer le Director.
2911 Alors qu'il est possible de d\'efinir des nombres maximum de jobs simultan\'es sup\'erieurs
2912 \`a 1 dans les ressource Director, Job et Client, vous devriez porter une attention
2913 particuli\`ere au param\'etrage de cette directive pour le Storage Daemon. En conservant
2914 la valeur 1, vous \'evitez que deux jobs \'ecrivent simultan\'ement sur le m\^eme volume ce qui,
2915 quoique support\'e, n'est pas recommand\'e actuellement.
2918 Voici un exemple de ressource Storage valide :
2922 # Definition of tape storage device
2926 Password = storage_password # password for Storage daemon
2927 Device = "HP DLT 80" # same as Device in Storage daemon
2928 Media Type = DLT8000 # same as MediaType in Storage daemon
2933 \subsection*{La ressource Pool}
2934 \label{PoolResource}
2935 \index[general]{Resource!Pool }
2936 \index[general]{Pool Resource }
2937 \addcontentsline{toc}{subsection}{Pool Resource}
2938 La ressource Pool d\'efinit l'ensemble des volumes de stockage (cartouches ou fichiers)
2939 \`a la disposition de Bacula pour \'ecrire les donn\'ees. En configurant diff\'erents
2940 Pools, vous pouvez d\'eterminer quel ensemble de volumes (ou m\'edia) re\
\ 3oit les
2941 donn\'ees sauvegard\'ees. Ceci permet, par exemple, de stocker toutes les sauvegardes
2942 Full sur un ensemble de volumes, et les sauvegardes diff\'erentielles et
2943 incr\'ementales sur un autre. De m\^eme, vous pouvez assigner un ensemble de volumes
2944 \`a chaque machine sauvegard\'ee. Tout ceci peut \^etre r\'ealis\'e ais\'ement en d\'efinissant
2947 Un autre aspect important d'un pool est qu'il contient des attributs par d\'efaut
2948 (Nombre maximum de jobs, p\'eriode de r\'etention, drapeau de recyclage,...) qui sont
2949 conf\'er\'es \`a tout volume lui appartenant lors de sa cr\'eation. Ceci vous \'evite d'avoir
2950 \`a r\'epondre \`a un grand nombre de questions lorsque vous \'etiquettez (label) un nouveau
2951 volume. Chacun de ces attributs peut ensuite \^etre modifi\'e sur chaque volume
2952 individuellement avec la commande {\bf update} du programme Console. Notez que
2953 vous devez pr\'eciser explicitement quel pool est \`a utiliser avec chaque job. Bacula
2954 ne recherche pas automatiquement le pool correct.
2956 Dans la plupart des installations de Bacula, toutes les sauvegardes de toutes
2957 les machines vont vers un unique jeu de volumes. Dans ce cas, vous n'utiliserez
2958 probablement que le pool par d\'efaut {\bf Default}. Si votre strat\'egie de
2959 sauvegarde vous impose \`a monter chaque jour une cartouche diff\'erente, vous voudrez
2960 probablement d\'efinir des pools distincts pour chaque jour. Pour plus d'informations
2961 \`a ce sujet, consultez le chapitre \ilink{Strat\'egies de sauvegarde}{_ChapterStart3}
2964 Pour utiliser un pool, vous devez suivre trois \'etapes :
2966 D'abord, le pool doit
2967 \^etre d\'efini dans le fichier de configuration du Director. Ensuite le pool doit
2968 \^etre enregistr\'e dans le catalogue. Ceci est fait automatiquement par le Director
2969 \`a chaque fois qu'il d\'emarre, ou peut \^etre r\'ealis\'e manuellement \`a l'aide de la
2970 commande {\bf create} du programme Console. Enfin, si vous modifiez la d\'efinition
2971 du pool dans le fichier de configuration du Director et red\'emarrez Bacula,
2972 le pool sera mis \`a jour automatiquement, ce qui peut aussi \^etre r\'ealis\'e
2973 manuellement avec la commande {\bf update pool} du programme Console pour
2974 rafraichir l'image du catalogue. C'est cette image du catalogue plut\^ot
2975 que l'image de la ressource du Director qui est utilis\'ee pour les attributs
2976 de volume par d\'efaut. Notez que pour que le pool soit automatiquement
2977 cr\'e\'e ou mis \`a jour, il doit \^etre r\'ef\'erenc\'e explicitement par une ressource Job.
2979 Ensuite le m\'edium physique doit \^etre \'etiquett\'e. L'\'etiquettage peut \^etre r\'ealis\'e
2980 soit par la commande {\bf label} du programme Console, soit en utilisant le
2981 programme {\bf btape}. La m\'ethode \`a privil\'egier est la premi\`ere.
2983 Finallement, vous devez ajouter des noms de volumes (et leurs attributs) au
2984 pool. Pour que les volumes soient utilis\'es par Bacula, ils doivent \^etre
2985 du m\^eme {\bf Media Type} que l'Archive Device sp\'ecifi\'ee pour le job.
2986 (Autrement dit, si vous vous appr\'etez \`a sauvegarder vers un lecteur DLT,
2987 le pool doit contenir des volumes DLT, puisque des volumes 8mm ne peuvent
2988 \^etre mont\'es sur un lecteur DLT). Le {\bf Media Type} rev\^et une importance
2989 particuli\`ere si vous sauvegardez vers des fichiers. Lorsque vous ex\'ecutez
2990 un job, vous devez explicitement pr\'eciser le pool. Bacula s\'electionne d\`es lors
2991 automatiquement le prochain volume du pool \`a utiliser, en s'assurant que le
2992 {\bf Media Type} de tout volume s\'electionn\'e est bien celui requis par la
2993 ressource Storage sp\'ecifi\'ee pour le job.
2995 Si vous utilisez la commande {\bf label} du programme Console pour
2996 \'etiquetter les volumes, il sont automatiquement ajout\'es au pool, aussi cette
2997 derni\`ere \'etape n'est g\'en\'eralement pas requise.
2999 Il est aussi possible d'ajouter des volumes au catalogue sans avoir
3000 explicitement \'etiquett\'e les volumes physiques. Ceci s'effectue avec la commande
3001 {\bf add} du programme Console.
3003 Comme mentionn\'e plus haut, \`a chaque d\'emarrage, Bacula examine tous les pools
3004 associ\'es \`a chaque catalogue, et si un enregistrement n'existe pas encore, il
3005 est cr\'e\'e \`a partir de la d\'efinition du pool dans la ressource. Bacula devrait
3006 probablement effectuer un {\bf update pool} si vous modifiez la d\'efinition
3007 du pool mais, actuellement, vous devez le faire manuellement avec la
3008 commande {\bf update pool} du programme Console.
3010 La ressource Pool d\'efinie dans le fichier de configuration du Director peut
3011 contenir les directives suivantes :
3018 \index[dir]{Directive!Pool}
3019 D\'ebut de la ressource Pool. Il faut d\'efinir au moins une ressource Pool.
3021 \item [Name = \lt{}name\gt{}]
3023 \index[dir]{Directive!Name}
3024 Le nom du pool. Pour la plupart des applications, vous utiliserez le pool
3025 par d\'efaut nomm\'e {\bf Default}. Cette directive est requise.
3027 \item [Number of Volumes = \lt{}number\gt{}]
3028 \index[dir]{Number of Volumes }
3029 Cette directive sp\'ecifie le nombre de volumes (cartouches ou fichiers) contenus
3030 dans le pool. En principe, il est d\'efini et mis \`a jour automatiquement par la
3031 routine de maintenance du catalogue de Bacula.
3034 \item [Maximum Volumes = \lt{}number\gt{}]
3035 \index[dir]{Maximum Volumes}
3036 \index[dir]{Directive!Maximum Volumes}
3037 Cette directive sp\'ecifie le nombre maximum de volumes contenus dans le pool.
3038 Cette directive est optionnelle. Si elle est omise ou r\'egl\'ee \`a 0, tout nombre
3039 de volumes est permis. En g\'en\'eral, cette directive est utile pour les librairies,
3040 o\`u il y a un nombre fix\'e de volumes, ou pour le stockage sur fichier si vous voulez
3041 vous assurer que les sauvegardes sur disque ne deviennent pas trop nombreuses ou ne
3042 consomment pas trop d'espace.
3044 \item [Pool Type = \lt{}type\gt{}]
3045 \index[dir]{Pool Type }
3046 \index[dir]{Directive!Pool Type}
3047 Cette directive d\'efinit le type du pool, qui correspond au type du job
3048 ex\'ecut\'e. Cette directive est requise et peut prendre l'une des valeurs suivantes :
3059 \item [Use Volume Once = \lt{}yes|no\gt{}]
3060 \index[dir]{Use Volume Once}
3061 \index[dir]{Directive!Use Volume Once}
3062 Cette directive, si elle est active (valeur {\bf yes}) stipule que chaque volume
3063 ne doit \^etre utilis\'e qu'une seule fois. C'est particuli\`erement utile si le
3064 volume est un fichier et si vous voulez un nouveau fichier pour chaque nouvelle
3065 sauvegarde. La valeur par d\'efaut est {\bf no} (autrement dit, les volumes peuvent
3066 \^etre utilis\'es plusieurs fois). Cette directive sera tr\`es certainement bient\^ot
3067 obsol\`ete, aussi nous vous recommandons d'utiliser {\bf Maximum Volume Jobs = 1}
3070 La valeur d\'efinie par cette directive dans le fichier de
3071 configuration du Director est la valeur par d\'efaut utilis\'ee lorsqu'un nouveau
3072 volume est cr\'e\'e. Modifier la valeur dans le fichier de configuration ne changera
3073 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3074 existant, vous devez utiliser la commande {\bf update} du programme Console.
3076 \item [Maximum Volume Jobs = \lt{}positive-integer\gt{}]
3077 \index[dir]{Maximum Volume Jobs}
3078 \index[dir]{Directive!Maximum Volume Jobs}
3079 Cette directive sp\'ecifie le nombre maximum de jobs qui peuvent \^etre \'ecrits sur le volume.
3080 La valeur par d\'efaut est z\'ero, ce qui signifie que le nombre de jobs sur un volume
3081 n'est pas limit\'e. Sinon, lorsque le nombre de jobs sauvegard\'es sur le volume atteint
3082 la valeur {\bf positive-integer} sp\'ecifi\'ee, le volume est marqu\'e {\bf Used}. D\`es lors,
3083 il ne peut plus \^etre utilis\'e pour y ajouter des jobs, tout comme dans le cas d'un volume
3084 avec le statut {\bf Full}, mais il peut \^etre recycl\'e si le recyclage est activ\'e. En
3085 sp\'ecifiant {\bf MaximumVolumeJobs = 1} vous obtenez le m\^eme effet que celui que vous
3086 obtiendriez avec {\bf UseVolumeOnce = yes}.
3088 Notez que la valeur d\'efinie par cette directive dans le fichier de configuration du
3089 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3090 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3091 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3092 existant, vous devez utiliser la commande {\bf update} du programme Console.
3094 \item [Maximum Volume Files = \lt{}positive-integer\gt{}]
3095 \index[dir]{Maximum Volume Files}
3096 \index[dir]{Directive!Maximum Volume Files}
3097 Cette directive sp\'ecifie le nombre maximum de fichiers qui peuvent \^etre \'ecrits sur
3098 le volume. La valeur par d\'efaut est z\'ero, ce qui signifie que le nombre de fichiers
3099 sur un volume n'est pas limit\'e. Sinon, lorsque le nombre de fichiers sauvegard\'es sur
3100 le volume atteint la valeur {\bf positive-integer} sp\'ecifi\'ee, le volume est marqu\'e
3101 {\bf Used}. D\`es lors, il ne peut plus \^etre utilis\'e pour y ajouter des jobs, tout comme
3102 dans le cas d'un volume avec le statut {\bf Full}, mais il peut \^etre recycl\'e si le
3103 recyclage est activ\'e. Ce n'est qu'\`a la fin d'un job que Cette valeur est control\'ee,
3104 et que le statut du volume est \'eventuellement chang\'e en {\bf Used}.
3106 La valeur d\'efinie par cette directive dans le fichier de configuration du
3107 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3108 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3109 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3110 existant, vous devez utiliser la commande {\bf update} du programme Console.
3112 \item [Maximum Volume Bytes = \lt{}size\gt{}]
3113 \index[dir]{Maximum Volume Bytes}
3114 \index[dir]{Directive!Maximum Volume Bytes}
3115 Cette directive sp\'ecifie le nombre maximum d'octets qui peuvent \^etre \'ecrits sur le
3116 volume. La valeur par d\'efaut est z\'ero, ce qui signifie qu'il n'y a d'autre limite
3117 que la capacit\'e physique du volume. Sinon, lorsque le nombre d'octets sauvegard\'es sur
3118 le volume atteint la valeur {\bf size} sp\'ecifi\'ee, le volume est marqu\'e
3119 {\bf Used}. D\`es lors, il ne peut plus \^etre utilis\'e pour y ajouter des jobs, tout comme
3120 dans le cas d'un volume avec le statut {\bf Full}, mais il peut \^etre recycl\'e si le
3121 recyclage est activ\'e. Ce n'est qu'\`a la fin d'un job que Cette valeur est control\'ee,
3122 et que le statut du volume est \'eventuellement chang\'e en {\bf Used}.
3124 La valeur d\'efinie par cette directive dans le fichier de configuration du
3125 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3126 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3127 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3128 existant, vous devez utiliser la commande {\bf update} du programme Console.
3130 \item [Volume Use Duration = \lt{}time-period-specification\gt{}]
3131 \index[dir]{Volume Use Duration}
3132 \index[dir]{Directive!Volume Use Duration}
3133 Cette directive d\'efinit la p\'eriode durant laquelle le volume peut \^etre utilis\'e en
3134 \'ecriture, \`a compter de la premi\`ere op\'eration d'\'ecriture de donn\'ees.
3135 La valeur par d\'efaut est z\'ero, ce qui signifie que le volume peut \^etre \'ecrit
3136 ind\'efiniment . Sinon, lorsque la dur\'ee depuis la premi\`ere \'ecriture exc\`ede la p\'eriode
3137 {\bf time-period-specification} sp\'ecifi\'ee, le volume est marqu\'e
3138 {\bf Used}. D\`es lors, il ne peut plus \^etre utilis\'e pour y ajouter des jobs, tout comme
3139 dans le cas d'un volume avec le statut {\bf Full}, mais il peut \^etre recycl\'e si le
3140 recyclage est activ\'e. L'usage de la commande {\bf status dir} applique des algorithmes
3141 similaires \`a l'\'execution de jobs, aussi lors d'une telle commande, le statut du volume
3142 peut \^etre modifi\'e. Lorsque le volume est recycl\'e, il peut \`a nouveau \^etre utilis\'e.
3144 Vous pourriez utiliser cette directive, par exemple, si vous avez un volume d\'edi\'e
3145 aux sauvegardes incr\'ementales, et un volume d\'edi\'e aux Fulls hebdomadaires. Une fois que
3146 la Full est pass\'ee, vous pouvez pr\'ef\'erer utiliser un autre volume pour les incr\'ementales.
3147 Ceci peut \^etre accompli en r\`eglant la p\'eriode {\bf Volume Use Duration} \`a six jours pour
3148 les volumes des incr\'ementales. Autrement dit, celui-ci sera utilis\'e durant les six jours
3149 qui suivent une full, puis un autre volume d'incr\'ementales sera utilis\'e. Veillez \`a utiliser
3150 des p\'eriodes relativement courtes telles que 23 heures, ou vous pourriez placer Bacula en situation
3151 de devoir attendre tout un week-end le montage d'une cartouche par l'op\'erateur pour pouvoir terminer
3154 Ce n'est qu'\`a la fin d'un job que Cette valeur est control\'ee,
3155 et que le statut du volume est \'eventuellement chang\'e en {\bf Used}, ce qui signifie que
3156 bien que la p\'eriode {\bf Volume Use Duration} puisse avoir expir\'e, l'entr\'ee correspondante
3157 du catalogue ne sera pas mise \`a jour jusqu'\`a ce que le prochain job utilisant ce
3158 volume soit ex\'ecut\'e.
3160 La valeur d\'efinie par cette directive dans le fichier de configuration du
3161 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3162 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3163 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3164 existant, vous devez utiliser la commande \ilink{\bf update volume}{UpdateCommand} du
3167 \item [Catalog Files = \lt{}yes|no\gt{}]
3168 \index[dir]{Catalog Files}
3169 \index[dir]{Directive!Catalog Files}
3170 Cette directive pr\'ecise si les noms des fichiers sauvegard\'es doivent ou non \^etre
3171 enregistr\'es dans le catalogue. La valeur par d\'efaut est {\bf yes}. L'avantage de
3172 d\'esactiver cette option ({\bf Catalog Files = No}) est d'avoir un catalogue
3173 significativement plus petit. L'inconv\'enient est de ne pas pouvoir produire de
3174 liste des fichiers sauvegard\'es pour chaque job \`a partir du catalogue (autrement
3175 dit, vous ne pourrez naviguer dans les fichiers sauvegard\'es). Ainsi, sans les
3176 enregistrements de fichiers, vous ne pourrez utiliser la commande {\bf restore},
3177 ni aucune des autres commandes du programme Console qui se r\'ef\`erent aux
3178 enregistrements de fichiers.
3180 \label{PoolAutoPrune}
3182 \item [AutoPrune = \lt{}yes|no\gt{}]
3183 \index[dir]{AutoPrune}
3184 \index[dir]{Directive!AutoPrune}
3185 Si AutoPrune est activ\'ee ({\bf yes}), ce qui est le cas par d\'efaut, Bacula
3186 (depuis la version 1.20) applique automatiquement la p\'eriode de r\'etention des
3187 volumes lorsqu'un nouveau volumes est requis ou lorsqu'il n'existe aucun volume
3188 utilisable dans le pool. L'\'elagage des volumes consiste \`a supprimer du catalogue
3189 les jobs expir\'es (ceux qui sont plus anciens que la p\'eriode de r\'etention), et rend
3190 possible le recyclage de ces volumes
3192 \label{VolRetention}
3194 \item [Volume Retention = \lt{}time-period-specification\gt{}]
3195 \index[dir]{Volume Retention}
3196 \index[dir]{Directive!Volume Retention}
3197 La directive Volume Retention d\'efinit la p\'eriode durant laquelle {\bf Bacula}
3198 conserve les enregistrements Job associ\'es au volume dans le catalogue.
3199 Lors de l'expiration de cette p\'eriode, si {\bf AutoPrune} est activ\'ee, Bacula
3200 peut supprimer les enregistrements Job plus anciens que la p\'eriode {\bf time-period-specification}
3201 sp\'ecifi\'ee s'il est n\'ecessaire de lib\'erer un volume. Tous les enregistrements de fichiers
3202 associ\'es \`a des jobs supprim\'es sont aussi supprim\'es. Les dur\'ees peuvent \^etre exprim\'ees
3203 en secondes, minutes, heures, jours, semaines, mois, trimestres ou ann\'ees.
3204 La p\'eriode {\bf Volume Retention} s'applique ind\'ependamment des p\'eriodes {\bf Job Retention}
3205 et {\bf File Retention} d\'efinies dans la ressource Client. Ceci signifie que la
3206 p\'eriode la plus courte est celle qui s'applique.Notez bien que lorsque la p\'eriode
3207 {\bf Volume Retention} a \'et\'e atteinte les enregistrements de Job et ceux de fichiers
3208 sont supprimm\'es les uns et les autres.
3209 Cet \'elagage peut aussi se produire \`a l'ex\'ecution de la commande {\bf status dir} car elle
3210 applique des algorithmes similaires \`a ceux utilis\'es pour d\'eterminer le prochain volume
3213 Il est important de savoir que lorsque la p\'eriode Volume Retention expire,
3214 Bacula ne recycle pas syst\'ematiquement le volume concern\'e. Il tente de conserver
3215 les donn\'ees intactes aussi longtemps que possible avant d'\'ecrire sur ce volume.
3217 La valeur par d\'efaut est 365 jours. Notez que cette directive r\`egle la valeur par
3218 d\'efaut pour chaque enregistrement de volume du catalogue lorsque le volume
3219 est cr\'e\'e. Cette valeur du catalogue peut ensuite \^etre modifi\'ee avec la commande
3220 {\bf update } du programme Console.
3222 En d\'efinissant plusieurs pools avec diff\'erentes p\'eriodes de r\'etention (volume
3223 retention), vous pouvez efficacement g\'erer vos cartouches avec, par exemple
3224 un pool de cartouches recycl\'e chaque semaine, un autre recycl\'e chaque mois, et
3225 ainsi de suite. Cependant, il faut bien garder \`a l'esprit que si votre p\'eriode
3226 de r\'etention {\bf Volume Retention} est trop courte, il peut arriver que votre
3227 derni\`ere sauvegarde Full valide soit supprim\'ee, de sorte que vous n'ayez plus
3228 une sauvegarde compl\`ete de votre syst\`eme, et que votre prochaine incr\'ementale
3229 soit \'elev\'ee en une Full. Par cons\'equent, la valeur minimum de la p\'eriode
3230 {\bf Volume Retention} devrait \^etre au moins le double de l'intervalle
3231 s\'eparant vos Fulls. Autrement dit, pour des Fulls mensuelles, la p\'eriode
3232 {\bf Volume Retention} devrait \^etre sup\'erieure ou \'egale \`a deux mois.
3234 Notez que la valeur d\'efinie par cette directive dans le fichier de configuration du
3235 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3236 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3237 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3238 existant, vous devez utiliser la commande {\bf update} du programme Console.
3242 \item [Recycle = \lt{}yes|no\gt{}]
3243 \index[dir]{Recycle}
3244 \index[dir]{Directive!Recycle}
3245 Cette directive sp\'ecifie la valeur par d\'efaut pour le recyclage des volumes purg\'es.
3246 Si elle est activ\'ee ({\bf yes}) et si Bacula a besoin d'un volume mais n'en trouve
3247 aucun utilisable, il recherche alors les volumes purg\'es (c'est \`a dire ceux dont tous
3248 les jobs et fichiers ont expir\'e et ont, de fait, \'et\'e supprim\'es du catalogue). Si un
3249 volume est recycl\'e, toutes les donn\'ees pr\'ecedemment \'ecrites sur ce volumes seront
3250 \'ecras\'ees. Si le recyclage est d\'esactiv\'e ({\bf no}), le volume ne sera pas recycl\'e, et ainsi
3251 les donn\'ees resteront valides. Si vous souhaitez r\'eutiliser un volume dont le drapeau de
3252 recyclage est no (0 dans le catalogue), vous devez manuellement le changer en yes (commande
3255 Notez que la valeur d\'efinie par cette directive dans le fichier de configuration du
3256 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3257 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3258 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3259 existant, vous devez utiliser la commande {\bf update} du programme Console.
3261 \label{RecycleOldest}
3263 \item [Recycle Oldest Volume = \lt{}yes|no\gt{}]
3264 \index[dir]{Recycle Oldest Volume}
3265 \index[dir]{Directive!Recycle Oldest Volume}
3266 Cette directive indique au Director de rechercher le volume le plus ancien
3267 du pool lorsq'un nouveau est requis par le Storage Daemon et qu'aucun autre
3268 n'est disponible. Le catalog est alors {\bf \'elagu\'e} dans le respect des
3269 p\'eriodes {\bf Job}, {\bf File} et {\bf Volume Retention}, c'est pourquoi cette
3270 directive est, de {\bf tr\`es} loin, pr\'ef\'erable \`a directive Purge Oldest Volume.
3272 Cette directive peut \^etre utile si vous avez un nombre fixe de volumes dans
3273 un pool et que vous voulez cycler sur ces volumes apr\`es avoir sp\'ecifi\'e
3274 les p\'eriodes de r\'etention qui conviennent.
3276 \label{RecycleCurrent}
3278 \item [Recycle Current Volume = \lt{}yes|no\gt{}]
3279 \index[dir]{Recycle Current Volume}
3280 \index[dir]{Directive!Recycle Current Volume}
3281 Si Bacula a besoin d'un nouveau volume, cette directive lui indique d'\'elaguer
3282 le volume dans le respect des p\'eriodes {\bf Job}, {\bf File} et
3283 {\bf Volume Retention}. Si tous les jobs sont \'elagu\'es, (c'est \`a dire si le
3284 volume est purg\'e), alors le volume est recycl\'e et sera utilis\'e pour la
3285 prochaine op\'eration d'\'ecriture. Cette directive respecte toutes les
3286 p\'eriodes {\bf Job}, {\bf File} et {\bf Volume Retention}, c'est pourquoi
3287 elle est , de {\bf tr\`es} loin, pr\'ef\'erable \`a la directive Purge Oldest Volume.
3289 Cette directive peut \^etre utile si vous avez un nombre fixe de volumes dans
3290 un pool et que vous voulez cycler sur ces volumes apr\`es avoir sp\'ecifi\'e
3291 les p\'eriodes de r\'etention qui \'elaguent les volumes avant que vous n'ayez
3292 termin\'e le cycle sur les volumes.
3296 \item [Purge Oldest Volume = \lt{}yes|no\gt{}]
3297 \index[dir]{Purge Oldest Volume}
3298 \index[dir]{Directive!Purge Oldest Volume}
3299 Cette directive indique au Director de rechercher le volume utilis\'e le plus
3300 ancien dans le pool lorsqu'un nouveau volume est requis par le Storage
3301 Daemon et qu'aucun n'est disponible. Le catalogue est alors purg\'e sans
3302 \'egards pour les p\'eriodes de r\'etention des fichiers et jobs \'ecrits sur ce
3303 volume. Le volume est alors recycl\'e pour \^etre utilis\'e pour la prochaine
3304 op\'eration d'\'ecriture. Cette directive outrepasse toute p\'eriode de r\'etention
3305 (Job, File, ou Volume) que vous avez pu sp\'ecifier par ailleurs.
3307 Cette directive peut \^etre utile si vous avez un nombre fixe de volumes dans
3308 un pool et que vous voulez cycler sur ces volumes lorsque tous les volumes
3309 sont pleins, sans avoir \`a vous soucier de param\'etrer les p\'eriodes de
3310 r\'etentions qui conviendraient. Cependant, en l'utilisant, vous courrez le
3311 risque de perdre toutes vos donn\'ees.
3313 {\bf Soyez conscient que {\bf Purge Oldest Volume} ne fait aucun cas d'aucune
3314 p\'eriode de r\'etention.} Si vous activez cette directive alors que vous ne poss\'edez
3315 qu'un seul volume, ce volume sera syst\'ematiquement \'ecras\'e tout de suite apr\`es
3316 avoir \'et\'e rempli ! Aussi, assurez vous au moins d'avoir un nombre d\'ecent de
3317 volumes dans votre pool avant d'ex\'ecuter un job. Si vous voulez que les p\'eriodes
3318 de r\'etention soient prises en compte, n'utilisez pas cette directive. Pour
3319 sp\'ecifier une p\'eriode de r\'etention, utilisez la directive {\bf Volume Retention}
3322 Je recommande fortement de ne pas utiliser cette directive, car il est certain que
3323 t\^ot ou tard, Bacula recyclera un volume contenant des donn\'ees valides et r\'ecentes.
3324 La valeur par d\'efaut est {\bf no}
3326 \item [Cleaning Prefix = \lt{}string\gt{}]
3327 \index[dir]{Cleaning Prefix}
3328 \index[dir]{Directive!Cleaning Prefix}
3329 Cette directive d\'efinit un pr\'efixe qui, s'il correspond au d\'ebut du nom d'un
3330 volume lors de son \'etiquettage, indique \`a Bacula que le volume en question est
3331 une cartouche de nettoyage, qui aura le statut {\bf VolStatus = Cleaning}.
3332 Ainsi Bacula ne tentera jamais d'utiliser cette cartouche. Cette option est
3333 particuli\`erement utile avec les librairies \'equip\'ees de lecteurs de codes barres o\`u,
3334 conventionnellement, les codes barres commen\
\ 3ant par {\bf CLN} sont trait\'es en
3335 tant que cartouches de nettoyage.
3339 \item [Label Format = \lt{}format\gt{}]
3340 \index[dir]{Label Format}
3341 \index[dir]{Directive!Label Format}
3342 Cette directive pr\'ecise le format des \'etiquettes des volumes de ce pool.
3343 La directive {\bf Format} est utilis\'ee comme un patron pour cr\'eer de nouveaux
3344 noms de volumes lors de l'\'etiquettage automatique.
3346 Le {\bf format} devrait \^etre sp\'ecifi\'e entre guillemets, et consiste en une
3347 cha\^ine de lettres, chiffres et caract\`eres sp\'eciaux tiret ({\bf -}), soulign\'e
3348 ({\bf \_}), double point ({\bf :}) et point ({\bf .}), qui sont consid\'er\'es valides
3349 pour un nom de volume.
3351 De plus, le {\bf format} peut comporter des caract\`eres variables qui seront
3352 substitu\'ees par un algorithme complexe, ce qui permet de cr\'eer des noms de volumes
3353 avec plusieurs formats diff\'erents. En tous les cas, le processus d'expansion des
3354 variables doit aboutir au jeu de caract\`eres d\'efinis comme l\'egaux dans le
3355 dernier paragraphe. G\'en\'eralement, ces caract\`eres variables commencent par
3356 un signe dollar ({\bf \$}) ou un crochet droit ({\bf [}). Si vous sp\'ecifiez
3357 des caract\`eres variables vous devriez toujours les encadrer de guillemets.
3358 Pour plus de d\'etails sur ce sujet, veuillez consulter le chapitre
3359 \ilink{Variable Expansion}{_ChapterStart50} de ce manuel.
3361 Si aucun caract\`ere variable n'est d\'ecouvert dans la cha\^ine, le nom de volume
3362 sera constitu\'e de la cha\^ine {\bf format} suffix\'ee du nombre de volumes dans le
3363 pool plus un, au format 4 chiffres et avec des z\'eros en t\^ete. Par exemple,
3364 avec {\bf Label Format = ''File-``}, les volumes seront nomm\'es
3365 {\bf File-0001}, {\bf File-0002}, ...
3367 Exception faite des variables sp\'ecifiques aux jobs, vous pouvez tester votre
3368 {\bf LabelFormat} en utilisant la section \ilink{ var command}{var} du
3369 chapitre Console de ce manuel.
3371 Dans la plupart des cas, vous devriez encadrer la sp\'ecification de format (la
3372 partie \`a droite du signe \'egale) entre guillemets. Notez que cette directive est
3373 obsol\`ete et qu'elle est remplac\'ee, \`a partir de la version 1.37 par un script Python
3374 pour la cr\'eation des noms de volumes.
3378 Pour qu'un pool puisse \^etre utilis\'e lors d'une sauvegarde, il faut qu'il lui soit
3379 associ\'e au moins un volume. Les volumes sont cr\'e\'es et affect\'es aux pools avec les
3380 commandes {\bf label} ou {\bf add} du programme {\bf Bacula Console}. Outre
3381 l'affectation du volume au pool (c'est \`a dire son r\'ef\'erencement
3382 dans le catalogue), le volume physique doit recevoir une \'etiquette logicielle
3383 valide pour que Bacula l'accepte. Ceci peut \^etre r\'ealis\'e automatiquement grâce
3384 \`a la commande {\bf label}. D'autre part, Bacula peut effectuer cette op\'eration
3385 automatiquement si l'instruction lui en est donn\'e, mais cette fonctionnalit\'e
3386 n'est pas encore pleinement impl\'ement\'ee.
3388 Voici un exemple d'une d\'efinition de ressource Pool valide :
3400 \subsubsection*{Le Scratch Pool}
3401 \addcontentsline{toc}{subsection}{Scratch Pool}
3402 \index[general]{Scratch Pool}
3403 En g\'en\'eral, vous pouvez nommer vos pool \`a votre guise, il existe cependant
3404 une importante restriction : le pool nomm\'e {\bf Scratch}, s'il existe,
3405 se comporte comme une r\'eserve de volumes o\`u Bacula pourra puiser s'il ne trouve
3406 aucun volume utilisable dans le pool normalement utilis\'e par le job. Le volume
3407 est alors d\'eplac\'e du pool Scratch vers le pool en d\'efaut.
3409 \subsection*{La ressource Catalog}
3410 \label{CatalogResource}
3411 \index[general]{Resource!Catalog }
3412 \index[general]{Ressource Catalog}
3413 \addcontentsline{toc}{subsection}{La ressource Catalog}
3415 La ressource Catalog pr\'ecise quel catalogue utiliser pour le job courant.
3416 Actuellement, Bacula ne peut utiliser qu'un type de serveur de bases de
3417 donn\'ees d\'efini lors de sa configuration : SQLite, MySQL, PostgreSQL.
3418 En revanche, vous pouvez utiliser autant de
3419 catalogues que vous le souhaitez. Par exemple, vous pouvez avoir un
3420 catalogue par client, ou encore un catalogue pour les sauvegardes, un autre
3421 pour les jobs de type Verify et un troisi\`eme pour les restaurations.
3426 \index[dir]{Catalog}
3427 \index[dir]{Directive!Catalog}
3428 D\'ebut de la ressource Catalog. Il faut au moins une ressource Catalogue.
3430 \item [Name = \lt{}name\gt{}]
3432 \index[dir]{Directive!Name}
3433 Le nom du Catalog. Il n'a pas besoin d'\^etre en relation avec le nom sur le serveur
3434 de base de donn\'ees. Ce nom sera repris dans la ressource Client, indiquant ainsi
3435 que toutes les donn\'ees relatives \`a ce client sont maintenues dans ce catalogue.
3436 Cette directive est requise.*
3439 \item [password = \lt{}password\gt{}]
3440 \index[dir]{password}
3441 \index[dir]{Directive!password}
3442 Cette directive sp\'ecifie le mot de passe \`a utiliser pour se connecter au
3443 catalogue. Cette directive est requise.
3445 \item [DB Name = \lt{}name\gt{}]
3446 \index[dir]{DB Name}
3447 \index[dir]{Directive!DB Name}
3448 Cette directive sp\'ecifie le nom de la base de donn\'ees. Si vous utilisez plusieurs
3449 catalogues, vous sp\'ecifiez lequel ici. Si vous utilisez un serveur de bases de
3450 donn\'ees externe plut\^ot que l'int\'egr\'e, vous devez sp\'ecifier un nom connu du
3451 serveur (autrement dit, le nom que vous avez utilis\'e lorsque vous avez cr\'e\'e les
3452 tables Bacula.). Cette directive est requise.
3454 \item [user = \lt{}user\gt{}]
3456 \index[dir]{Directive!user}
3457 L'utilisateur habilit\'e \`a se connecter au catalogue. Cette directive est requise.
3459 \item [DB Socket = \lt{}socket-name\gt{}]
3460 \index[dir]{DB Socket}
3461 \index[dir]{Directive!DB Socket}
3462 Il s'agit du nom d'un {\it socket} \`a utiliser sur la machine locale pour se
3463 connecter au catalogue. Cette directive n'est utilis\'ee que par MySQL, elle est
3464 ignor\'ee par SQLite. Normalement, si ni {\bf DB Socket}, ni {\bf DB Address} ne sont
3465 sp\'ecifi\'ees, MySQL utilise le socket par d\'efaut.
3467 \item [DB Address = \lt{}address\gt{}]
3468 \index[dir]{DB Address}
3469 \index[dir]{Directive!DB Address}
3470 Il s'agit de l'adresse du serveur de bases de donn\'ees. En principe, vous
3471 utiliserez cette directive plut\^ot que {\bf DB Socket} si le serveur de bases de
3472 donn\'ees est une autre machine. Dans ce cas, vous sp\'ecifierez aussi le port {\bf DB Port}.
3473 Cette directive n'est utilis\'ee que par MySQL, et ignor\'ee par SQLite. Elle est
3476 \item [DB Port = \lt{}port\gt{}]
3477 \index[dir]{DB Port}
3478 \index[dir]{Directive!DB Port}
3479 Cette directive d\'efinit le port \`a utiliser en conjonction avec {\bf DB Address} pour
3480 acc\'eder au catalogue s'il est h\'eberg\'e sur une autre machine. Elle n'est utilis\'ee que par
3481 MySQL, et ignor\'ee par SQLite. Elle est optionnelle.
3483 %% \item [Multiple Connections = \lt{}yes|no\gt{}]
3484 %% \index[dir]{Multiple Connections}
3485 %% \index[dir]{Directive!Multiple Connections}
3486 %% Par d\'efaut, cette directive est d\'esactiv\'ee, ce qui implique que tous les jobs utilisant
3487 %% le m\^eme catalogue se partagent une m\^eme connection au catalogue, et que Bacula n'autorise
3488 %% qu'un job \`a la fois \`a communiquer. Si vous activez cette directive ({\bf yes}), Bacula
3489 %% permettra les connection multiples au catalogue, c'est pourquoi la base de donn\'ees
3490 %% doit supporter le {\it multi thread}. Pour SQLite et PostgreSQL, ce n'est pas un probl\`eme.
3491 %% Pour MySQL, vous devez vous assurer {\bf attentivement} d'avoir la version {\it multi thread}
3492 %% de la librairie cliente sur votre syst\`eme. Une fois cette directive activ\'ee, chaque job
3493 %% disposera de sa propre connection au catalogue, la base de donn\'ees contr\^olant les interactions
3494 %% entre les diff\'erents jobs. Ceci peut accro\^itre significativement les op\'erations de la
3495 %% base de donn\'ees si vous ex\'ecutez plusieurs jobs simultan\'es. De plus, pour SQLite et PostgreSQL,
3496 %% Bacula activera automatiquement les transactions dans la base de donn\'ees. Ceci peut accro\^itre
3497 %% significativement les insertions d'attributs dans le catalogue, que ce soit pour un job unique
3498 %% ou pour plusieurs jobs simultan\'es.
3500 %% Cette directive n'a pas \'et\'e test\'ee. Veuillez, s'il vous pla\^it, la tester scrupuleusement avant
3501 %% de l'activer en production, et nous fournir un retour de vos tests.
3505 Voici un exemple d'une d\'efinition de ressource Catalog valide :
3514 password = "" # no password = no security
3519 en voici une deuxi\`eme pour un catalogue sur une autre machine :
3529 DB Address = remote.acme.com
3535 \subection*{La ressource Messages}
3536 \label{MessagesResource2}
3537 \index[general]{Resource!Messages }
3538 \index[general]{Messages Ressource }
3539 \addcontentsline{toc}{subsection}{Messages Resource}
3541 Pour les d\'etails sur la ressource Messages, veuillez consulter
3542 le chapitre \ilink{La ressource Messages}{_ChapterStart15} de ce manuel.
3544 \subsection*{La ressource Console}
3545 \label{ConsoleResource1}
3546 \index[general]{Console Resource }
3547 \index[general]{Resource!Console }
3548 \addcontentsline{toc}{subsection}{Console Resource}
3550 A partir de la version 1.33 de Bacula, l'administrateur dispose de trois sortes de
3551 consoles diff\'erentes pour interagir avec le Director. Ces trois types de consoles
3552 comportent trois niveaux de s\'ecurit\'e diff\'erents.
3555 \item Le premier type de console est une console {\bf anonyme} ou {\bf par d\'efaut},
3556 qui d\'etient tous les privil\`eges. La ressource Console n'est pas requise pour
3557 ce type puisque le mot de passe est sp\'ecifi\'e dans la ressource Director et par
3558 cons\'equent, de telles consoles n'ont pas de nom d\'efini par une directive {\bf Name =}.
3559 C'est le premier type de console impl\'ement\'e dans les versions ant\'erieures \`a 1.33, il
3560 demeure valide. Sont usage est typiquement r\'eserv\'e aux administrateurs.
3561 \item Le second type de console, apparu avec la version 1.33 est une console "nomm\'ee"
3562 d\'efinie dans une ressource Console simultan\'ement dans le fichier de configuration du
3563 Director et dans le fichier de configuration de la Console, les noms et mots de passe
3564 devant \^etre en conjonction dans ces deux fichiers.
3565 Ce type de console ne d\'etient absolument aucun privil\`ege, except\'es ceux explicitement
3566 sp\'ecifi\'es dans la ressource Console du fichier de configuration du Director.
3567 Ainsi, vous pouvez d\'efinir plusieurs consoles avec des noms et mots de passe distincts
3568 destin\'ees \`a diff\'erents utilisateurs avec diff\'erents privil\`eges. Par d\'efaut ces consoles
3569 ne peuvent absolument rien faire. Il vous revient de leur accorder des privil\`eges
3570 ou plut\^ot des acc\`es aux commandes et ressources en sp\'ecifiant des listes de
3571 contr\^ole d'acc\`es (ACL) dans la ressource Console du fichier de configuration du
3572 Director. Les ACLs sont sp\'ecifi\'ees par une directive suivie d'une liste de noms
3573 d'acc\`es. Vous trouverez des exemples ci-dessous.
3574 \item Le troisi\`eme type de console est similaire au second en ce qu'il requiert
3575 une d\'efinition de ressource Console dans le fichier de configuration du
3576 Director et dans le fichier de configuration de la Console. De plus, si le nom de
3577 la console sp\'ecifi\'e par la directive {\bf Name =} est le m\^eme que le nom du client,
3578 cette console est autoris\'ee \`a utiliser la commande {\bf SetIP} pour modifier la
3579 directive Address dans la ressource client du fichier de configuration du
3580 Director en l'adresse IP de la console. Ceci permet aux portables et autres machines
3581 utilisant DHCP (adresses IP dynamiques) de "notifier" le Director de leur adresse
3585 La ressource Console est optionnelle. Les directives suivantes sont permises
3586 dans le fichier de configuration du Director.
3590 \item [Name = \lt{}name\gt{}]
3592 \index[dir]{Directive!Name}
3593 Le nom de la console. Ce nom doit \^etre en conjonction avec celui sp\'ecifi\'e
3594 dans le fichier de configuration de la Console (comme c'est le cas pour les
3595 d\'efinitions de clients).
3597 \item [Password = \lt{}password\gt{}]
3598 \index[dir]{Password}
3599 \index[dir]{Directive!Password}
3600 Sp\'ecifie le mot de passe qu'une console nomm\'ee doit fournir pour \^etre autoris\'ee.
3601 Le m\^eme mot de passe doit appara\^itre dans la ressource Console du fichier
3602 de configuration de la Console. Pour plus de s\'ecurit\'e, le mot de passe n'est
3603 jamais r\'eellement transmis \`a travers le r\'eseau, mais plut\^ot un code de
3604 hachage de type {\it challenge response} cr\'e\'e \`a partir du mot de passe.
3605 Cette directive est requise. Si vous disposez de {\bf /dev/random} ou {\bf bc}
3606 sur votre machine, Bacula g\'en\`erera al\'eatoirement ce mot de passe lors du
3607 processus de configuration, autrement, il sera laiss\'e blanc.
3609 \item [JobACL = \lt{}name-list\gt{}]
3611 \index[dir]{Directive!JobACL}
3612 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Job
3613 qui peuvent \^etre acc\'ed\'es par la console. Sans cette directive, la console ne peut
3614 acc\'eder \`a aucune des ressources Job d\'efinies dans le fichier de configuration
3615 du Director. Plusieurs ressources Job peuvent \^etre sp\'ecifi\'ees en les s\'eparant par
3616 des virgules, et/ou en sp\'ecifiant plusieurs directives JobACL. Par exemple, la
3617 directive peut \^etre sp\'ecifi\'ee ainsi :
3621 JobACL = kernsave, "Backup client 1", "Backup client 2"
3622 JobACL = "RestoreFiles"
3627 Avec cette sp\'ecificaton, la console peut acc\'eder aux ressources du Director pour
3628 les quatre jobs d\'esign\'es par la directive JobACL, et uniquement \`a eux.
3630 \item [ClientACL = \lt{}name-list\gt{}]
3631 \index[dir]{ClientACL}
3632 \index[dir]{Directive!ClientACL}
3633 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Client
3634 iaccessibles par la console.
3636 \item [StorageACL = \lt{}name-list\gt{}]
3637 \index[dir]{StorageACL}
3638 \index[dir]{Directive!StorageACL}
3639 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Storage
3640 accessibles par la console.
3642 \item [ScheduleACL = \lt{}name-list\gt{}]
3643 \index[dir]{ScheduleACL}
3644 \index[dir]{Directive!ScheduleACL}
3645 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Schedule
3646 accessibles par la console.
3648 \item [PoolACL = \lt{}name-list\gt{}]
3649 \index[dir]{PoolACL}
3650 \index[dir]{Directive!PoolACL}
3651 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Pool
3652 accesibles ar la console.
3654 \item [FileSetACL = \lt{}name-list\gt{}]
3655 \index[dir]{FileSetACL}
3656 \index[dir]{Directive!FileSetACL}
3657 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources FileSet
3658 accessibles par la console.
3660 \item [CatalogACL = \lt{}name-list\gt{}]
3661 \index[dir]{CatalogACL}
3662 \index[dir]{Directive!CatalogACL}
3663 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Catalog
3664 accessibles par la console.
3666 \item [CommandACL = \lt{}name-list\gt{}]
3667 \index[dir]{CommandACL}
3668 \index[dir]{Directive!CommandACL}
3669 Cette directive est utilis\'ee pour sp\'ecifier une liste de commandes de la console
3670 qui peuvent \^etre ex\'ecut\'ees par la console.
3674 En plus des diff\'erents noms de ressources du Director et de commandes, le mot-clef
3675 sp\'ecial {\bf *all*} peut \^etre sp\'ecifi\'e dans chacune des directives ACL ci-dessus.
3676 Sa pr\'esence signifie que toute ressource ou commande (pourvu qu'elle soit appropri\'ee
3677 \`a la directive) est accept\'ee. Pour un exemple de fichier de configuration, voyez le
3678 chapitre \ilink{Configuration de la console}{_ChapterStart36} de ce manuel
3680 \subsection*{La ressource Counter}
3681 \label{CounterResource}
3682 \index[general]{Ressource!Counter }
3683 \index[general]{Ressource Counter }
3684 \addcontentsline{toc}{subsection}{Ressource Counter}
3685 La ressource Counter d\'efinit une variable-compteur qui peut \^etre acc\'ed\'ee par le
3686 processus d'expansion de variables utilis\'e pour la cr\'eation de d'\'etiquettes (labels)
3687 de volumes avec la directive {\bf LabelFormat}. Consultez le paragraphe sur la directive
3688 \ilink{LabelFormat}{Label} de ce chapitre pour plus de d\'etails.
3693 \index[dir]{Counter}
3694 \index[dir]{Directive!Counter}
3695 D\'ebut de la ressource Counter. les directives Counter sont optionnelles.
3697 \item [Name = \lt{}name\gt{}]
3699 \index[dir]{Directive!Name}
3700 iLe nom de la variable-compteur. Il s'agit du nom que vous utiliserez pour vous r\'ef\'erer
3701 \`a cette variable et acc\'eder \`a sa valeur.
3703 \item [Minimum = \lt{}integer\gt{}]
3704 \index[dir]{Minimum}
3705 \index[dir]{Directive!Minimum}
3706 Sp\'ecifie la valeur minimale de la variable-compteur. Cette valeur devient celle par d\'efaut.
3707 Si elle n'est pas fournie, sa valeur est z\'ero.
3709 \item [Maximum = \lt{}integer\gt{}]
3710 \index[dir]{Maximum}
3711 \index[dir]{Directive!Maximum}
3712 Sp\'ecifie la valeur maximale de la variable-compteur. Si elle n'est pas fournie, ou si elles
3713 est r\'egl\'ee \`a z\'ero, la variable compteur peut prendre une valeur maximale de 2 147 483 648
3714 ($2^{31}$). Au del\`a de cette valeur, le compteur est remis au minimum.
3716 \item [*WrapCounter = \lt{}counter-name\gt{}]
3717 \index[dir]{*WrapCounter}
3718 \index[dir]{Directive!*WrapCounter}
3719 Si cette valeur est sp\'ecifi\'ee, lorsque la variable-compteur d\'epasse le maximum et
3720 est remise au minimum, le compteur sp\'ecifi\'e par la directive {\bf WrapCounter} est
3721 incr\'ement\'e. (Ceci n'est, pour le moment, pas impl\'ement\'e.)
3723 \item [Catalog = \lt{}catalog-name\gt{}]
3724 \index[dir]{Catalog}
3725 \index[dir]{Directive!Catalog}
3726 Si cette directive est sp\'ecifi\'ee, le compteur et sa valeur sont sauvegard\'es dans le
3727 catalogue sp\'ecifi\'e. Dans le cas contraire, le compteur est red\'efini \`a chaque
3728 d\'emarrage de Bacula.
3732 \subsection*{ Voici un exemple complet de fichier de configuration du Director.}
3733 \label{SampleDirectorConfiguration}
3734 \index[general]{File!Exemple Complet Director Configuration }
3735 \index[general]{Exemple Complet Fichier Configuration Director}
3736 \addcontentsline{toc}{subsection}{Exemple Complet Fichier Configuration Directo}
3737 Un exemple de fichier de configuration du Director pourrait \^etre le suivant :
3743 # Default Bacula Director Configuration file
3745 # The only thing that MUST be changed is to add one or more
3746 # file or directory names in the Include directive of the
3749 # For Bacula release 1.15 (5 March 2002) -- redhat
3751 # You might also want to change the default email address
3752 # from root to your address. See the "mail" and "operator"
3753 # directives in the Messages resource.
3755 Director { # define myself
3757 QueryFile = "/home/kern/bacula/bin/query.sql"
3758 WorkingDirectory = "/home/kern/bacula/bin/working"
3759 PidDirectory = "/home/kern/bacula/bin/working"
3760 Password = "XkSfzu/Cf/wX4L8Zh4G4/yhCbpLcz3YVdmVoQvU3EyF/"
3762 # Define the backup Job
3764 Name = "NightlySave"
3766 Level = Incremental # default
3769 Schedule = "WeeklyCycle"
3779 Where = /tmp/bacula-restores
3785 # List of files to be backed up
3789 Options { signature=SHA1 }
3791 # Put your list of files here, one per line or include an
3792 # external list with:
3796 # Note: / backs up everything
3801 # When to do the backups
3803 Name = "WeeklyCycle"
3804 Run = Full sun at 1:05
3805 Run = Incremental mon-sat at 1:05
3807 # Client (File Services) to backup
3812 Password = "MQk6lVinz4GG2hdIZk1dsKE/LxMZGo6znMHiD7t7vzF+"
3813 File Retention = 60d # sixty day file retention
3814 Job Retention = 1y # 1 year Job retention
3815 AutoPrune = yes # Auto apply retention periods
3817 # Definition of DLT tape storage device
3821 Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3822 Device = "HP DLT 80" # same as Device in Storage daemon
3823 Media Type = DLT8000 # same as MediaType in Storage daemon
3825 # Definition for a DLT autochanger device
3829 Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3830 Device = "Autochanger" # same as Device in Storage daemon
3831 Media Type = DLT-8000 # Different from DLTDrive
3834 # Definition of DDS tape storage device
3838 Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3839 Device = SDT-10000 # same as Device in Storage daemon
3840 Media Type = DDS-4 # same as MediaType in Storage daemon
3842 # Definition of 8mm tape storage device
3846 Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3847 Device = "Exabyte 8mm"
3850 # Definition of file storage device
3854 Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3855 Device = FileStorage
3858 # Generic catalog service
3861 dbname = bacula; user = bacula; password = ""
3863 # Reasonable message delivery -- send most everything to
3864 # the email address and to the console
3867 mail = root@localhost = all, !skipped, !terminate
3868 operator = root@localhost = mount
3869 console = all, !skipped, !saved
3872 # Default pool definition
3880 # Restricted console used by tray-monitor to get the status of the director
3884 Password = "GN0uRo7PTUmlMbqrJ2Gr1p0fk0HQJTxwnFyE4WSST3MWZseR"
3885 CommandACL = status, .status