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, ce qui n'est pas recommand\'e,
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 } en cinq ou six endroits diff\'erents : dans le
1351 fichier bacula-dir.conf, les ressources {\bf Job}, {\bf Client}, {\bf Storage};
1352 dans le fichier bacula-fd, la ressource {\bf FileDaemon}; et dans le fichier
1353 bacula-sd.conf, la ressource {\bf Storage}. Si vous omettez l'un d'entre eux,
1354 les jobs seront ex\'ecut\'es un par un.
1355 \item Bacula n'ex\'ecute pas simultan\'ement les jobs de priorit\'es distinctes.
1356 \item Si Bacula ex\'ecute un job de priorit\'e 2 et si un nouveau job de priorit\'e
1357 1 est programm\'e, il attendra la fin du job de priorit\'e 1, m\^eme si les
1358 param\`etres {\bf Maximum Concurrent Jobs} pourraient permettre l'ex\'ecution
1359 simultan\'ee de deux jobs.
1360 \item Supposons que Bacula soit en train d'ex\'ecuter un job de priorit\'e 2 et qu'un
1361 job de priorit\'e 1 soit programm\'e et mis en queue en attente de la fin du
1362 job de priorit\'e 2. Si vous d\'emarrez alors un second job de priorit\'e 2, le job
1363 en attente de priorit\'e 1 emp\`echera le nouveau job de priorit\'e 2 de s'ex\'ecuter
1364 en parall\`ele au premier. Ainsi : tant qu'il reste un job de priorit\'e sup\'erieure
1365 \`a ex\'ecuter, aucun nouveau job de priorit\'e inf\'erieure ne pourra d\'emarrer, m\^eme si
1366 les param\`etres {\bf Maximum Concurrent Jobs} devraient le permettre. Ceci permet
1367 d'assurer que les jobs de priorit\'e sup\'erieure seront ex\'ecut\'es d\`es que possible.
1370 Si vous avez plusieurs jobs de priorit\'es diff\'erentes, il est pr\'ef\'erable de ne pas les
1371 d\'emarrer exactement \`a la m\^eme heure, car Bacula doit les examiner un \`a la fois. Si,
1372 par hazard, Bacula commence par traiter un job de priorit\'e inf\'erieure, il sera
1373 ex\'ecut\'e avant votre job de priorit\'e \'elev\'e. Pour \'eviter cette situation,
1374 d\'emarrez l'un quelconque des jobs de priorit\'e \'elev\'ee quelques secondes avant
1375 ceux de basse priorit\'e. Ainsi, vous serez assur\'e que Bacula examine les jobs
1376 dans l'ordre voulu et que votre sch\'ema de priorit\'es sera respect\'e.
1378 \label{WritePartAfterJob}
1380 \item [ Write Part After Job = \lt{}yes|no\gt{}]
1381 \index[sd]{Write Part After Job}
1382 \index[dir]{Directive!Write Part After Job}
1383 Cette directive est impl\'ement\'ee depuis la version 1.37.
1384 Si la valeur de cette directive est {\bf yes} ({\bf no} par d\'efaut), un nouveau
1385 "fichier partition" (ndt : part file) sera cr\'e\'e apr\`es la fin du job.
1387 Cette directive devrait \^etre activ\'ee lors de l'\'ecriture sur des p\'eriph\'erique
1388 qui requi\`erent un montage (par exemple, les DVDs), afin de vous assurer que
1389 le fichier partition courant, celui qui contient les donn\'ees de ce job, est
1390 envoy\'e vers le p\'eriph\'erique, et qu'aucune donn\'ee n'est laiss\'ee dans le fichier
1391 temporaire sur le disque dur. Quoi qu'il en soit, avec certains supports tels
1392 que les DVD+R et DVD-R, beaucoup d'espace (environ 10 Mb) est perdu \`a chaque fois
1393 qu'un fichier partition est \'ecrit. Aussi, si vous ex\'ecutez plusieurs jobs \`a la
1394 suite, vous devriez r\'egler cette directive \`a {\bf no} pour tous ces jobs sauf
1395 le dernier, pour \'eviter un gaspillage important d'espace, tout en ayant la certitude
1396 que les donn\'ees sont bien \'ecrites sur le m\'edium lorsque tous les jobs sont
1399 Cette directive est ignor\'ee avec les bandes et les p\'eriph\'eriques FIFO.
1402 Voici un exemple de d\'efinition de ressource Job valide.
1409 Level = Incremental # default
1411 FileSet="Minou Full Set"
1414 Schedule = "MinouWeeklyCycle"
1420 \subsection*{La ressource JobDefs}
1421 \label{JobDefsResource}
1422 \index[general]{JobDefs Resource }
1423 \index[general]{Resource!JobDefs }
1424 \addcontentsline{toc}{subsection}{JobDefs Resource}
1426 La ressource Jobdefs admet toutes les directives qui peuvent appara\^itre dans
1427 une ressource Job. Une ressource Jobdefs ne cr\'e\'e en aucun cas un Job, son r\^ole
1428 est de pouvoir \^etre d\'esign\'ee dans une ressource Job comme un ensemble de
1429 param\`etres par d\'efaut. Ceci permet de d\'efinir plusieurs jobs similaires avec
1430 concision, en ne mentionnant, pour chaque job, que les diff\'erences avec les
1431 valeurs par d\'efaut sp\'ecifi\'ees dans la ressource Jobdefs.
1433 \subsection*{La ressource Schedule}
1434 \label{ScheduleResource}
1435 \index[general]{Resource!Schedule }
1436 \index[general]{Schedule Resource }
1437 \addcontentsline{toc}{subsection}{Schedule Resource}
1439 La ressource Schedule offre un moyen pour planifier automatiquement un Job,
1440 mais aussi la possibilit\'e de surcharger les param\`etres par d\'efaut de Level,
1441 Pool, Storage, et Messages ressources. Si une ressource Schedule n'est pas
1442 sp\'ecifi\'ee dans un job, ce job ne peut \^etre ex\'ecut\'e que manuellement.
1443 En g\'en\'eral, vous sp\'ecifierez une action et le moment de son lancement.
1448 \index[dir]{Schedule}
1449 \index[dir]{Directive!Schedule}
1450 D\'ebut des directives Schedule. La ressource {\bf Schedule} n'est pas requise,
1451 mais il vous en faudra au moins une si vous souhaitez que vos jobs soient
1452 ex\'ecut\'es automatiquement.
1454 \item [Name = \lt{}name\gt{}]
1456 \index[dir]{Directive!Name}
1457 Le nom du Schedule d\'efini. Cette directive est requise.
1459 \item [Run = \lt{}Job-overrides\gt{} \lt{}Date-time-specification\gt{} ]
1461 \index[dir]{Directive!Run}
1462 La directive Run d\'efinit quand un job doit \^etre ex\'ecut\'e, et les \'eventuelles
1463 surcharges \`a appliquer. Il est possible de sp\'ecifier plusieurs directives
1464 {\bf run} au sein d'une ressource {\bf Schedule}, elles seront toutes
1465 appliqu\'ees. Si vous avez deux directives {\bf Run} qui d\'emarrent au m\^eme
1466 moment, deux jobs seront lanc\'es simultan\'ement (en fait, avec une seconde d'\'ecart).
1469 La directive {\bf Job-overrides} permet d'outrepasser les sp\'ecifications de
1470 Level, Storage, Messages et Pool \'ecrites dans la ressource Job. De plus,
1471 les sp\'ecifications FullPool, DifferentialPool et IncrementalPool permettent
1472 de passer outre les sp\'ecification de Pool, en accord avec le niveau (level)
1473 effectif d'ex\'ecution du job.
1475 L'utilisation de surcharges permet de peaufiner le param\'etrage d'un job
1476 particulier. Par exemple, vous pourriez surcharger une sp\'ecification
1477 Messages qui enverrait vos logs de backups vers un fichier, de fa\
\ 3on \`a ce qu'ils
1478 vous soient envoy\'es par mails pour les Fulls hebdomadaires ou mensuelles.
1480 Les directives {\bf Job-overrides} sont sp\'ecifi\'ees en tant que {\bf mot-clef=valeur}
1481 o\`u le mot-clef est l'un des suivants : Level, Storage, Messages, Pool, FullPool,
1482 DifferentialPool ou IncrementalPool, et la {\bf valeur} est d\'efinie selon le format
1483 adapt\'e \`a la directive. Vous pouvez sp\'ecifier plusieurs surcharges {\bf Job-overrides}
1484 en une seule directive {\bf Run} en les s\'eparant par des espaces ou des
1485 trailing comas (traduction ?). Par exemple :
1491 \index[dir]{Directive!Level}
1492 Tous les fichiers du FileSet qu'ils aient ou non chang\'e.
1494 \item [Level=Incremental]
1496 \index[dir]{Directive!Level}
1497 Tous les fichiers qui ont chang\'e depuis la derni\`ere sauvegarde.
1501 \index[dir]{Directive!Pool}
1502 Sp\'ecifie l'utilisation du Pool nomm\'e {\bf Weekly}.
1504 \item [Storage=DLT\_Drive]
1505 \index[dir]{Storage }
1506 \index[dir]{Directive!Storage}
1507 Sp\'ecifie l'utilisation du lecteur {\bf DLT\_Drive} pour p\'eriph\'erique de stockage.
1509 \item [Messages=Verbose]
1510 \index[dir]{Messages }
1511 \index[dir]{Directive!Messages}
1512 Sp\'ecifie l'utilisation de la ressource messages {\bf Verbose} pour le job.
1514 \item [FullPool=Full]
1515 \index[dir]{FullPool}
1516 \index[dir]{Directive!FullPool}
1518 Sp\'ecifie l'utilisation du Pool nomm\'e {\bf Full} si le job est une sauvegarde Full,
1519 ou s'il a \'et\'e \'elev\'e en Full bien qu'ayant \'et\'e lanc\'e en tant que diff\'erentiel ou
1522 \item [DifferentialPool=Differential]
1523 \index[dir]{DifferentialPool }
1524 \index[dir]{Directive!DifferentialPool}
1525 Sp\'ecifie l'utilisation du Pool nomm\'e {\bf Differential} si le job est une
1526 sauvegarde diff\'erentielle.
1528 \item [IncrementalPool=Incremental]
1529 \index[dir]{IncrementalPool}
1530 \index[dir]{Directive!IncrementalPool}
1531 Sp\'ecifie l'utilisation du Pool nomm\'e {\bf Incremental} si le job est une
1532 sauvegarde incr\'ementale.
1534 \item [SpoolData=yes|no]
1535 \index[dir]{SpoolData}
1536 \index[dir]{Directive!SpoolData}
1537 Indique \`a Bacula d'ordonner au Storage Daemon de placer les donn\'ees sur un
1538 spool disque avant de les envoyer vers les cartouches.
1540 \item [WritePartAfterJob=yes|no]
1541 \index[dir]{WritePartAfterJob}
1542 \index[dir]{Directive!WritePartAfterJob}
1543 Indique \`a Bacula d'ordonner au Storage Daemon d'\'ecrire le fichier partition
1544 courant vers le p\'eriph\'erique lorsque le job s'ach\`eve (voir
1545 \ilink{la directive Write Part After Job dans la ressource Job}{WritePartAfterJob}).
1548 {\bf Date-time-specification} D\'etermine la planification d'ex\'ecution du job.
1549 La sp\'ecification est une r\'ep\'etition, et, par d\'efaut, Bacula est param\'etr\'e
1550 pour ex\'ecuter un job au d\'ebut de chaque heure de chaque jour de chaque semaine
1551 de chaque mois de chaque ann\'ee. Ce n'est probablement pas ce que vous souhaitez,
1552 aussi vous devez pr\'eciser ou limiter les moments o\`u vous souhaitez voir vos jobs
1553 ex\'ecut\'es. Toute sp\'ecification est suppos\'ee cyclique et servira \`a limiter le
1554 cycle par d\'efaut. Ceci se fait en sp\'ecifiant des masques ou des horaires,
1555 jours de la semaine, jours du mois, semaines du mois, semaines de l'ann\'ee et
1556 mois de l'ann\'ee o\`u vous voulez ex\'ecuter le job. En combinant ces possibilit\'es,
1557 vous pouvez d\'efinir une planification qui se r\'ep\`ete \`a presque n'importe quelle
1560 Concr\`etement, vous devez d\'efinir les {\bf mois}, {\bf jour}, {\bf heure} et
1561 {\bf minute} o\`u le job est \`a ex\'ecuter. Parmis ces quatre objets, le {\bf jour}
1562 est particulier en ce qu'il peut sp\'ecifier un jour du mois (1,2,...31) ou de la
1563 semaine (Monday, Tuesday,...Sunday). Enfin, vous pouvez aussi sp\'ecifier un
1564 jour de la semaine pour restreindre la planification \`a la premi\`ere, deuxi\`eme,
1565 troisi\`eme, quatri\`eme ou cinqui\`eme semaine du mois.
1567 Par exemple, si vous sp\'ecifiez seulement un jour de la semaine, disons {\bf Mardi},
1568 le job sera ex\'ecut\'e toutes les heures de chaque mardi de chaque mois. La raison
1569 en est que les param\`etres {\bf Mois} et {\bf Heure} sont rest\'es \`a leurs valeurs
1570 par d\'efaut : chaque mois et chaque heure.
1572 Notez que, par d\'efaut, sans autre sp\'ecification, votre job s'ex\'ecutera au
1573 d\'ebut de chaque heure. Si vous souhaitez que votre job s'ex\'ecute plus souvent
1574 qu'une fois par heure, il vous faudra d\'efinir plusieurs sp\'ecifications {\bf run}
1575 avec pour chacune une minut diff\'erente.
1577 Les dates et horaires d'ex\'ecutions des jobs peuvent \^etre sp\'ecifi\'es comme suit,
1584 <week-keyword> = 1st | 2nd | 3rd | 4th | 5th | first |
1585 second | third | forth | fifth
1586 <wday-keyword> = sun | mon | tue | wed | thu | fri | sat |
1587 sunday | monday | tuesday | wednesday |
1588 thursday | friday | saturday
1589 <week-of-year-keyword> = w00 | w01 | ... w52 | w53
1590 <month-keyword> = jan | feb | mar | apr | may | jun | jul |
1591 aug | sep | oct | nov | dec | january |
1592 february | ... | december
1593 <daily-keyword> = daily
1594 <weekly-keyword> = weekly
1595 <monthly-keyword> = monthly
1596 <hourly-keyword> = hourly
1597 <digit> = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0
1598 <number> = <digit> | <digit><number>
1599 <12hour> = 0 | 1 | 2 | ... 12
1600 <hour> = 0 | 1 | 2 | ... 23
1601 <minute> = 0 | 1 | 2 | ... 59
1602 <day> = 1 | 2 | ... 31
1603 <time> = <hour>:<minute> |
1604 <12hour>:<minute>am |
1606 <time-spec> = <at-keyword> <time> |
1608 <date-keyword> = <void-keyword> <weekly-keyword>
1609 <day-range> = <day>-<day>
1610 <month-range> = <month-keyword>-<month-keyword>
1611 <wday-range> = <wday-keyword>-<wday-keyword>
1612 <range> = <day-range> | <month-range> |
1614 <date> = <date-keyword> | <day> | <range>
1615 <date-spec> = <date> | <date-spec>
1616 <day-spec> = <day> | <wday-keyword> |
1617 <day-range> | <wday-range> |
1618 <week-keyword> <wday-keyword>
1619 <day-range> | <wday-range> |
1621 <month-spec> = <month-keyword> | <month-range> |
1623 <date-time-spec> = <month-spec> <day-spec> <time-spec>
1629 Notez que les sp\'ecifications de semaine et d'ann\'ee suivent les d\'efinitions ISO
1630 standard de semaine et ann\'ee, o\`u la semaine 1 est la semaine qui contient le
1631 premier jeudi de l'ann\'ee, ou alternativement, la semaine qui contient le
1632 quatri\`eme jour de janvier. Les semaines sont num\'erot\'ees w01 \`a w53. w00 est
1633 pour Bacula la semaine qui pr\'ec\`ede la premi\`ere semaine ISO (c'est \`a dire celle
1634 qui contient les quelques premiers jours de l'ann\'ee si aucun n'est un jeudi).
1635 w00 n'est pas d\'efinie dans les sp\'ecifications ISO. Une semaine commence le Lundi
1636 et se termine le Dimanche.
1638 Voici un exemple de ressource Schedule nomm\'ee {\bf WeeklyCycle} qui ex\'ecute
1639 un job de niveau Full chaque Dimanche \`a 1h05 et un job de niveau incr\'emental
1640 du Lundi au Samedi \`a 1h05 :
1645 Name = "WeeklyCycle"
1646 Run = Level=Full sun at 1:05
1647 Run = Level=Incremental mon-sat at 1:05
1652 Voici un exemple de cycle mensuel :
1657 Name = "MonthlyCycle"
1658 Run = Level=Full Pool=Monthly 1st sun at 1:05
1659 Run = Level=Differential 2nd-5th sun at 1:05
1660 Run = Level=Incremental Pool=Daily mon-sat at 1:05
1665 Le premier de chaque mois :
1671 Run = Level=Full on 1 at 1:05
1672 Run = Level=Incremental on 2-31 at 1:05
1677 Toutes les dix minutes :
1683 Run = Level=Full hourly at 0:05
1684 Run = Level=Full hourly at 0:15
1685 Run = Level=Full hourly at 0:25
1686 Run = Level=Full hourly at 0:35
1687 Run = Level=Full hourly at 0:45
1688 Run = Level=Full hourly at 0:55
1693 \subsection*{Notes techniques sur les Schedules}
1694 \index[general]{Schedules!Technical Notes on }
1695 \index[general]{Technical Notes on Schedules }
1696 \addcontentsline{toc}{subsection}{Notes techniques sur les Schedules}
1697 Au niveau interne, Bacula consid\`ere un schedule en tant que bit masque.
1698 Il y a six masques et un champ minute pour chaque schedule. Les masques sont
1699 heure, jour du mois (mday), jour de la semaine (wday), semaine du mois (wom),
1700 et semaine de l'ann\'ee (woy). Le schedule est initialis\'e de fa\
\ 3on \`a avoir les
1701 bits de chacun de ces masques positionn\'es, ce qui signifie qu'au d\'ebut de chaque
1702 heure, le job sera ex\'ecut\'e. Quand vous sp\'ecifiez un mois pour la premi\`ere
1703 fois, le masque est effac\'e et le bit correspondant au mois s\'electionn\'e est
1704 ajout\'e au masque. Si vous sp\'ecifiez un second mois, le bit correspondant
1705 est aussi ajout\'e. Ainsi, lorsque Bacula examine le masque pour voir si
1706 les bits plac\'es correspondent \`a la date courante, votre job ne sera ex\'ecut\'e
1707 que pendant les deux mois que vous avez sp\'ecifi\'es. De m\^eme, si vous sp\'ecifiez
1708 un horaire, le masque Heure est effac\'e et le bit correspondant \`a l'heure que
1709 vous avez sp\'ecifi\'ee est plac\'e, les minutes sont quant \`a elles stock\'ees dans le
1712 Pour chacun de vos schedules, vous pouvez visualiser le masque associ\'e
1713 grâce \`a la commande {\bf show schedules} du programme Console.
1714 Notez que le bit masque est "zero based", et que Dimanche est le premier
1715 jour de la semaine (bit 0)
1717 \subsection*{La ressource FileSet }
1718 \label{FileSetResource}
1719 \index[general]{Resource!FileSet }
1720 \index[general]{FileSet Resource }
1721 \addcontentsline{toc}{subsection}{FileSet Resource}
1723 La ressource FileSet d\'efinit les fichiers \`a inclure dans une sauvegarde. Pour
1724 chaque job de type sauvegarde, il est n\'ecessaire de d\'efinir au moins une
1725 ressource {\bf FileSet}. Un {\bf FileSet} consiste en une liste de fichiers
1726 ou r\'epertoires \`a inclure, une liste de fichiers ou r\'epertoires \`a exclure, et
1727 diverses options de sauvegardes telles que compression, chiffrement et
1728 signatures qui doivent \^etre appliqu\'ees \`a chaque fichier.
1730 Toute modification de la liste des fichiers inclus provoque la cr\'eation par Bacula
1731 d'un nouveau FileSet (d\'efini par le nom et la somme de contr\^ole MD5 du contenu
1732 du paragraphe Include). Chaque fois qu'un nouveau FileSet est cr\'e\'e, Bacula
1733 s'assure que la premi\`ere sauvegarde est une Full.
1738 \index[dir]{FileSet }
1739 D\'ebut de la ressource FileSet. Au moins une ressource {\bf FileSet} doit
1742 \item [Name = \lt{}name\gt{}]
1744 Le nom de la ressource FileSet. Cette directive est requise.
1746 \item [Ignore FileSet Changes = \lt{}yes|no\gt{}]
1747 \index[dir]{Ignore FileSet Changes }
1748 Si cette directive est activ\'ee ({\bf yes}), toute modification des listes
1749 d'inclusion ou d'exclusion du FileSet sera ignor\'ee et Bacula n'\'el\`evera
1750 pas la prochaine sauvegarde en Full. La valeur par d\'efaut est {\bf no}, ainsi,
1751 si vous modifiez une des listes d'inclusion ou d'exclusion du FileSet, Bacula
1752 forcera une sauvegarde Full pour assurer que tout soit bien sauvegard\'e
1753 proprement. Il n'est pas recommand\'e d'activer cette directive. Cette directive
1754 est disponible \`a partir de Bacula 1.35.4.
1756 \item [{Include \ \{ [ Options \{\lt{}file-options\gt{}\} ...]
1757 \lt{}file-list\gt{} \}
1759 \index[dir]{Include \ \{ [ Options \{\lt{}file-options\gt{}\} ...]
1760 \lt{}file-list\gt{} \} }
1762 \item [Options \ \{ \lt{}file-options\gt{} \}
1764 \index[dir]{Options \ \{ \lt{}file-options\gt{} \} }
1766 \item [Exclude \ \{ \lt{}file-list\gt{} \}]
1767 \index[dir]{Exclude \ \{ \lt{}file-list\gt{} \} }
1769 La ressource Include doit contenir une liste de r\'epertoires et/ou fichiers
1770 \`a traiter lors de la sauvegarde. Normalement, tous les fichiers trouv\'es dans
1771 tous les sous-r\'epertoires de tout r\'epertoire de la liste d'inclusion des
1772 fichiers seront sauvegard\'es. La ressource Include peut aussi comporter une
1773 ou plusieurs ressources Options qui sp\'ecifient des param\`etres tels que
1774 la compression \`a appliquer \`a tous les fichiers ou \`a n'importe quel sous ensemble
1775 de fichiers \`a sauvegarder.
1777 Le nombre de ressources {\bf Include} par FileSet n'est pas limit\'e, chacune ayant
1778 sa propre liste de r\'epertoires et/ou fichiers \`a sauvegarder et ses propres
1779 param\`etres d\'efinis par une ou plusieurs ressources Options. La liste de fichiers
1780 {\bf file-list} consiste en un nom de fichier ou r\'epertoire par ligne.
1781 Les noms de r\'epertoire doivent \^etre sp\'ecifi\'es sans slash final.
1783 Vous devez toujours sp\'ecifier des chemins absolus pour tout fichier ou
1784 r\'epertoire que vous placez dans un FileSet. De plus, sur les machines Windows,
1785 vous devez {\bf toujours} pr\'efixer le r\'epertoire ou nom de fichier d'une
1786 sp\'ecification de disque (par exemple : {\bf c:/xxx}) en utilisant le s\'eparateur
1787 de r\'epertoire Unix (slash /).
1789 Le comportement par d\'efaut de Bacula en ce qui concerne le traitement des
1790 r\'epertoires est de descendre r\'ecursivement dans chaque r\'epertoire
1791 et de sauvegarder tous les fichiers et sous-r\'epertoires. Par d\'efaut, Bacula
1792 ne suit pas les syst\`emes de fichiers transverses (en terminologie Unix, les
1793 points de montage). Ceci signifie que si vous sp\'ecifiez la partition racine
1794 ( par exemple /), Bacula sauvegardera seulement la partition racine, et aucun
1795 des syst\`emes de fichiers mont\'es. De fa\
\ 3on analogue, sur les syst\`emes Windows,
1796 vous devez expliciter chacun des disques que vous souhaitez sauvegarder (par
1797 exemple {\bf c:/} et {\bf d:/}...). De plus, au moins pour les syst\`emes
1798 Windows, il sera la plupart du temps n\'ecessaire d'encadrer chaque sp\'ecification
1799 de doubles quotes, particuli\`erement si le nom du r\'epertoire (ou du fichier)
1800 comporte des espaces. La commande {\bf df} des syst\`emes Unix vous fournira
1801 la liste des r\'epertoires qu'il vous faudra sp\'ecifier pour tout sauvegarder.
1802 Voyez ci-dessous pour un exemple.
1804 Soyez attentif \`a ne pas inclure un r\'epertoire deux fois, car il serait
1805 sauvegard\'e deux fois, ce qui gaspillerait l'espace sur votre p\'eriph\'erique
1806 de sauvegarde. Cette erreur est facile \`a commettre. Par exemple :
1813 Options { compression=GZIP }
1818 Sur un syst\`eme Unix o\`u /usr est un sous r\'epertoire (plut\^ot qu'un syst\`eme de
1819 fichiers mont\'e), cette ressource Include sauvegarderait /usr deux fois.
1820 Dans ce cas, sur les versions ant\'erieures \`a 1.32f-5-09Mar04, en raison
1821 d'un bug, vous ne pourriez restaurer les fichiers li\'es physiquement sauvegard\'es
1824 Si vous avez utilis\'e des versions de Bacula ant\'erieures \`a 1.34.3, vous noterez
1825 ces modifications dans la syntaxe des FileSets :
1828 \item il n'y a pas de signe \'egale (=) apr\`es le "include" et avant l'accolade
1830 \item chaque r\'epertoire (ou nom de fichier) \`a sauvegarder est pr\'ec\'ed\'e de
1832 \item les options qui apparaissaient pr\'ec\'edemmant sur la ligne Include doivent
1833 d\'esormais \^etre sp\'ecifi\'ees dans leur propre ressource Options.
1836 La ressource Options est optionnelle, mais lorsqu'elle est sp\'ecifi\'ee, elle doit
1837 contenir une liste de lignes "{\bf mot-clef=valeur}" relatives aux options \`a appliquer
1838 \`a la liste de fichiers/r\'epertoires. Plusieurs ressources Options peuvent \^etre
1839 sp\'ecifi\'ees l'une apr\`es l'autre. Lorsqu'un fichier se trouve dans un dossier
1840 sp\'ecifi\'e, les options sont appliqu\'ees au nom de fichier pour savoir s'il doit
1841 \^etre sauvegard\'e, et comment. Les ressources Options sont appliqu\'ees dans l'ordre
1842 o\`u elles appara\^issent dans le FileSet jusqu'\`a ce qu'il y en ait une qui corresponde.
1843 Une ressource Options qui ne contient pas de directive {\bf wild} (sp\'ecification
1844 de caract\`ere joker, voir ci-dessous) est consid\'er\'ee comme concernant tous les
1845 fichiers. Il est important de bien comprendre ceci, car une fois que Bacula a
1846 d\'etermin\'e que des Options s'appliquent \`a un fichier donn\'e, ce fichier sera
1847 sauvegard\'e sans tenir compte d'aucunes des \'eventuelles autres ressources Options.
1848 Ceci signifie que toute ressource Options avec caract\`eres joker doit appara\^itre
1849 avant une ressource Options sans caract\`eres joker.
1851 Si, pour quelque raison, Bacula applique toutes les ressources Options \`a un
1852 fichier sans qu'aucune ne corresponde (en g\'en\'eral \`a cause de caract\`eres joker
1853 qui ne correspondent pas), par d\'efaut Bacula sauvegardera le fichier. Ceci est
1854 assez logique si vous consid\'erez la situation sans options, o\`u vous souhaitez
1855 que tout soit sauvegard\'e. De plus, dans le cas ou aucune correspondance n'est
1856 trouv\'ee, Bacula utilise les options de la derni\`ere ressource Options. Par cons\'equent,
1857 si vous souhaitez d\'efinir un jeu d'options par d\'efaut, vous devriez les placer
1858 dans la derni\`ere ressource Options.
1860 Les directives disponibles pour les ressources Options sont les suivantes :
1863 \item [compression=GZIP]
1864 \index[dir]{compression }
1865 Tous les fichiers sauvegard\'es sont compress\'es (NDT : compression logicielle,
1866 par opposition \`a la compression mat\'erielle effectu\'ee par le lecteur) au
1867 format GNU ZIP. Chaque fichier est compress\'e individuellement par le File
1868 Daemon. S'il y a un probl\`eme \`a la lecture d'une cartouche au niveau de
1869 l'enregistrement d'un fichier, il affectera tout au plus ce fichier et aucun
1870 des autres fichiers de la cartouche. La plupart du temps, cette option n'est
1871 pas n\'ecessaire si vous avez un lecteur de bandes moderne qui applique sa
1872 propre compression. En fait, si vous activez les deux compressions
1873 simultan\'ement, il se peut que vos fichiers occupent plus d'espace sur le
1874 volume qu'avec une seule.
1876 La compression logicielle est particuli\`erement int\'eressante lorsque vous
1877 sauvegardez sur disque, et peut \^etre d'un grand secours si vous avez un
1878 ordinateur rapide mais un r\'eseau lent.
1880 La sp\'ecification {\bf GZIP} utilise le niveau de compression six par d\'efaut
1881 (i.e. {\bf GZIP} est \'equivalent \`a {\bf GZIP6}). Si vous voulez utiliser un
1882 niveau diff\'erent (de 1 \`a 9), vous pouvez le sp\'ecifier en ajoutant le num\'ero
1883 du niveau voulu \`a la fin du mot {\bf GZIP}, sans espace. Ainsi, {\bf compression=GZIP1}
1884 d\'esigne la compression la moins efficace, mais l'algorithme le plus rapide,
1885 tandis que {\bf compression=GZIP9} est le niveau de compression le plus \'elev\'e,
1886 mais requi\`ere plus de puissance de calcul. Selon la documentation GZIP, les
1887 niveaux de compression sup\'erieurs \`a 6 ne procurent g\'en\'eralement que peu
1888 de compression suppl\'ementaire alors qu'ils sont plut\^ot exigeants en puissance
1891 \item [signature=SHA1]
1892 \index[dir]{signature }
1893 La signature SHA1 est calcul\'ee pour tous les fichiers sauvegard\'es.
1894 L'algorithme SHA1 est
1895 r\'eput\'e plus lent que MD5, mais bien meilleur d'un point de vue cryptographique
1896 (i.e. beaucoup moins de collisions et probabilit\'e de piratage bien inf\'erieure.).
1897 Nous recommandons fortement d'activer l'une ou l'autre des options SHA1 ou MD5
1898 par d\'efaut pour tous les fichiers. Notez que seule l'une de ces deux options
1899 peut \^etre activ\'ee pour tout fichier.
1901 \item [signature=MD5]
1902 \index[dir]{signature }
1903 La signature MD5 est calcul\'ee pour tous les fichiers sauvegard\'es. Activer cette
1904 option r\'esulte en une charge CPU suppl\'ementaire de l'ordre de 5\% pour chaque
1905 fichier sauvegard\'e. D'autre part, la signature MD5 ajoute 16 octets
1906 suppl\'ementaires au catalogue pour chaque fichier sauvegard\'e. Nous recommandons
1907 fortement d'activer l'une ou l'autre des options SHA1 ou MD5 par d\'efaut pour tous
1910 \item [verify=\lt{}options\gt{}]
1911 \index[dir]{verify }
1912 Les "options-lettres" sont utilis\'ees lors de l'ex\'ecution de jobs de type {\bf Verify}
1913 de niveau {\bf Level=Catalog} et de niveau {\bf Level=DiskToCatalog}. Les options
1914 peuvent \^etre n'importe quelle combinaison de ces lettres.
1922 compare bits de permissions
1925 compare le nombre de liens
1928 compare les user ids
1931 compare les group ids
1937 compare les date d'acc\`es (access time)
1940 compare les dates de modification (st\_mtime)
1943 compare les dates de changement (st\_ctime)
1946 signale tout fichier dont la taille a diminu\'e
1949 compare les signatures MD5
1952 compare les signatures SHA1
1955 Le jeu d'options {\bf pins5} (qui compare les bits de permissions, les inodes,
1956 les nombres de liens, la taille des fichiers et les signatures MD5) est tr\`es
1957 utile pour des jobs de type verify de niveaux {\bf Level=Catalog} ou
1958 {\bf Level=DiskToCatalog}.
1960 \item [{\bf onefs=yes|no}]
1962 Si cette option est activ\'ee (valeur {\bf yes}, par d\'efaut), Bacula ne
1963 changera pas de syst\`eme de fichiers. Autrement dit, il ne sauvegardera pas
1964 les syst\`emes de fichiers mont\'es sur des sous-r\'epertoires. Si vous souhaitez
1965 sauvegarder plusieurs syst\`emes de fichiers, vous pouvez les \'enum\'erer
1966 explicitement. Une autre possibilit\'e consiste \`a d\'esactiver l'option onefs
1967 ({\bf onefs=no}) afin que Bacula sauvegarde les syst\`emes de fichiers mont\'es
1968 trouv\'es dans les r\'epertoires list\'es dans votre FileSet. Ainsi, si vous avez
1969 des syst\`emes de fichiers NFS ou Samba mont\'es sur un r\'epertoire list\'e dans le
1970 FileSet, ils seront aussi sauvegard\'es. En principe, il est pr\'ef\'erable
1971 d'activer cette option et de nommer explicitement chaque syst\`eme de fichier
1972 que vous voulez sauvegarder. Ce nommage explicite \'evite le risque de tomber
1973 dans une boucle infinie de syst\`emes de fichiers. Voyez l'exemple ci-dessous
1974 pour plus de d\'etails.
1978 \item [{\bf portable=yes|no}]
1979 \index[dir]{portable }
1980 Si cette option est activ\'ee (la valeur par d\'efaut est {\bf no}), le File Daemon
1981 sauvegarde les fichiers win32 dans un format portable, mais tous les attributs
1982 de fichiers win32 ne seront pas sauvegard\'es ni restaurables. La valeur par
1983 d\'efaut est {\bf no}, ce qui signifie que sur les syst\`emes Win32, les donn\'ees
1984 sont sauvegard\'ees en utilisant les appels Windows API et sur les WinNT/2k/XP,
1985 tous les attributs de s\'ecurit\'e et de propri\'et\'e sont correctement sauvegard\'es
1986 et restaur\'es. Cependant, ce format n'est pas portable aux autres syst\`emes
1987 -- par exemple UNIX, Win95/98/Me. Lors de la sauvegarde de syst\`emes Unix,
1988 cette option est ignor\'ee, et \`a moins que vous n'ayez un besoin sp\'ecifique de
1989 portabilit\'e de vos sauvegardes, nous recommandons d'accepter la valeur par
1990 d\'efaut ({\bf no}) de sorte qu'un maximum d'informations concernant vos
1991 fichiers soit sauvegard\'e.
1993 \item [{\bf recurse=yes|no}]
1994 \index[dir]{recurse }
1995 Si cette option est activ\'ee (la valeur par d\'efaut est {\bf yes}), Bacula
1996 descend r\'ecursivement dans tout sous-r\'epertoire trouv\'e, \`a moins qu'il ne soit
1997 explicitement exclu par une d\'efinition {\bf exclude}. Si vous d\'esactivez cette
1998 option ({\bf recurse=no}), Bacula sauvegardera toutes les entr\'ees de sous-
1999 r\'epertoires, mais n'entrera pas dans ces sous-r\'epertoires, et ainsi ne
2000 sauvegardera pas les fichiers ou \'epertoires contenus dans ces sous-r\'epertoires.
2001 En principe, vous pr\'ef\`ererez la valeur par d\'efaut ({\bf yes}).
2003 \item [{\bf sparse=yes|no}]
2004 \index[dir]{sparse }
2005 Cette option active un code sp\'ecial qui d\'etecte les fichiers clairsem\'es tels
2006 ceux cr\'e\'es par ndbm. Elle est d\'esactiv\'ee par d\'efaut ({\bf sparse=no}), de sorte
2007 qu'aucun contr\^ole n'est fait pour rechercher les fichiers clairsem\'es. Vous
2008 pouvez l'activer sans danger sur des fichiers non clairsem\'es, cependant elle
2009 entra\^ine une l\'eg\`ere charge suppl\'ementaire pour la d\'etection de tampons remplis
2010 de z\'eros (buffers of all zero), et un l\'eger surplus d'espace sur l'archive
2011 de sortie sera utilis\'e pour ssauver les adresses de recherche de chaque
2012 enregistrement non-nul trouv\'e.
2014 {\bf Restrictions:} Bacula lit les fichiers dans des tampons de 32K. Si le tampon
2015 entier est rempli de z\'eros, il sera trait\'e en tant que bloc clairsem\'e, et ne sera pas
2016 \'ecrit sur la cartouche. En revanche, si une partie quelconque du tampon est
2017 non-nulle, le tampon sera int\'egralement copi\'e sur la cartouche, avec \'eventuellement
2018 des secteurs de disque (g\'en\'eralement 4098 octets) enti\`erement nuls. La d\'etection par
2019 Bacula des blocs clairsem\'es a lieu sur des blocs de 32K plut\^ot que sur des blocs de
2020 taille d\'etermin\'ee par le syst\`eme. Si quelqu'un consid\`ere ceci comme un r\'eelle
2021 probl\`eme, merci d'envoyer une demande de modification en exposant les raisons.
2022 Ce code est apparu avec la version 1.27 de Bacula.
2024 Si vous n'\^etes pas familier avec les notions de fichiers clairsem\'es, prenons
2025 pour exemple un fichier o\`u vous \'ecrivez 512 octets \`a l'adresse 0, puis 512 octets
2026 \`a l'adresse 1 million. Le syst\`eme d'exploitation n'allouera que deux blocs, et
2027 rien n'est allou\'e pour l'espace vide. Pourtant, lorsque vous lisez le fichier
2028 clairsem\'e, le syst\`eme retourne tous les z\'eros comme si l'espace \'etait allou\'e,
2029 et si vous sauvegardez un tel fichier, vous utiliserez beaucoup d'espace
2030 sur le volume pour \'ecrire des z\'eros. Pire encore, lorsque vous restaurez ce
2031 fichier \`a son emplacement initial, tous les emplacements pr\'ec\'edemment vides
2032 seront cette fois allou\'es, occupant ainsi beaucoup plus d'espace disque.
2033 En activant l'option {\bf sparse}, Bacula recherchera sp\'ecifiquement l'espace
2034 vide dans les fichiers afin d'\'eviter ces inconv\'enients. Le prix \`a payer est que
2035 Bacula doit d'abord examiner chaque bloc lu avant de l'\'ecrire. Sur un syst\`eme lent,
2036 ceci peut-\^etre important. Si vous suspectez certains de vos fichiers d'\^etre
2037 clairsem\'es, vous devriez mesurer les performances et gains d'espace avec et
2038 sans l'options, ou ne l'activer que pour les fichiers effectivement
2043 \item [{\bf readfifo=yes|no}]
2044 \index[dir]{readfifo }
2045 Cette option, si elle est activ\'ee, indique au client de lire les donn\'ees
2046 (lors d'une sauvegarde) et de les \'ecrire (lors d'une restauration) sur
2047 un FIFO (pipe) explicitement explicitement mentionn\'e dans le FileSet.
2048 Dans ce cas, vous devez avoir un programme actif qui \'ecrit sur ce FIFO
2049 dans le cas d'une sauvegarde, ou qui le lit dans le cas d'une restauration.
2050 (Ceci peut \^etre accompli par la directive {\bf RunBeforeJob}). Si cette
2051 condition n'est pas satisfaite, Bacula demeurera en suspens ind\'efiniment
2052 en lecture/\'ecriture du FIFO. Lorsque cette option est d\'esactiv\'ee (par d\'efaut),
2053 le Client sauvegarde simplement l'entr\'ee du r\'epertoire pour le FIFO.
2055 \item [{\bf mtimeonly=yes|no}]
2056 \index[dir]{mtimeonly }
2057 Cette option, si elle est activ\'ee, indique au client que la s\'election de fichiers
2058 lors d'une sauvegarde incr\'ementale ou diff\'erentielle ne doit se r\'ef\'erer qu'aux valeurs
2059 de st\_mtime du paquet stat(). La valeur par d\'efaut est {\bf no}, ce qui signifie
2060 que la s\'election de fichiers \`a sauvegarder se base sur les deux valeurs st\_mtime et
2061 st\_ctime. En g\'en\'eral, il n'est pas recommand\'e d'activer cette option.
2063 \item [{\bf keepatime=yes|no}]
2064 \index[dir]{keepatime }
2065 Avec cette option activ\'ee, Bacula r\'etablit le champ st\_atime (date d'acc\`es) des
2066 fichiers qu'il sauvegarde \`a leur valeur d'avant la sauvegarde. Cette option
2067 n'est g\'en\'eralement pas recommand\'ee car il existe peu de programmes qui utilisent
2068 st\_atime, et la charge de la sauvegarde se trouve augment\'ee par les appels
2069 syst\`emes n\'ecessaires pour r\'etablir les dates. (Je ne suis pas sur que ceci
2070 fonctionne sous Win32).
2072 \item [{\bf wild=\lt{}string\gt{}}]
2074 Sp\'ecifie une cha\^ine de caract\`eres jokers \`a appliquer aux fichiers. Notez
2075 que si {\bf Exclude} n'est pas activ\'ee, cette cha\^ine s\'electionnera les fichiers
2076 \`a sauvegarder. Si au contraire {\bf Exclude=yes} est sp\'ecifi\'e, la cha\^ine
2077 s\'electionnera les fichiers \`a exclure de la sauvegarde. Plusieurs directives
2078 wild-card peuvent \^etre sp\'ecifi\'ees et sont appliqu\'ees s\'equentiellement
2079 jusqu'\`a ce que l'une d'elles corresponde.
2081 \item [{\bf regex=\lt{}string\gt{}}]
2083 Sp\'ecifie une expression r\'eguli\`ere \'etendue POSIX \`a appliquer aux fichiers.
2084 Cette directive est disponible \`a partir de Bacula 1.35. Si {\bf Exclude} n'est
2085 pas activ\'ee, cette expression r\'eguli\`ere s\'electionnera les fichiers \`a
2086 sauvegarder. Si au contraire {\bf Exclude=yes} est sp\'ecifi\'e, elle s\'electionnera
2087 les fichiers \`a exclure de la sauvegarde. Plusieurs directives regex peuvent \^etre
2088 sp\'ecifi\'ees et sont appliqu\'ees s\'equentiellement jusqu'\`a ce que l'une d'elles corresponde.
2090 \item [{\bf exclude=yes|no}]
2091 \index[dir]{exclude }
2092 Lorsque cette option est activ\'ee, tout fichier qui correspond aux options est exclu de
2093 la sauvegarde. La valeur par d\'efaut est {\bf no}.
2097 \item [{\bf aclsupport=yes|no}]
2098 \index[dir]{aclsupport }
2099 Si cette option est activ\'ee, et si vous avez install\'e la librarie POSIX {\bf libacl}
2100 sur votre syst\`eme, Bacula sauvegardera Listes de Contr\^oles d'Acc\`es (ACL) UNIX des
2101 fichiers et r\'epertoires telles que d\'efinies dans IEEE Std 1003.1e version 17 et
2102 "POSIX.1e" (abandonn\'e). Cette fonction n'est disponible que sur UNIX et d\'epend de
2103 la librairie ACL. Bacula est automatiquement compil\'e avec le support ACL si la
2104 librairie {\bf libacl} est install\'ee sur votre syst\`eme (ceci est report\'e dans
2105 le fichier config.out). Lors de la restauration, Bacula tentera de restaurer les
2106 ACLs. S'il n'y a pas de support ACL sur le syst\`eme cible, Bacula ne restaurera que les
2107 fichiers et r\'epertoires sans les informations ACL. Veuillez noter que si vous
2108 sauvegardez un syst\`eme de fichiers EXT3 ou XFS avec le support des ACLs, et que vous
2109 restaurez vers un syst\`eme de fichiers sans ACLs (tel , peut-\^etre reiserfs), les
2110 ACLs seront ignor\'ees.
2114 {\bf \lt{}file-list\gt{}} est une liste de r\'epertoires et/ou noms de fichiers sp\'ecifi\'es
2115 avec la directive {\bf File =}. Pour inclure des noms contenant des espaces,
2116 entourez-les de guillemets (doubles quotes).
2118 Il existe quelques notations particuli\`eres pour sp\'ecifier des fichiers et r\'epertoires
2119 dans une liste de fichiers {\bf file-list}. Les voici :
2122 \item Tout nom pr\'ec\'ed\'e d'un signe "at" (@) est compris comme le nom d'un fichier,
2123 lequel contient une liste de fichiers, chacun pr\'ec\'ed\'e d'une directive "File=".
2124 Ce fichier est lu lorsque le fichier de configuration est parcouru au d\'emarrage
2125 du Director. Notez bien que le fichier est lu sur sur la machine qui h\'eberge le
2126 Director (autrement dit, le serveur de sauvegardes) et non sur le Client.
2127 En fait, le "@NomDeFichier" peut appara\^itre n'importe o\`u dans le fichier de
2128 configuration o\`u un objet pourrait \^etre lu, le contenu du fichier d\'esign\'e sera
2129 logiquement ins\'er\'e \`a l'emplacement du "@NomDeFichier". Ce qui doit figurer dans le
2130 fichier d\'epend de l'emplacement du "@NomDeFichier" au sein du fichier de
2132 \item Tout nom pr\'ec\'ed\'e d'une barre verticale (|) est compris comme le nom d'un
2133 programme. Ce programme sera ex\'ecut\'e sur la machine qui h\'eberge le Director au
2134 moment o\`u le job d\'emarre (et non lorsque le Director lit son fichier de
2135 configuration), et toute sortie de ce programme sera per\
\ 3u en tant que liste
2136 de fichiers ou r\'epertoires, un par ligne, \`a inclure. Ceci vous permet d'avoir un
2137 job qui, par exemple, inclue toutes les partitions locales m\^eme si vous changez le
2138 partitionnement en ajoutant des disques. En g\'en\'eral, il vous faudra pr\'ec\'eder
2139 votre commande d'un "{\bf sh -c}" afin qu'elle soit invoqu\'ee par un shell.
2140 Ce ne sera pas le cas si vous invoquez un script comme dans le second exemple
2141 ci-dessous. Vous devez aussi prendre soin d'\'echapper (pr\'ec\'eder d'un \textbackslash{})
2142 les caract\`eres jokers, les caract\`eres du shell, ainsi que toute espace dans votre
2143 commande. Si vous utilisez des simples quotes (') dans des doubles quotes (``),
2144 Bacula traitera tout ce qui est entre simples quotes comme un seul champ, et il ne
2145 dera donc pas n\'ecessaire d'\'echapper les espaces. En g\'en\'eral, parvenir \`a avoir
2146 toutes les quotes et \'echappements corrects est un calvaire, comme vous pouvez
2147 le constater dans le prochain exemple. Par cons\'equent, il est souvent plus facile
2148 de tout mettre dans un fichier et d'utiliser simplement le nom de fichier dans
2149 Bacula. Dans ce cas le "{\bf sh -c}" ne sera plus n\'ecessaire, pourvu que la
2150 premi\`ere ligne du fichier soit {\bf \#!/bin/sh}.
2159 Options { signature = SHA1 }
2160 File = "|sh -c 'df -l | grep \"^/dev/hd[ab]\" | grep -v \".*/tmp\" \
2161 | awk \"{print \\$6}\"'"
2166 produira une liste de toutes les partitions locales sur un syst\`eme RedHat Linux.
2167 Notez que la ligne si dessus a \'et\'e coup\'ee, mais devrait normalement \^etre \'ecrite
2168 sur une seule ligne. Quoter est un r\'eel probl\`eme car vous devez d'une part le faire
2169 pour Bacula - ce qui consiste \`a pr\'ec\'eder tout \textbackslash{} et tout '' avec un
2170 \textbackslash{} - et d'autre part pour les commandes shell. En d\'efinitive, il est
2171 probablement plus ais\'e d'ex\'ecuter un petit fichier tel que :
2179 File = "|my_partitions"
2184 o\`u le fichier my\_partitions contient :
2189 df -l | grep "^/dev/hd[ab]" | grep -v ".*/tmp" \
2194 Si la barre verticale (|) devant "my\_partitions" est pr\'ec\'ed\'ee d'une barre oblique
2195 (\textbackslash{}), le programme sera ex\'ecut\'e sur la machine cliente plut\^ot que sur
2196 la machine h\'ebergeant le Director -- (ceci est impl\'ement\'e, mais n'est pas compl\`etement
2197 test\'e, et a \'et\'e rapport\'e fonctionner sous Windows). Veuillez noter que si le nom de
2198 fichier est donn\'e entre quotes, vous devrez utiliser deux barres obliques. Voci un
2199 exemple, fourni par John Donagher, qui sauvegarde toutes les partitions UFS locales
2200 sur un syst\`eme distant :
2205 Name = "All local partitions"
2207 Options { signature=SHA1; onefs=yes; }
2208 File = "\\|bash -c \"df -klF ufs | tail +2 | awk '{print \$6}'\""
2214 Notez que deux barres obliques \textbackslash{} sont requises apr\`es les doubles quotes
2215 (l'une pr\'eserve l'autre). Si vous utilisez Linux, changez simplement {\bf ufs} en {\bf ext3}
2216 (ou votre syst\`eme de fichiers pr\'ef\'er\'e) et l'affaire sera dans le sac.
2218 \item Tout \'el\'ement de la liste de fichiers file-list pr\'ec\'ed\'e par un signe "inf\'erieur" (\lt{})
2219 est interpr\'et\'e comme un fichier qui sera lu sur la machine qui h\'eberge le Director
2220 au moment o\`u le job d\'emarre. Son contenu est suppos\'e \^etre une liste de r\'epertoires ou
2221 fichiers, un par ligne, \`a inclure dans la sauvegarde. Les noms ne doivent pas \^etre quot\'es, m\^eme
2222 s'ils comportent des espaces. Cette fonction vous permet de modifier le fichier externe,
2223 et ainsi ce qui est sauvegard\'e sans avoir \`a red\'emarrer Bacula comme il le faudrait avec
2224 le modificateur @ d\'ecrit plus haut.
2226 Si vous pr\'ec\'edez le signe "inf\'erieur" (\lt{}) d'une barre oblique \textbackslash{}\lt{}, le
2227 fichier mentionn\'e sera lu sur la machine cliente au lieu de celle h\'ebergeant le Director.
2228 Veullez noter que si le nom de fichier est donn\'e entre quotes, il vous faudra utiliser deux
2231 \item Si vous sp\'ecifiez explicitement un block device (NDT ?) tel que {\bf /dev/hda1}, alors
2232 Bacula consid\`erera ceci comme une partition raw \`a sauvegarder. Dans ce cas, vous \^etes
2233 fortement invit\'e \`a utiliser l'option {\bf sparse=yes}, faute de quoi vous sauvegarderez
2234 la partition enti\`ere plut\^ot que seulement les donn\'ees r\'eellement contenues dans la
2235 partition. Par exemple :
2240 Options { signature=MD5; sparse=yes }
2246 va sauvegarder les donn\'ees de la partition /dev/hd6.
2248 will backup the data in device /dev/hd6.
2250 Ludovic Strappazon a fait remarquer que cette fonction pouvait servir \`a sauvegarder
2251 un disque Microsoft Windows. Il suffit de booter avec un Linux Rescue Disk, puis de
2252 charger un client Bacula statiquement li\'e comme d\'ecrit dans le chapitre
2253 \ilink{ Disaster Recovery avec Bacula}{_ChapterStart38} de ce manuel. Sauvegardez alors
2254 la partition compl\`ete. En cas de d\'esastre, vous pouvez alors restaurer la partition
2255 d\'esir\'ee en bootant une fois encore sur le Linux Rescue Disk et en utilisant le
2256 client Bacula statiquement li\'e.
2259 \item Si vous sp\'ecifiez explicitement un p\'eriph\'erique FIFO nomm\'e (cr\'e\'e avec mkfifo),
2260 ets si vous ajoutez l'option {\bf readfifo=yes}, Bacula lira le FIFO et sauvegardera ses
2261 donn\'ees sur le volume. Par exemple :
2270 File = /home/abc/fifo
2275 si {\bf /home/abc/fifo} est un FIFO, Bacula va l'ouvrir, le lire, et stocker
2276 toutes les donn\'ees ainsi obtenues sur le volume. Notez qu'il faut que vous ayez
2277 un processus qui \'ecrit sur le FIFO, faute de quoi Bacula restera en suspens, et
2278 abandonnera au bout d'une minute pour passer au fichier suivant. Les donn\'ees
2279 lues peuvent \^etre de nature quelconque puisque Bacula les traite comme un flux.
2281 Cette fonction est un excellent moyen de faire une sauvegarde "\`a chaud" d'une
2282 tr\`es grosse base de donn\'ees. Vous pouvez utiliser la directive {\bf RunBeforeJob}
2283 pour cr\'eer le FIFO et d\'emarrer un programme qui lit dynamiquement votre base de
2284 donn\'ees et l'\'ecrit sur le FIFO. Bacula l'\'ecrira alors sur le volume.
2286 Lors de l'op\'eration de restauration, l'inverse se produit : apr\`es que Bacula ait cr\'e\'e
2287 le FIFO, s'il y avait des donn\'ees stock\'ees par son biais (inutile de les lister
2288 explicitement ni d'ajouter aucune option), elles seront renvoy\'ees vers le FIFO.
2289 Par cons\'equent, s'il existe un tel FIFO \`a restaurer, vous devez vous assurer
2290 qu'il y a un programme lecteur ou Bacula se bloquera et passera au fichier suivant
2297 Voici un exemple de d\'efinition de ressource FileSet valide. Notez que le premier
2298 Include ins\`ere le contenu du fichier {\bf /etc/backup.list} lors du d\'emarrage
2299 de Bacula (i.e. le @).
2311 File = @/etc/backup.list
2319 File = /usr/lib/another_file
2325 Notez que dans l'exemple ci-dessus, tous les fichiers mentionn\'es dans
2326 /etc/backup.list seront compress\'e avec GZIP, qu'une signature SHA1 sera
2327 calcul\'ee sur le contenu des fichiers (leurs donn\'ees), et que la prise en
2328 charge particuli\`ere des fichiers clairsem\'es (sparse) s'appliquera.
2330 Les deux r\'epertoires /root/myfile et /usr/lib/another\_file seront aussi
2331 sauvegard\'es sans aucune option, mais tous les fichiers \`a extension {\bf .o}
2332 de ces r\'epertoires seront exlus de la sauvegarde.
2334 Supposons que vous vouliez sauvegarder tout sauf {\bf /tmp} sur votre syst\`eme.
2335 La commande {\bf df} vous fournit le r\'esultat suivant :
2340 Filesystem 1k-blocks Used Available Use% Mounted on
2341 /dev/hda5 5044156 439232 4348692 10% /
2342 /dev/hda1 62193 4935 54047 9% /boot
2343 /dev/hda9 20161172 5524660 13612372 29% /home
2344 /dev/hda2 62217 6843 52161 12% /rescue
2345 /dev/hda8 5044156 42548 4745376 1% /tmp
2346 /dev/hda6 5044156 2613132 2174792 55% /usr
2347 none 127708 0 127708 0% /dev/shm
2348 //minimatou/c$ 14099200 9895424 4203776 71% /mnt/mmatou
2349 lmatou:/ 1554264 215884 1258056 15% /mnt/matou
2350 lmatou:/home 2478140 1589952 760072 68% /mnt/matou/home
2351 lmatou:/usr 1981000 1199960 678628 64% /mnt/matou/usr
2352 lpmatou:/ 995116 484112 459596 52% /mnt/pmatou
2353 lpmatou:/home 19222656 2787880 15458228 16% /mnt/pmatou/home
2354 lpmatou:/usr 2478140 2038764 311260 87% /mnt/pmatou/usr
2355 deuter:/ 4806936 97684 4465064 3% /mnt/deuter
2356 deuter:/home 4806904 280100 4282620 7% /mnt/deuter/home
2357 deuter:/files 44133352 27652876 14238608 67% /mnt/deuter/files
2361 Si vous vous contentez de sp\'ecifier {\bf /} dans votre liste d'inclusions,
2362 Bacula ne sauvegardera que le syst\`eme de fichiers {\bf /dev/hda5}. Pour
2363 sauvegarder tous vos syst\`emes de fichiers sans inclure les syst\`emes de fichiers
2364 mont\'es Samba ou NFS et en excluant /tmp, /proc, .journal, et .autofsck, que
2365 vous ne voulez ni sauvegarder ni restaurer, vous pouvez utiliser ce qui suit :
2370 Name = Include_example
2389 /tmp \'etant sur son propre syst\`eme de fichiers et n'\'etant pas explicitement nomm\'e
2390 dans la liste d'inclusion, il n'est pas n\'ecessaire de le sp\'ecifier dans la liste
2391 d'exclusion. Cependant, il peut \^etre pr\'ef\'erable de le faire malgr\'e tout par
2392 souci de clart\'e et au cas o\`u il ne serait plus sur sa propre partition apr\`es un
2393 remplacement de disques.
2395 Ayez conscience qu'il peut \^etre {\bf tr\`es} dangereux de permettre \`a Bacula de traverser ou
2396 changer de syst\`eme de fichiers au gr\'e des ppoints de montage. Par exemple, avec ce qui suit :
2401 Name = "Bad example"
2403 Options { onefs=no }
2410 vous sauvegardez une partition NFS mont\'ee ({\bf /mnt/matou}), et puisque
2411 {\bf onefs} est d\'esactiv\'ee, Bacula traverse les syst\`emes de fichiers.
2412 Si jamais {\bf /mnt/matou} contient lui m\^eme un point de montage o\`u le syst\`eme
2413 de fichiers de la machine sauvegard\'ee est mont\'e, ce qui est souvent le cas,
2414 vous vous retrouvez pris dans un boucle r\'ecursive, et la sauvegarde ne se
2417 Le FileSet suivant sauvegarde une partition raw :
2422 Name = "RawPartition"
2424 Options { sparse=yes }
2431 Lorsque vous sauvegardez et restaurez une partition raw, vous devriez vous
2432 assurer qu'aucun autre processus, y compris le syst\`eme, n'\'ecrit sur cette
2433 partition. En guise de pr\'ecaution, nous recommandons ardemment de ne sauvegarder
2434 en mode raw que des partitions non mont\'ees, ou mont\'ees en lecture seule. Ceci peut
2435 \^etre fait si n\'ecessaire avec la directive {\bf RunBeforeJob}.
2439 \subsection*{Consid\'erations sur les FileSets Windows}
2440 \index[general]{FileSets!Windows Considerations for }
2441 \index[general]{Windows Considerations for FileSets }
2442 \addcontentsline{toc}{subsection}{Windows Considerations for FileSets}
2444 Si vous saisissez des noms de fichiers Windows, les chemins des r\'epertoires devraient
2445 \^etre pr\'ec\'ed\'es de double-points (comme dans "c:"). Cependant, les s\'eparateurs de
2446 champs doivent \^etre sp\'ecifi\'es selon la convention Unix (c'est \`a dire, la barre oblique
2447 avant : "/"). Si vous souhaitez inclure une apostrophe dans un nom de fichier, pr\'ec\'edez-la
2448 d'une barre oblique arri\`ere (\textbackslash{}\textbackslash{}). Par exemple, vous pourriez
2449 utiliser ce qui suit pour sauvegarder le r\'epertoire "My Documents" d'une machine Windows :
2454 Name = "Windows Set"
2461 File = "c:/My Documents"
2467 Pour que les listes d'exclusion fonctionnent correctement sous Windows, vous devez
2468 observer les r\`egles suivante :
2471 \item les noms de fichiers sont sensibles \`a la casse, aussi vous devez utilise la
2473 \item vous ne devez pas sp\'ecifier de barre oblique finale pour exclure un r\'epertoire ;
2474 \item si vos noms de fichiers comportent des espaces, vous devez les encadrer de
2475 quillemets. Les barres obliques arri\`eres (\textbackslash{}\textbackslash{}) ne
2477 \item si vous utilisez l'ancienne syntaxe des listes d'exclusion (mentionn\'ee ci-dessous),
2478 vous ne devriez pas sp\'ecifier la lettre r\'ef\'eren\
\ 3ant le disque dans une liste d'exclusion.
2479 La nouvelle syntaxe d\'ecrite ci-dessus devrait fonctionner correctement en incluant la lettre
2483 Merci \`a Thiago Lima pour nous avoir r\'esum\'e les points ci-dessus. Si vous rencontrez
2484 des difficult\'es pour faire fonctionner vos listes d'inclusion ou d'exclusion,
2485 songez \`a utiliser la commande {\bf estimate job=xxx listing} document\'ee
2486 dans le chapitre \ilink{Console chapter}{estimate} de ce manuel.
2488 Sur les syst\`emes Win32, si vous d\'eplacez un r\'epertoire ou si vous renommez
2489 un fichier de la liste \`a sauvegarder, et si une Full a d\'ej\`a eu lieu, Bacula
2490 ne saura reconna\^itre qu'il existe de nouveaux fichiers \`a sauvegarder lors d'une
2491 incr\'ementale ou d'une diff\'erentielle (faites-en le reproche \`a Microsoft, pas \`a moi !).
2492 Pour pallier \`a ce probl\`eme, veuillez copier tout r\'epertoire ou fichier de la
2493 zone sauvegard\'ee. Si vous ne disposez pas de suffisamment d'espace disque,
2494 d\'eplacez-les, mais lancez alors une sauvegarde Full.
2496 \subsubsection*{Exclusion de fichiers et r\'epertoires}
2497 \index[general]{Directories!Excluding Files and }
2498 \index[general]{Excluding Files and Directories }
2499 \addcontentsline{toc}{subsubsection}{Exclusion de fichiers et r\'epertoires}
2501 Vous pouvez aussi inclure des noms de fichiers ou chemins absolus, en plus
2502 de l'utilisation de caract\`eres jokers et de la directive {\bf Exclude=yes} dans
2503 les ressources Options comme expos\'e ci-dessus, en ajoutant simplement
2504 les fichiers \`a exclure dans une ressource Exclude du FileSet. Par exemple :
2509 Name = Exclusion_example
2530 \subsection*{Un exemple de FileSet Windows}
2531 \index[general]{FileSet!Windows Example }
2532 \index[general]{Un exemple de FileSet Windows}
2533 \addcontentsline{toc}{subsection}{Un exemple de FileSet Windows}
2535 Cet exemple est une contribution de Phil Stracchino :
2539 This is my Windows 2000 fileset:
2541 Name = "Windows 2000 Full Set"
2549 # Most of these files are excluded not because we don't want
2550 # them, but because Win2K won't allow them to be backed up
2551 # except via proprietary Win32 API calls.
2552 File = "/Documents and Settings/*/Application Data/*/Profiles/
2554 File = "/Documents and Settings/*/Local Settings/Application Data/
2555 Microsoft/Windows/[Uu][Ss][Rr][Cc][Ll][Aa][Ss][Ss].*"
2556 File = "/Documents and Settings/*/[Nn][Tt][Uu][Ss][Ee][Rr].*"
2557 File = "/Documents and Settings/*/Cookies/*"
2558 File = "/Documents and Settings/*/Local Settings/History/*"
2559 File = "/Documents and Settings/*/Local Settings/
2560 Temporary Internet Files/*"
2561 File = "/Documents and Settings/*/Local Settings/Temp/*"
2563 File = "/WINNT/security/logs/scepol.log"
2564 File = "/WINNT/system32/config/*"
2565 File = "/WINNT/msdownld.tmp/*"
2566 File = "/WINNT/Internet Logs/*"
2567 File = "/WINNT/$Nt*Uninstall*"
2568 File = "/WINNT/Temp/*"
2571 File = "/pagefile.sys"
2577 Remarque : les trois lignes coup\'ees de cette liste d'exclusion ne l'ont \'et\'e
2578 que pour des motifs de mise en page, elles doivent en r\'ealit\'e \^etre \'ecrites
2579 sur une seule ligne.
2581 \subsection*{L'ancienne ressource FileSet}
2582 \index[general]{Resource!Old FileSet }
2583 \index[general]{L'ancienne ressource FileSet}
2584 \addcontentsline{toc}{subsection}{L'ancienne ressource FileSet}
2586 L'ancienne Ressource FileSet des versions ant\'erieures \`a 1.34.3 est obsol\`ete,
2587 mais fonctionne encore. Nous vous encourageons \`a utiliser la nouvelle forme,
2588 car le code correspondant sera supprim\'e \`a partir de la version 1.37.
2590 \subsection*{Tester vos FileSets}
2591 \index[general]{FileSet!Testing Your }
2592 \index[general]{Tester vos FileSets }
2593 \addcontentsline{toc}{subsection}{Tester vos FileSets}
2595 Si vous voulez vous faire une id\'ee pr\'ecise de ce qui sera effectivement
2596 sauvegard\'e par un FileSet, ou si vous voulez vous assurer de l'efficacit\'e
2597 d'une liste d'exclusion, vous pouvez utiliser la commande {\bf estimate}
2598 du programme Console. Voyez \ilink{estimate command}{estimate} dans le
2599 chapitre Console de ce manuel.
2601 \subsection*{Considerations sur le nommage Windows NTFS}
2602 \index[general]{Considerations sur le nommage Windows NTFS}
2603 \index[general]{Considerations!Windows NTFS Naming }
2604 \addcontentsline{toc}{subsection}{Considerations sur le nommage Windows NTFS}
2606 Les noms de fichiers NTFS contenant des caract\`eres Unicode (i.e. \gt{} 0xFF) ne
2607 peuvent, pour le moment, \^etre nomm\'e eplicitement. Vous devez inclure de tels
2608 fichiers en d\'esignant un r\'epertoire de niveau sup\'erieur ou une lettre de disque
2609 ne contenant pas de caract\`ere Unicode.
2611 \subsection*{La ressource Client}
2612 \label{ClientResource2}
2613 \index[general]{Resource!Client }
2614 \index[general]{La ressource Client}
2615 \addcontentsline{toc}{subsection}{La ressource Client}
2617 La ressource Client d\'efinit les attributs des clients servis (sauvegard\'es)
2618 par ce Director. Il faut une ressource Client par machine sauvegard\'ee.
2622 \item [Client (ou FileDaemon)]
2623 \index[dir]{Client (ou FileDaemon)}
2624 \index[dir]{Directive!Client (or FileDaemon)}
2625 D\'ebut des directives Client.
2627 \item [Name = \lt{}name\gt{}]
2629 \index[dir]{Directive!Name}
2630 Le nom du client qui sera utilis\'e dans la directive Job de la ressource ou
2631 dans une commande run de la Console. Cette directive est requise.
2633 \item [Address = \lt{}address\gt{}]
2634 \index[dir]{Address}
2635 \index[dir]{Directive!Address}
2636 L'adresse d'un File Daemon Bacula est un nom d'h\^ote, un nom pleinement qualifi\'e
2637 ou une adresse r\'eseau au format quatre octets point\'es. Cette directive est requise.
2639 \item [FD Port = \lt{}port-number\gt{}]
2640 \index[dir]{FD Port}
2641 \index[dir]{Directive!FD Port}
2642 O\`u le port est le num\'ero de port auquel le le File Daemon peut \^etre contact\'e.
2643 La valeur par d\'efaut est 9102.
2646 \item [Catalog = \lt{}Catalog-resource-name\gt{}]
2647 \index[dir]{Catalog}
2648 \index[dir]{Directive!Catalog}
2649 Cette directive sp\'ecifie le nom de la ressource catalog \`a utiliser pour ce
2650 client. Cette directive est requise.
2652 \item [Password = \lt{}password\gt{}]
2653 \index[dir]{Password}
2654 \index[dir]{Directive!Password}
2655 Il s'agit ici du mot de passe \`a utiliser lors de la connection avec le
2656 File Daemon, aussi le fichier de configuration de la machine \`a sauvegarder
2657 doit d\'efinir le m\^eme mot de passe pour \^etre connect\'e par ce Director.
2658 Cette directive est requise. Si vous disposez de {\bf /dev/random} ou de {\bf bc}
2659 sur votre machine, Bacula g\'en\`ere des mots de passe al\'eatoires lors du processus
2660 de configuration. Dans le cas contraire, le mot de passe est laiss\'e blanc.
2662 \label{FileRetention}
2664 \item [File Retention = \lt{}time-period-specification\gt{} ]
2665 \index[dir]{File Retention }
2666 \index[dir]{Directive!Password}
2667 La directive File Retention d\'efinit la p\'eriode pendant laquelle Bacula conservera
2668 les enregistrements File dans le catalogue. Lors de l'expiration de cette p\'eriode,
2669 si la directive {\bf AutoPrune} est active ({\bf yes}), Bacula \'elague le catalogue
2670 des enregistrements File dont l'âge est sup\'erieur \`a la p\'eriode de r\'etention.
2671 Notez que ceci n'affecte que les enregistrements du catalogue, et non vos
2672 sauvegardes archiv\'ees.
2674 Les enregistrements File peuvent en fait \^etre conserv\'es pour une p\'eriode inf\'erieure
2675 \`a celle affect\'ee \`a cette directive dans les cas o\`u vous avez sp\'ecifi\'e des p\'eriodes
2676 plus courtes pour les directives {\bf Job Retention} ou {\bf Volume Retention}.
2677 La plus courte des trois prend le pas sur les autres. Les dur\'ees peuvent \^etre exprim\'ees
2678 en secondes, minutes, heures, jours, semaines, mois, trimestres ou ann\'ees. Consultez
2679 le chapitre \ilink{Adapter les fichiers de configuration}{Time} de ce manuel pour plus de d\'etails sur les
2680 sp\'ecifications de dur\'ees.
2682 La valeur par d\'efaut est de 60 jours.
2683 \label{JobRetention}
2685 \item [Job Retention = \lt{}time-period-specification\gt{} ]
2686 \index[dir]{Job Retention}
2687 \index[dir]{Directive!Job Retention}
2688 La directive Job Retention d\'efinit la p\'eriode pendant laquelle Bacula conservera
2689 les enregistrements Job dans le catalogue. Lors de l'expiration de cette p\'eriode,
2690 si la directive {\bf AutoPrune} est active ({\bf yes}), Bacula \'elague le catalogue
2691 des enregistrements File dont l'âge est sup\'erieur \`a la p\'eriode de r\'etention.
2692 Notez que ceci n'affecte que les enregistrements du catalogue, et non vos
2693 sauvegardes archiv\'ees.
2695 Si un enregistrement de Job est s\'electionn\'e pour \'elagage, tous les enregistrements File
2696 et JobMedia associ\'es seront aussi \'elagu\'es du catalogue, sans qu'il ne soit tenu compte
2697 de la p\'eriode File Retention d\'efinie. Par cons\'equent, vous utiliserez, en principe,
2698 une p\'eriode File Retention inf\'erieure \`a la p\'eriode Job retention. La p\'eriode
2699 Job retention peut en fait s'av\'erer inf\'erieure \`a la valeur que vous avez sp\'ecifi\'ee
2700 si vous avez affect\'e une valeur inf\'erieure \`a la directive {\bf Volume Retention} dans
2701 la ressource Pool. Les p\'eriodes Job retention et Volume retention sont appliqu\'ees
2702 ind\'ependamment, la plus petite prend le pas sur l'autre.
2704 Les dur\'ees peuvent \^etre exprim\'ees
2705 en secondes, minutes, heures, jours, semaines, mois, trimestres ou ann\'ees. Consultez
2706 le chapitre \ilink{Adapter les fichiers de configuration}{Time} de ce manuel pour plus de d\'etails sur les
2707 sp\'ecifications de dur\'ees.
2709 La valeur par d\'efaut est 180 jours.
2712 \item [AutoPrune = \lt{}yes|no\gt{}]
2713 \index[dir]{AutoPrune}
2714 \index[dir]{Directive!AutoPrune}
2715 Si AutoPrune est r\'egl\'e \`a {\bf yes} (valeur par d\'efaut), Bacula (dans les versions au del\`a
2716 de 1.20) applique automatiquement les p\'eriodes File retention et Job retention pour le
2717 client \`a la fin du job. Si vous sp\'ecifiez {\bf AutoPrune = no}, l'\'elagage ne se fera pas
2718 et votre catalogue grossira \`a chaque job. L'\'elagage n'affecte que les donn\'ees du catalogue,
2719 et non les donn\'ees stock\'ees sur les volumes.
2721 \item [Maximum Concurrent Jobs = \lt{}number\gt{}]
2722 \index[dir]{Maximum Concurrent Jobs}
2723 \index[dir]{Directive!Maximum Concurrent Jobs}
2724 \lt{}number\gt{} d\'esigne le nombre maximum de jobs qui peuvent \^etre lanc\'es simultan\'ement
2725 sur le client concern\'e. Notez que cette directive ne limite que les jobs pour les clients
2726 qui ont le m\^eme nom que la ressource dans laquelle elle appara\^it. Toutes les autres restrictions
2727 du nombre maximum de jobs simultan\'es telles que celles sp\'ecifi\'ees dans les ressources
2728 Director, Job, ou Storage s'appliquent aussi en plus de toute limite fix\'ee ici. La valeur
2729 par d\'efaut est 1, mais vous pouvez sp\'ecifier une valeur plus grande. Nous recommandons
2730 fortement de lire les MISES EN GARDE de la section \ilink{ Maximum Concurrent
2731 Jobs}{DirMaxConJobs} du chapitre Configurer le Director.
2734 \item [Priority = \lt{}number\gt{}]
2735 \index[dir]{Priority}
2736 \index[dir]{Directive!Priority}
2737 \lt{}number\gt{} sp\'ecifie la priorit\'e de ce client par rapport aux autres clients
2738 que le Director sauvegarde simultan\'ement. La priorit\'e admet une valeur entre 1 et 1000.
2739 Les clients sont ordonn\'es de sorte que ceux dont la valeur de priorit\'e sont les plus petites
2740 sont trait\'es les premiers (Ceci n'est pas encore impl\'ement\'e).
2743 Voici un exemple d'une d\'efinition de ressource Client valide :
2751 Password = very_good
2756 \subsection*{La ressource Storage}
2757 \label{StorageResource2}
2758 \index[general]{Resource!Storage }
2759 \index[general]{Storage Resource }
2760 \addcontentsline{toc}{subsection}{Storage Resource}
2762 La ressource Storage d\'efinit les Storage Daemons disponibles pour le Director.
2767 \index[dir]{Storage}
2768 \index[dir]{Directive!Storage}
2769 D\'ebut des ressources Storage. Il faut en sp\'ecifier au moins une.
2771 \item [Name = \lt{}name\gt{}]
2773 \index[dir]{Directive!Name}
2774 Le nom de la ressource Storage. Ce nom appara\^it au niveau de la directive
2775 Storage sp\'ecifi\'ee dans la ressource Job et est requise.
2777 \item [Address = \lt{}address\gt{}]
2778 \index[dir]{Address}
2779 \index[dir]{Directive!Address}
2780 O\`u l'adresse est un nom d'h\^ote, une {\bf adresse pleinement qualifi\'ee}, ou une
2781 {\bf adresse IP}. Notez bien que l'adresse sp\'ecifi\'ee ici sera transmise au
2782 File Daemon qui l'utilisera alors pour contacter le Storage Daemon. Aussi, ce
2783 n'est {\bf pas} une bonne id\'ee d'utiliser {\bf localhost} en tant que nom,
2784 il vaut mieux utiliser un nom de machine pleinement qualifi\'e, ou une adresse IP.
2785 Cette directive est requise.
2787 \item [SD Port = \lt{}port\gt{}]
2788 \index[dir]{SD Port}
2789 \index[dir]{Directive!SD Port}
2790 O\`u "port" est le port \`a utiliser pour contacter le Storage Daemon pour les
2791 informations et pour ex\'ecuter les jobs. Ce m\^eme num\'ero de port doit
2792 appara\^itre dans la ressource Storage du fichier de configuration du
2793 Storage Daemon. Le port par d\'efaut est 9103.
2795 \item [Password = \lt{}password\gt{}]
2796 \index[dir]{Password}
2797 \index[dir]{Directive!Password}
2798 Il s'agit du mot de passe \`a utiliser lors de l'\'etablissement de la connection
2799 avec les services Storage. Ce m\^eme mot de passe doit aussi appara\^itre dans la
2800 ressource Director du fichier de configuration du Storage Daemon. Cette
2801 directive est requise. Si vous avez soit {\bf /dev/random}, soit {\bf bc}
2802 sur votre machine, Bacula g\'en\`erera un mot de passe al\'eatoire lors du processus
2803 de configuration. Dans le cas contraire, ce champ sera laiss\'e blanc.
2805 \item [Device = \lt{}device-name\gt{}]
2807 \index[dir]{Directive!Device}
2808 Cette directive sp\'ecifie le nom (pour le Storage Daemon) du p\'eriph\'erique \`a
2809 utiliser pour le stockage.
2810 Ce nom n'est pas le nom de p\'eriph\'erique physique, mais le nom de p\'eriph\'erique
2811 logique qui a \'et\'e d\'efini par la directive {\bf Name} de la ressource {\bf Device}
2812 du fichier de configuration du Storage Daemon. Si le p\'eriph\'erique est une librairie, vous
2813 devez utiliser le nom d\'efini au niveau de la directive {\bf Name} d\'efini dans la d\'efinition
2814 de la ressource {\bf Autochanger} du Storage Daemon. Vous pouvez utiliser le nom de
2815 votre choix (y compris le nom de p\'eriph\'erique physique) \`a concurrence de
2816 127 caract\`eres. Le nom de p\'eriph\'erique physique associ\'e \`a ce p\'eriph\'erique est
2817 sp\'ecifi\'e dans le fichier de configuration du Storage Daemon
2818 (en tant qu'{\bf Archive Device}). Prenez garde \`a ne pas d\'efinir deux directives
2819 Storage Resource dans le Director qui pointent vers le m\^eme p\'eriph\'erique du
2820 Storage Daemon. Il pourrait en r\'esulter un blocage du Storage Daemon si celui-ci
2821 tente d'utiliser le m\^eme p\'eriph\'erique deux fois. Cette directive est requise.
2823 \item [Media Type = \lt{}MediaType\gt{}]
2824 \index[dir]{Media Type}
2825 \index[dir]{Directive!Media Type}
2826 Cette directive sp\'ecifie le type de m\'edia \`a utiliser pour stocker les donn\'ees.
2827 Il s'agit d'une cha\^ine de caract\`eres arbitraire n'exc\'edant pas 127 caract\`eres.
2828 Ce peut \^etre ce que vous voulez, cependant, il est pr\'ef\'erable de la choisir de
2829 mani\`ere \`a d\'ecrire le m\'edium de stockage utilis\'e (par exemple : Fichier, DAT,
2830 ''HP DLT8000``, 8mm,...). D'autre part, il est esentiel d'avoir une sp\'ecification
2831 {\bf Media Type} unique pour chaque type de m\'edia de stockage. Si vous avez deux
2832 lecteurs DDS-4 avec des formats incompatibles et une librairie DDS-4, vous devriez
2833 certainement sp\'ecifier des {\bf Media Types} distincts. Lors d'une restauration,
2834 supposons qu'un Media Type {\bf DDS-4} est associ\'e avec le le job, Bacula peut
2835 d\'ecider d'utiliser tout Storage Daemon qui supporte le Media Type {\bf DDS-4} sur
2836 tout lecteur qui le supporte.
2838 Actuellement, Bacula n'autorise qu'un seul type de media. Par cons\'equent, si vous
2839 disposez d'un lecteur qui en supporte plusieurs, vous pouvez utiliser une cha\^ine
2840 unique pour d\'esigner les volumes de l'un ou l'autre type, par exemple Media Type = DDS-3-4
2841 pour les types DDS-3 et DDS-4, mais ces volumes ne seront mont\'es que sur les lecteurs
2842 sp\'ecifi\'es comme acceptant les deux types : DDS-3-4
2844 Si vous voulez contraindre Bacula \`a utiliser un
2845 seul Storage Daemon ou un seul lecteur, vous devez sp\'ecifier un Media Type unique
2846 pour ce lecteur. C'est un point important qui devrait \^etre bien compris. Notez que
2847 ceci s'applique \'egalement aux volumes disque. Si vous d\'efinissez plus d'une ressource
2848 Device disque dans votre fichier de configuration du Storage Daemon, les volumes sur ces
2849 deux devices seront en fait incompatibles car l'un ne pourra \^etre mont\'e sur l'autre
2850 puisqu'ils se trouvent dans des r\'epertoires diff\'erents. C'est pourquoi vous devriez
2851 probablement plut\^ot utiliser deux Media Types distincts pour vos deux devices disque
2852 (m\^eme si vous pensez \`a eux comme ayant l'un et l'autre le type File).
2854 Vous trouverez pus de d\'etails \`a ce sujet dans le chapitre
2855 \ilink{Gestion des volumes : fondements (NDT:basic volumes management)}
2856 {_ChapterStart39} de ce manuel.
2858 Le {\bf MediaType} sp\'ecifi\'e ici {\bf doit} correspondre au {\bf MediaType}
2859 sp\'ecifi\'e dans la ressource {\bf Device} du fichier de configuration du
2860 Storage Daemon. Cette directive est requise, et est utilis\'ee par le Director
2861 et le Storage Daemon pour s'assurer qu'un volume s\'electionn\'e automatiquement
2862 dans un Pool correspond \`a un p\'eriph\'erique physique. Si un Storage Daemon
2863 g\`ere plusieurs p\'eriph\'eriques (par exemple, s'il \'ecrit sur plusieurs volumes
2864 de type File sur diff\'erentes partitions), cette directive vous permet de
2865 pr\'eciser exactement quel p\'eriph\'erique utiliser.
2867 Comme mentionn\'e ci-dessus, la valeur sp\'ecifi\'ee dans la ressource Storage du
2868 Director doit s'accorder avec celle sp\'ecifi\'ee dans la ressource Device du
2869 fichier de configuration du Storage Daemon. Ceci repr\'esente aussi un contr\^ole
2870 suppl\'ementaire pour assurer que vous n'essayez pas d'\'ecrire les donn\'ees destin\'ees
2871 \`a un lecteur DLT sur un lecteur 8mm.
2873 \label{Autochanger1}
2875 \item [Autochanger = \lt{}yes|no\gt{} ]
2876 \index[dir]{Autochanger }
2877 \index[dir]{Directive!Autochanger}
2878 Si vous sp\'ecifiez {\bf yes} pour cette commande (la valeur par d\'efaut est {\bf no}),
2879 alors Bacula requ\'erira un num\'ero de Slot lorsque vous utiliserez les commandes
2880 {\bf label} et {\bf add} pour cr\'eer un nouveau volume. Ceci simplifie la cr\'eation
2881 des enregistrements de Volumes dans le catalogue si vous disposez d'une librairie.
2882 Si vous omettez de sp\'ecifier le Slot, la robotique ne sera pas utilis\'ee. Cependant,
2883 vous pouvez modifier le Slot associ\'e \`a un volume \`a tout moment grâce \`a la commande
2884 {\bf update volume} du programme Console. Lorqu'{\bf autochanger} est activ\'ee,
2885 l'algorithme utilis\'e par Bacula pour rechercher des volumes utilisables est
2886 modifi\'e de fa\
\ 3on \`a prendre en compte tout volume suppos\'e contenu dans la librairie.
2887 Si aucun volume {\bf in changer} n'est trouv\'e, Bacula tente de recycler, \'elaguer...,
2888 et s'il ne trouve toujours aucun volume, Bacula recherche un volume pr\'esent ou non
2889 dans la librairie. Privil\'egier les volumes pr\'esents dans la librairie permet de
2890 minimiser les interventions d'un op\'erateur.
2892 Pour que la robotique soit utilis\'ee, vous devez aussi sp\'ecifier {\bf Autochanger = yes}
2893 dans la ressource \ilink{La Ressource Device}{Autochanger} du fichier de configuration du
2894 Storage Daemon, ainsi que d'autres param\`etres importants du Storage Daemon. Vous
2895 trouverez plus d'information \`a ce sujet dans le chapitre
2896 \ilink{ Utiliser une librairie}{_ChapterStart18} de ce manuel.
2898 \item [Maximum Concurrent Jobs = \lt{}number\gt{}]
2899 \index[dir]{Maximum Concurrent Jobs}
2900 \index[dir]{Directive!Maximum Concurrent Jobs}
2901 O\`u \lt{}number\gt{} est le nombre maximum de jobs utilisant la
2902 ressource Storage courante qui peuvent \^etre ex\'ecut\'es simultan\'ement. Notez que cette
2903 directive ne limite que les jobs qui utilisent ce Storage Daemon. Toute autre
2904 limitation du nombre maximum de jobs simultan\'es au niveau des ressources
2905 Director, Job ou Client est aussi appliqu\'ee en plus de celle fix\'ee ici. La valeur
2906 par d\'efaut est 1, mais vous pouvez utiliser une valeur plus importante. Nous vous
2907 recommandons fortement de lire les MISES EN GARDE de la section \ilink{ Maximum Concurrent
2908 Jobs}{DirMaxConJobs} du chapitre Configurer le Director.
2910 Alors qu'il est possible de d\'efinir des nombres maximum de jobs simultan\'es sup\'erieurs
2911 \`a 1 dans les ressource Director, Job et Client, vous devriez porter une attention
2912 particuli\`ere au param\'etrage de cette directive pour le Storage Daemon. En conservant
2913 la valeur 1, vous \'evitez que deux jobs \'ecrivent simultan\'ement sur le m\^eme volume ce qui,
2914 quoique support\'e, n'est pas recommand\'e actuellement.
2917 Voici un exemple de ressource Storage valide :
2921 # Definition of tape storage device
2925 Password = storage_password # password for Storage daemon
2926 Device = "HP DLT 80" # same as Device in Storage daemon
2927 Media Type = DLT8000 # same as MediaType in Storage daemon
2932 \subsection*{La ressource Pool}
2933 \label{PoolResource}
2934 \index[general]{Resource!Pool }
2935 \index[general]{Pool Resource }
2936 \addcontentsline{toc}{subsection}{Pool Resource}
2937 La ressource Pool d\'efinit l'ensemble des volumes de stockage (cartouches ou fichiers)
2938 \`a la disposition de Bacula pour \'ecrire les donn\'ees. En configurant diff\'erents
2939 Pools, vous pouvez d\'eterminer quel ensemble de volumes (ou m\'edia) re\
\ 3oit les
2940 donn\'ees sauvegard\'ees. Ceci permet, par exemple, de stocker toutes les sauvegardes
2941 Full sur un ensemble de volumes, et les sauvegardes diff\'erentielles et
2942 incr\'ementales sur un autre. De m\^eme, vous pouvez assigner un ensemble de volumes
2943 \`a chaque machine sauvegard\'ee. Tout ceci peut \^etre r\'ealis\'e ais\'ement en d\'efinissant
2946 Un autre aspect important d'un pool est qu'il contient des attributs par d\'efaut
2947 (Nombre maximum de jobs, p\'eriode de r\'etention, drapeau de recyclage,...) qui sont
2948 conf\'er\'es \`a tout volume lui appartenant lors de sa cr\'eation. Ceci vous \'evite d'avoir
2949 \`a r\'epondre \`a un grand nombre de questions lorsque vous \'etiquettez (label) un nouveau
2950 volume. Chacun de ces attributs peut ensuite \^etre modifi\'e sur chaque volume
2951 individuellement avec la commande {\bf update} du programme Console. Notez que
2952 vous devez pr\'eciser explicitement quel pool est \`a utiliser avec chaque job. Bacula
2953 ne recherche pas automatiquement le pool correct.
2955 Dans la plupart des installations de Bacula, toutes les sauvegardes de toutes
2956 les machines vont vers un unique jeu de volumes. Dans ce cas, vous n'utiliserez
2957 probablement que le pool par d\'efaut {\bf Default}. Si votre strat\'egie de
2958 sauvegarde vous impose \`a monter chaque jour une cartouche diff\'erente, vous voudrez
2959 probablement d\'efinir des pools distincts pour chaque jour. Pour plus d'informations
2960 \`a ce sujet, consultez le chapitre \ilink{Strat\'egies de sauvegarde}{_ChapterStart3}
2963 Pour utiliser un pool, vous devez suivre trois \'etapes :
2965 D'abord, le pool doit
2966 \^etre d\'efini dans le fichier de configuration du Director. Ensuite le pool doit
2967 \^etre enregistr\'e dans le catalogue. Ceci est fait automatiquement par le Director
2968 \`a chaque fois qu'il d\'emarre, ou peut \^etre r\'ealis\'e manuellement \`a l'aide de la
2969 commande {\bf create} du programme Console. Enfin, si vous modifiez la d\'efinition
2970 du pool dans le fichier de configuration du Director et red\'emarrez Bacula,
2971 le pool sera mis \`a jour automatiquement, ce qui peut aussi \^etre r\'ealis\'e
2972 manuellement avec la commande {\bf update pool} du programme Console pour
2973 rafraichir l'image du catalogue. C'est cette image du catalogue plut\^ot
2974 que l'image de la ressource du Director qui est utilis\'ee pour les attributs
2975 de volume par d\'efaut. Notez que pour que le pool soit automatiquement
2976 cr\'e\'e ou mis \`a jour, il doit \^etre r\'ef\'erenc\'e explicitement par une ressource Job.
2978 Ensuite le m\'edium physique doit \^etre \'etiquett\'e. L'\'etiquettage peut \^etre r\'ealis\'e
2979 soit par la commande {\bf label} du programme Console, soit en utilisant le
2980 programme {\bf btape}. La m\'ethode \`a privil\'egier est la premi\`ere.
2982 Finallement, vous devez ajouter des noms de volumes (et leurs attributs) au
2983 pool. Pour que les volumes soient utilis\'es par Bacula, ils doivent \^etre
2984 du m\^eme {\bf Media Type} que l'Archive Device sp\'ecifi\'ee pour le job.
2985 (Autrement dit, si vous vous appr\'etez \`a sauvegarder vers un lecteur DLT,
2986 le pool doit contenir des volumes DLT, puisque des volumes 8mm ne peuvent
2987 \^etre mont\'es sur un lecteur DLT). Le {\bf Media Type} rev\^et une importance
2988 particuli\`ere si vous sauvegardez vers des fichiers. Lorsque vous ex\'ecutez
2989 un job, vous devez explicitement pr\'eciser le pool. Bacula s\'electionne d\`es lors
2990 automatiquement le prochain volume du pool \`a utiliser, en s'assurant que le
2991 {\bf Media Type} de tout volume s\'electionn\'e est bien celui requis par la
2992 ressource Storage sp\'ecifi\'ee pour le job.
2994 Si vous utilisez la commande {\bf label} du programme Console pour
2995 \'etiquetter les volumes, il sont automatiquement ajout\'es au pool, aussi cette
2996 derni\`ere \'etape n'est g\'en\'eralement pas requise.
2998 Il est aussi possible d'ajouter des volumes au catalogue sans avoir
2999 explicitement \'etiquett\'e les volumes physiques. Ceci s'effectue avec la commande
3000 {\bf add} du programme Console.
3002 Comme mentionn\'e plus haut, \`a chaque d\'emarrage, Bacula examine tous les pools
3003 associ\'es \`a chaque catalogue, et si un enregistrement n'existe pas encore, il
3004 est cr\'e\'e \`a partir de la d\'efinition du pool dans la ressource. Bacula devrait
3005 probablement effectuer un {\bf update pool} si vous modifiez la d\'efinition
3006 du pool mais, actuellement, vous devez le faire manuellement avec la
3007 commande {\bf update pool} du programme Console.
3009 La ressource Pool d\'efinie dans le fichier de configuration du Director peut
3010 contenir les directives suivantes :
3017 \index[dir]{Directive!Pool}
3018 D\'ebut de la ressource Pool. Il faut d\'efinir au moins une ressource Pool.
3020 \item [Name = \lt{}name\gt{}]
3022 \index[dir]{Directive!Name}
3023 Le nom du pool. Pour la plupart des applications, vous utiliserez le pool
3024 par d\'efaut nomm\'e {\bf Default}. Cette directive est requise.
3026 \item [Number of Volumes = \lt{}number\gt{}]
3027 \index[dir]{Number of Volumes }
3028 Cette directive sp\'ecifie le nombre de volumes (cartouches ou fichiers) contenus
3029 dans le pool. En principe, il est d\'efini et mis \`a jour automatiquement par la
3030 routine de maintenance du catalogue de Bacula.
3033 \item [Maximum Volumes = \lt{}number\gt{}]
3034 \index[dir]{Maximum Volumes}
3035 \index[dir]{Directive!Maximum Volumes}
3036 Cette directive sp\'ecifie le nombre maximum de volumes contenus dans le pool.
3037 Cette directive est optionnelle. Si elle est omise ou r\'egl\'ee \`a 0, tout nombre
3038 de volumes est permis. En g\'en\'eral, cette directive est utile pour les librairies,
3039 o\`u il y a un nombre fix\'e de volumes, ou pour le stockage sur fichier si vous voulez
3040 vous assurer que les sauvegardes sur disque ne deviennent pas trop nombreuses ou ne
3041 consomment pas trop d'espace.
3043 \item [Pool Type = \lt{}type\gt{}]
3044 \index[dir]{Pool Type }
3045 \index[dir]{Directive!Pool Type}
3046 Cette directive d\'efinit le type du pool, qui correspond au type du job
3047 ex\'ecut\'e. Cette directive est requise et peut prendre l'une des valeurs suivantes :
3058 \item [Use Volume Once = \lt{}yes|no\gt{}]
3059 \index[dir]{Use Volume Once}
3060 \index[dir]{Directive!Use Volume Once}
3061 Cette directive, si elle est active (valeur {\bf yes}) stipule que chaque volume
3062 ne doit \^etre utilis\'e qu'une seule fois. C'est particuli\`erement utile si le
3063 volume est un fichier et si vous voulez un nouveau fichier pour chaque nouvelle
3064 sauvegarde. La valeur par d\'efaut est {\bf no} (autrement dit, les volumes peuvent
3065 \^etre utilis\'es plusieurs fois). Cette directive sera tr\`es certainement bient\^ot
3066 obsol\`ete, aussi nous vous recommandons d'utiliser {\bf Maximum Volume Jobs = 1}
3069 La valeur d\'efinie par cette directive dans le fichier de
3070 configuration du Director est la valeur par d\'efaut utilis\'ee lorsqu'un nouveau
3071 volume est cr\'e\'e. Modifier la valeur dans le fichier de configuration ne changera
3072 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3073 existant, vous devez utiliser la commande {\bf update} du programme Console.
3075 \item [Maximum Volume Jobs = \lt{}positive-integer\gt{}]
3076 \index[dir]{Maximum Volume Jobs}
3077 \index[dir]{Directive!Maximum Volume Jobs}
3078 Cette directive sp\'ecifie le nombre maximum de jobs qui peuvent \^etre \'ecrits sur le volume.
3079 La valeur par d\'efaut est z\'ero, ce qui signifie que le nombre de jobs sur un volume
3080 n'est pas limit\'e. Sinon, lorsque le nombre de jobs sauvegard\'es sur le volume atteint
3081 la valeur {\bf positive-integer} sp\'ecifi\'ee, le volume est marqu\'e {\bf Used}. D\`es lors,
3082 il ne peut plus \^etre utilis\'e pour y ajouter des jobs, tout comme dans le cas d'un volume
3083 avec le statut {\bf Full}, mais il peut \^etre recycl\'e si le recyclage est activ\'e. En
3084 sp\'ecifiant {\bf MaximumVolumeJobs = 1} vous obtenez le m\^eme effet que celui que vous
3085 obtiendriez avec {\bf UseVolumeOnce = yes}.
3087 Notez que la valeur d\'efinie par cette directive dans le fichier de configuration du
3088 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3089 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3090 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3091 existant, vous devez utiliser la commande {\bf update} du programme Console.
3093 \item [Maximum Volume Files = \lt{}positive-integer\gt{}]
3094 \index[dir]{Maximum Volume Files}
3095 \index[dir]{Directive!Maximum Volume Files}
3096 Cette directive sp\'ecifie le nombre maximum de fichiers qui peuvent \^etre \'ecrits sur
3097 le volume. La valeur par d\'efaut est z\'ero, ce qui signifie que le nombre de fichiers
3098 sur un volume n'est pas limit\'e. Sinon, lorsque le nombre de fichiers sauvegard\'es sur
3099 le volume atteint la valeur {\bf positive-integer} sp\'ecifi\'ee, le volume est marqu\'e
3100 {\bf Used}. D\`es lors, il ne peut plus \^etre utilis\'e pour y ajouter des jobs, tout comme
3101 dans le cas d'un volume avec le statut {\bf Full}, mais il peut \^etre recycl\'e si le
3102 recyclage est activ\'e. Ce n'est qu'\`a la fin d'un job que Cette valeur est control\'ee,
3103 et que le statut du volume est \'eventuellement chang\'e en {\bf Used}.
3105 La valeur d\'efinie par cette directive dans le fichier de configuration du
3106 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3107 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3108 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3109 existant, vous devez utiliser la commande {\bf update} du programme Console.
3111 \item [Maximum Volume Bytes = \lt{}size\gt{}]
3112 \index[dir]{Maximum Volume Bytes}
3113 \index[dir]{Directive!Maximum Volume Bytes}
3114 Cette directive sp\'ecifie le nombre maximum d'octets qui peuvent \^etre \'ecrits sur le
3115 volume. La valeur par d\'efaut est z\'ero, ce qui signifie qu'il n'y a d'autre limite
3116 que la capacit\'e physique du volume. Sinon, lorsque le nombre d'octets sauvegard\'es sur
3117 le volume atteint la valeur {\bf size} sp\'ecifi\'ee, le volume est marqu\'e
3118 {\bf Used}. D\`es lors, il ne peut plus \^etre utilis\'e pour y ajouter des jobs, tout comme
3119 dans le cas d'un volume avec le statut {\bf Full}, mais il peut \^etre recycl\'e si le
3120 recyclage est activ\'e. Ce n'est qu'\`a la fin d'un job que Cette valeur est control\'ee,
3121 et que le statut du volume est \'eventuellement chang\'e en {\bf Used}.
3123 La valeur d\'efinie par cette directive dans le fichier de configuration du
3124 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3125 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3126 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3127 existant, vous devez utiliser la commande {\bf update} du programme Console.
3129 \item [Volume Use Duration = \lt{}time-period-specification\gt{}]
3130 \index[dir]{Volume Use Duration}
3131 \index[dir]{Directive!Volume Use Duration}
3132 Cette directive d\'efinit la p\'eriode durant laquelle le volume peut \^etre utilis\'e en
3133 \'ecriture, \`a compter de la premi\`ere op\'eration d'\'ecriture de donn\'ees.
3134 La valeur par d\'efaut est z\'ero, ce qui signifie que le volume peut \^etre \'ecrit
3135 ind\'efiniment . Sinon, lorsque la dur\'ee depuis la premi\`ere \'ecriture exc\`ede la p\'eriode
3136 {\bf time-period-specification} sp\'ecifi\'ee, le volume est marqu\'e
3137 {\bf Used}. D\`es lors, il ne peut plus \^etre utilis\'e pour y ajouter des jobs, tout comme
3138 dans le cas d'un volume avec le statut {\bf Full}, mais il peut \^etre recycl\'e si le
3139 recyclage est activ\'e. L'usage de la commande {\bf status dir} applique des algorithmes
3140 similaires \`a l'\'execution de jobs, aussi lors d'une telle commande, le statut du volume
3141 peut \^etre modifi\'e. Lorsque le volume est recycl\'e, il peut \`a nouveau \^etre utilis\'e.
3143 Vous pourriez utiliser cette directive, par exemple, si vous avez un volume d\'edi\'e
3144 aux sauvegardes incr\'ementales, et un volume d\'edi\'e aux Fulls hebdomadaires. Une fois que
3145 la Full est pass\'ee, vous pouvez pr\'ef\'erer utiliser un autre volume pour les incr\'ementales.
3146 Ceci peut \^etre accompli en r\`eglant la p\'eriode {\bf Volume Use Duration} \`a six jours pour
3147 les volumes des incr\'ementales. Autrement dit, celui-ci sera utilis\'e durant les six jours
3148 qui suivent une full, puis un autre volume d'incr\'ementales sera utilis\'e. Veillez \`a utiliser
3149 des p\'eriodes relativement courtes telles que 23 heures, ou vous pourriez placer Bacula en situation
3150 de devoir attendre tout un week-end le montage d'une cartouche par l'op\'erateur pour pouvoir terminer
3153 Ce n'est qu'\`a la fin d'un job que Cette valeur est control\'ee,
3154 et que le statut du volume est \'eventuellement chang\'e en {\bf Used}, ce qui signifie que
3155 bien que la p\'eriode {\bf Volume Use Duration} puisse avoir expir\'e, l'entr\'ee correspondante
3156 du catalogue ne sera pas mise \`a jour jusqu'\`a ce que le prochain job utilisant ce
3157 volume soit ex\'ecut\'e.
3159 La valeur d\'efinie par cette directive dans le fichier de configuration du
3160 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3161 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3162 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3163 existant, vous devez utiliser la commande \ilink{\bf update volume}{UpdateCommand} du
3166 \item [Catalog Files = \lt{}yes|no\gt{}]
3167 \index[dir]{Catalog Files}
3168 \index[dir]{Directive!Catalog Files}
3169 Cette directive pr\'ecise si les noms des fichiers sauvegard\'es doivent ou non \^etre
3170 enregistr\'es dans le catalogue. La valeur par d\'efaut est {\bf yes}. L'avantage de
3171 d\'esactiver cette option ({\bf Catalog Files = No}) est d'avoir un catalogue
3172 significativement plus petit. L'inconv\'enient est de ne pas pouvoir produire de
3173 liste des fichiers sauvegard\'es pour chaque job \`a partir du catalogue (autrement
3174 dit, vous ne pourrez naviguer dans les fichiers sauvegard\'es). Ainsi, sans les
3175 enregistrements de fichiers, vous ne pourrez utiliser la commande {\bf restore},
3176 ni aucune des autres commandes du programme Console qui se r\'ef\`erent aux
3177 enregistrements de fichiers.
3179 \label{PoolAutoPrune}
3181 \item [AutoPrune = \lt{}yes|no\gt{}]
3182 \index[dir]{AutoPrune}
3183 \index[dir]{Directive!AutoPrune}
3184 Si AutoPrune est activ\'ee ({\bf yes}), ce qui est le cas par d\'efaut, Bacula
3185 (depuis la version 1.20) applique automatiquement la p\'eriode de r\'etention des
3186 volumes lorsqu'un nouveau volumes est requis ou lorsqu'il n'existe aucun volume
3187 utilisable dans le pool. L'\'elagage des volumes consiste \`a supprimer du catalogue
3188 les jobs expir\'es (ceux qui sont plus anciens que la p\'eriode de r\'etention), et rend
3189 possible le recyclage de ces volumes
3191 \label{VolRetention}
3193 \item [Volume Retention = \lt{}time-period-specification\gt{}]
3194 \index[dir]{Volume Retention}
3195 \index[dir]{Directive!Volume Retention}
3196 La directive Volume Retention d\'efinit la p\'eriode durant laquelle {\bf Bacula}
3197 conserve les enregistrements Job associ\'es au volume dans le catalogue.
3198 Lors de l'expiration de cette p\'eriode, si {\bf AutoPrune} est activ\'ee, Bacula
3199 peut supprimer les enregistrements Job plus anciens que la p\'eriode {\bf time-period-specification}
3200 sp\'ecifi\'ee s'il est n\'ecessaire de lib\'erer un volume. Tous les enregistrements de fichiers
3201 associ\'es \`a des jobs supprim\'es sont aussi supprim\'es. Les dur\'ees peuvent \^etre exprim\'ees
3202 en secondes, minutes, heures, jours, semaines, mois, trimestres ou ann\'ees.
3203 La p\'eriode {\bf Volume Retention} s'applique ind\'ependamment des p\'eriodes {\bf Job Retention}
3204 et {\bf File Retention} d\'efinies dans la ressource Client. Ceci signifie que la
3205 p\'eriode la plus courte est celle qui s'applique.Notez bien que lorsque la p\'eriode
3206 {\bf Volume Retention} a \'et\'e atteinte les enregistrements de Job et ceux de fichiers
3207 sont supprimm\'es les uns et les autres.
3208 Cet \'elagage peut aussi se produire \`a l'ex\'ecution de la commande {\bf status dir} car elle
3209 applique des algorithmes similaires \`a ceux utilis\'es pour d\'eterminer le prochain volume
3212 Il est important de savoir que lorsque la p\'eriode Volume Retention expire,
3213 Bacula ne recycle pas syst\'ematiquement le volume concern\'e. Il tente de conserver
3214 les donn\'ees intactes aussi longtemps que possible avant d'\'ecrire sur ce volume.
3216 La valeur par d\'efaut est 365 jours. Notez que cette directive r\`egle la valeur par
3217 d\'efaut pour chaque enregistrement de volume du catalogue lorsque le volume
3218 est cr\'e\'e. Cette valeur du catalogue peut ensuite \^etre modifi\'ee avec la commande
3219 {\bf update } du programme Console.
3221 En d\'efinissant plusieurs pools avec diff\'erentes p\'eriodes de r\'etention (volume
3222 retention), vous pouvez efficacement g\'erer vos cartouches avec, par exemple
3223 un pool de cartouches recycl\'e chaque semaine, un autre recycl\'e chaque mois, et
3224 ainsi de suite. Cependant, il faut bien garder \`a l'esprit que si votre p\'eriode
3225 de r\'etention {\bf Volume Retention} est trop courte, il peut arriver que votre
3226 derni\`ere sauvegarde Full valide soit supprim\'ee, de sorte que vous n'ayez plus
3227 une sauvegarde compl\`ete de votre syst\`eme, et que votre prochaine incr\'ementale
3228 soit \'elev\'ee en une Full. Par cons\'equent, la valeur minimum de la p\'eriode
3229 {\bf Volume Retention} devrait \^etre au moins le double de l'intervalle
3230 s\'eparant vos Fulls. Autrement dit, pour des Fulls mensuelles, la p\'eriode
3231 {\bf Volume Retention} devrait \^etre sup\'erieure ou \'egale \`a deux mois.
3233 Notez que la valeur d\'efinie par cette directive dans le fichier de configuration du
3234 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3235 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3236 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3237 existant, vous devez utiliser la commande {\bf update} du programme Console.
3241 \item [Recycle = \lt{}yes|no\gt{}]
3242 \index[dir]{Recycle}
3243 \index[dir]{Directive!Recycle}
3244 Cette directive sp\'ecifie la valeur par d\'efaut pour le recyclage des volumes purg\'es.
3245 Si elle est activ\'ee ({\bf yes}) et si Bacula a besoin d'un volume mais n'en trouve
3246 aucun utilisable, il recherche alors les volumes purg\'es (c'est \`a dire ceux dont tous
3247 les jobs et fichiers ont expir\'e et ont, de fait, \'et\'e supprim\'es du catalogue). Si un
3248 volume est recycl\'e, toutes les donn\'ees pr\'ecedemment \'ecrites sur ce volumes seront
3249 \'ecras\'ees. Si le recyclage est d\'esactiv\'e ({\bf no}), le volume ne sera pas recycl\'e, et ainsi
3250 les donn\'ees resteront valides. Si vous souhaitez r\'eutiliser un volume dont le drapeau de
3251 recyclage est no (0 dans le catalogue), vous devez manuellement le changer en yes (commande
3254 Notez que la valeur d\'efinie par cette directive dans le fichier de configuration du
3255 Director est la valeur par d\'efaut utilis\'ee lors de la cr\'eation d'un volume. Une fois
3256 le volumes cr\'e\'e, modifier la valeur dans le fichier de configuration ne changera
3257 pas ce qui est stock\'e sur le volume. Pour changer cette valeur pour un volume
3258 existant, vous devez utiliser la commande {\bf update} du programme Console.
3260 \label{RecycleOldest}
3262 \item [Recycle Oldest Volume = \lt{}yes|no\gt{}]
3263 \index[dir]{Recycle Oldest Volume}
3264 \index[dir]{Directive!Recycle Oldest Volume}
3265 Cette directive indique au Director de rechercher le volume le plus ancien
3266 du pool lorsq'un nouveau est requis par le Storage Daemon et qu'aucun autre
3267 n'est disponible. Le catalog est alors {\bf \'elagu\'e} dans le respect des
3268 p\'eriodes {\bf Job}, {\bf File} et {\bf Volume Retention}, c'est pourquoi cette
3269 directive est, de {\bf tr\`es} loin, pr\'ef\'erable \`a directive Purge Oldest Volume.
3271 Cette directive peut \^etre utile si vous avez un nombre fixe de volumes dans
3272 un pool et que vous voulez cycler sur ces volumes apr\`es avoir sp\'ecifi\'e
3273 les p\'eriodes de r\'etention qui conviennent.
3275 \label{RecycleCurrent}
3277 \item [Recycle Current Volume = \lt{}yes|no\gt{}]
3278 \index[dir]{Recycle Current Volume}
3279 \index[dir]{Directive!Recycle Current Volume}
3280 Si Bacula a besoin d'un nouveau volume, cette directive lui indique d'\'elaguer
3281 le volume dans le respect des p\'eriodes {\bf Job}, {\bf File} et
3282 {\bf Volume Retention}. Si tous les jobs sont \'elagu\'es, (c'est \`a dire si le
3283 volume est purg\'e), alors le volume est recycl\'e et sera utilis\'e pour la
3284 prochaine op\'eration d'\'ecriture. Cette directive respecte toutes les
3285 p\'eriodes {\bf Job}, {\bf File} et {\bf Volume Retention}, c'est pourquoi
3286 elle est , de {\bf tr\`es} loin, pr\'ef\'erable \`a la directive Purge Oldest Volume.
3288 Cette directive peut \^etre utile si vous avez un nombre fixe de volumes dans
3289 un pool et que vous voulez cycler sur ces volumes apr\`es avoir sp\'ecifi\'e
3290 les p\'eriodes de r\'etention qui \'elaguent les volumes avant que vous n'ayez
3291 termin\'e le cycle sur les volumes.
3295 \item [Purge Oldest Volume = \lt{}yes|no\gt{}]
3296 \index[dir]{Purge Oldest Volume}
3297 \index[dir]{Directive!Purge Oldest Volume}
3298 Cette directive indique au Director de rechercher le volume utilis\'e le plus
3299 ancien dans le pool lorsqu'un nouveau volume est requis par le Storage
3300 Daemon et qu'aucun n'est disponible. Le catalogue est alors purg\'e sans
3301 \'egards pour les p\'eriodes de r\'etention des fichiers et jobs \'ecrits sur ce
3302 volume. Le volume est alors recycl\'e pour \^etre utilis\'e pour la prochaine
3303 op\'eration d'\'ecriture. Cette directive outrepasse toute p\'eriode de r\'etention
3304 (Job, File, ou Volume) que vous avez pu sp\'ecifier par ailleurs.
3306 Cette directive peut \^etre utile si vous avez un nombre fixe de volumes dans
3307 un pool et que vous voulez cycler sur ces volumes lorsque tous les volumes
3308 sont pleins, sans avoir \`a vous soucier de param\'etrer les p\'eriodes de
3309 r\'etentions qui conviendraient. Cependant, en l'utilisant, vous courrez le
3310 risque de perdre toutes vos donn\'ees.
3312 {\bf Soyez conscient que {\bf Purge Oldest Volume} ne fait aucun cas d'aucune
3313 p\'eriode de r\'etention.} Si vous activez cette directive alors que vous ne poss\'edez
3314 qu'un seul volume, ce volume sera syst\'ematiquement \'ecras\'e tout de suite apr\`es
3315 avoir \'et\'e rempli ! Aussi, assurez vous au moins d'avoir un nombre d\'ecent de
3316 volumes dans votre pool avant d'ex\'ecuter un job. Si vous voulez que les p\'eriodes
3317 de r\'etention soient prises en compte, n'utilisez pas cette directive. Pour
3318 sp\'ecifier une p\'eriode de r\'etention, utilisez la directive {\bf Volume Retention}
3321 Je recommande fortement de ne pas utiliser cette directive, car il est certain que
3322 t\^ot ou tard, Bacula recyclera un volume contenant des donn\'ees valides et r\'ecentes.
3323 La valeur par d\'efaut est {\bf no}
3325 \item [Cleaning Prefix = \lt{}string\gt{}]
3326 \index[dir]{Cleaning Prefix}
3327 \index[dir]{Directive!Cleaning Prefix}
3328 Cette directive d\'efinit un pr\'efixe qui, s'il correspond au d\'ebut du nom d'un
3329 volume lors de son \'etiquettage, indique \`a Bacula que le volume en question est
3330 une cartouche de nettoyage, qui aura le statut {\bf VolStatus = Cleaning}.
3331 Ainsi Bacula ne tentera jamais d'utiliser cette cartouche. Cette option est
3332 particuli\`erement utile avec les librairies \'equip\'ees de lecteurs de codes barres o\`u,
3333 conventionnellement, les codes barres commen\
\ 3ant par {\bf CLN} sont trait\'es en
3334 tant que cartouches de nettoyage.
3338 \item [Label Format = \lt{}format\gt{}]
3339 \index[dir]{Label Format}
3340 \index[dir]{Directive!Label Format}
3341 Cette directive pr\'ecise le format des \'etiquettes des volumes de ce pool.
3342 La directive {\bf Format} est utilis\'ee comme un patron pour cr\'eer de nouveaux
3343 noms de volumes lors de l'\'etiquettage automatique.
3345 Le {\bf format} devrait \^etre sp\'ecifi\'e entre guillemets, et consiste en une
3346 cha\^ine de lettres, chiffres et caract\`eres sp\'eciaux tiret ({\bf -}), soulign\'e
3347 ({\bf \_}), double point ({\bf :}) et point ({\bf .}), qui sont consid\'er\'es valides
3348 pour un nom de volume.
3350 De plus, le {\bf format} peut comporter des caract\`eres variables qui seront
3351 substitu\'ees par un algorithme complexe, ce qui permet de cr\'eer des noms de volumes
3352 avec plusieurs formats diff\'erents. En tous les cas, le processus d'expansion des
3353 variables doit aboutir au jeu de caract\`eres d\'efinis comme l\'egaux dans le
3354 dernier paragraphe. G\'en\'eralement, ces caract\`eres variables commencent par
3355 un signe dollar ({\bf \$}) ou un crochet droit ({\bf [}). Si vous sp\'ecifiez
3356 des caract\`eres variables vous devriez toujours les encadrer de guillemets.
3357 Pour plus de d\'etails sur ce sujet, veuillez consulter le chapitre
3358 \ilink{Variable Expansion}{_ChapterStart50} de ce manuel.
3360 Si aucun caract\`ere variable n'est d\'ecouvert dans la cha\^ine, le nom de volume
3361 sera constitu\'e de la cha\^ine {\bf format} suffix\'ee du nombre de volumes dans le
3362 pool plus un, au format 4 chiffres et avec des z\'eros en t\^ete. Par exemple,
3363 avec {\bf Label Format = ''File-``}, les volumes seront nomm\'es
3364 {\bf File-0001}, {\bf File-0002}, ...
3366 Exception faite des variables sp\'ecifiques aux jobs, vous pouvez tester votre
3367 {\bf LabelFormat} en utilisant la section \ilink{ var command}{var} du
3368 chapitre Console de ce manuel.
3370 Dans la plupart des cas, vous devriez encadrer la sp\'ecification de format (la
3371 partie \`a droite du signe \'egale) entre guillemets. Notez que cette directive est
3372 obsol\`ete et qu'elle est remplac\'ee, \`a partir de la version 1.37 par un script Python
3373 pour la cr\'eation des noms de volumes.
3377 Pour qu'un pool puisse \^etre utilis\'e lors d'une sauvegarde, il faut qu'il lui soit
3378 associ\'e au moins un volume. Les volumes sont cr\'e\'es et affect\'es aux pools avec les
3379 commandes {\bf label} ou {\bf add} du programme {\bf Bacula Console}. Outre
3380 l'affectation du volume au pool (c'est \`a dire son r\'ef\'erencement
3381 dans le catalogue), le volume physique doit recevoir une \'etiquette logicielle
3382 valide pour que Bacula l'accepte. Ceci peut \^etre r\'ealis\'e automatiquement grâce
3383 \`a la commande {\bf label}. D'autre part, Bacula peut effectuer cette op\'eration
3384 automatiquement si l'instruction lui en est donn\'e, mais cette fonctionnalit\'e
3385 n'est pas encore pleinement impl\'ement\'ee.
3387 Voici un exemple d'une d\'efinition de ressource Pool valide :
3399 \subsubsection*{Le Scratch Pool}
3400 \addcontentsline{toc}{subsection}{Scratch Pool}
3401 \index[general]{Scratch Pool}
3402 En g\'en\'eral, vous pouvez nommer vos pool \`a votre guise, il existe cependant
3403 une importante restriction : le pool nomm\'e {\bf Scratch}, s'il existe,
3404 se comporte comme une r\'eserve de volumes o\`u Bacula pourra puiser s'il ne trouve
3405 aucun volume utilisable dans le pool normalement utilis\'e par le job. Le volume
3406 est alors d\'eplac\'e du pool Scratch vers le pool en d\'efaut.
3408 \subsection*{La ressource Catalog}
3409 \label{CatalogResource}
3410 \index[general]{Resource!Catalog }
3411 \index[general]{Ressource Catalog}
3412 \addcontentsline{toc}{subsection}{La ressource Catalog}
3414 La ressource Catalog pr\'ecise quel catalogue utiliser pour le job courant.
3415 Actuellement, Bacula ne peut utiliser qu'un type de serveur de bases de
3416 donn\'ees d\'efini lors de sa configuration : SQLite, MySQL, PostgreSQL.
3417 En revanche, vous pouvez utiliser autant de
3418 catalogues que vous le souhaitez. Par exemple, vous pouvez avoir un
3419 catalogue par client, ou encore un catalogue pour les sauvegardes, un autre
3420 pour les jobs de type Verify et un troisi\`eme pour les restaurations.
3425 \index[dir]{Catalog}
3426 \index[dir]{Directive!Catalog}
3427 D\'ebut de la ressource Catalog. Il faut au moins une ressource Catalogue.
3429 \item [Name = \lt{}name\gt{}]
3431 \index[dir]{Directive!Name}
3432 Le nom du Catalog. Il n'a pas besoin d'\^etre en relation avec le nom sur le serveur
3433 de base de donn\'ees. Ce nom sera repris dans la ressource Client, indiquant ainsi
3434 que toutes les donn\'ees relatives \`a ce client sont maintenues dans ce catalogue.
3435 Cette directive est requise.*
3438 \item [password = \lt{}password\gt{}]
3439 \index[dir]{password}
3440 \index[dir]{Directive!password}
3441 Cette directive sp\'ecifie le mot de passe \`a utiliser pour se connecter au
3442 catalogue. Cette directive est requise.
3444 \item [DB Name = \lt{}name\gt{}]
3445 \index[dir]{DB Name}
3446 \index[dir]{Directive!DB Name}
3447 Cette directive sp\'ecifie le nom de la base de donn\'ees. Si vous utilisez plusieurs
3448 catalogues, vous sp\'ecifiez lequel ici. Si vous utilisez un serveur de bases de
3449 donn\'ees externe plut\^ot que l'int\'egr\'e, vous devez sp\'ecifier un nom connu du
3450 serveur (autrement dit, le nom que vous avez utilis\'e lorsque vous avez cr\'e\'e les
3451 tables Bacula.). Cette directive est requise.
3453 \item [user = \lt{}user\gt{}]
3455 \index[dir]{Directive!user}
3456 L'utilisateur habilit\'e \`a se connecter au catalogue. Cette directive est requise.
3458 \item [DB Socket = \lt{}socket-name\gt{}]
3459 \index[dir]{DB Socket}
3460 \index[dir]{Directive!DB Socket}
3461 Il s'agit du nom d'un {\it socket} \`a utiliser sur la machine locale pour se
3462 connecter au catalogue. Cette directive n'est utilis\'ee que par MySQL, elle est
3463 ignor\'ee par SQLite. Normalement, si ni {\bf DB Socket}, ni {\bf DB Address} ne sont
3464 sp\'ecifi\'ees, MySQL utilise le socket par d\'efaut.
3466 \item [DB Address = \lt{}address\gt{}]
3467 \index[dir]{DB Address}
3468 \index[dir]{Directive!DB Address}
3469 Il s'agit de l'adresse du serveur de bases de donn\'ees. En principe, vous
3470 utiliserez cette directive plut\^ot que {\bf DB Socket} si le serveur de bases de
3471 donn\'ees est une autre machine. Dans ce cas, vous sp\'ecifierez aussi le port {\bf DB Port}.
3472 Cette directive n'est utilis\'ee que par MySQL, et ignor\'ee par SQLite. Elle est
3475 \item [DB Port = \lt{}port\gt{}]
3476 \index[dir]{DB Port}
3477 \index[dir]{Directive!DB Port}
3478 Cette directive d\'efinit le port \`a utiliser en conjonction avec {\bf DB Address} pour
3479 acc\'eder au catalogue s'il est h\'eberg\'e sur une autre machine. Elle n'est utilis\'ee que par
3480 MySQL, et ignor\'ee par SQLite. Elle est optionnelle.
3482 %% \item [Multiple Connections = \lt{}yes|no\gt{}]
3483 %% \index[dir]{Multiple Connections}
3484 %% \index[dir]{Directive!Multiple Connections}
3485 %% Par d\'efaut, cette directive est d\'esactiv\'ee, ce qui implique que tous les jobs utilisant
3486 %% le m\^eme catalogue se partagent une m\^eme connection au catalogue, et que Bacula n'autorise
3487 %% qu'un job \`a la fois \`a communiquer. Si vous activez cette directive ({\bf yes}), Bacula
3488 %% permettra les connection multiples au catalogue, c'est pourquoi la base de donn\'ees
3489 %% doit supporter le {\it multi thread}. Pour SQLite et PostgreSQL, ce n'est pas un probl\`eme.
3490 %% Pour MySQL, vous devez vous assurer {\bf attentivement} d'avoir la version {\it multi thread}
3491 %% de la librairie cliente sur votre syst\`eme. Une fois cette directive activ\'ee, chaque job
3492 %% disposera de sa propre connection au catalogue, la base de donn\'ees contr\^olant les interactions
3493 %% entre les diff\'erents jobs. Ceci peut accro\^itre significativement les op\'erations de la
3494 %% base de donn\'ees si vous ex\'ecutez plusieurs jobs simultan\'es. De plus, pour SQLite et PostgreSQL,
3495 %% Bacula activera automatiquement les transactions dans la base de donn\'ees. Ceci peut accro\^itre
3496 %% significativement les insertions d'attributs dans le catalogue, que ce soit pour un job unique
3497 %% ou pour plusieurs jobs simultan\'es.
3499 %% Cette directive n'a pas \'et\'e test\'ee. Veuillez, s'il vous pla\^it, la tester scrupuleusement avant
3500 %% de l'activer en production, et nous fournir un retour de vos tests.
3504 Voici un exemple d'une d\'efinition de ressource Catalog valide :
3513 password = "" # no password = no security
3518 en voici une deuxi\`eme pour un catalogue sur une autre machine :
3528 DB Address = remote.acme.com
3534 \subection*{La ressource Messages}
3535 \label{MessagesResource2}
3536 \index[general]{Resource!Messages }
3537 \index[general]{Messages Ressource }
3538 \addcontentsline{toc}{subsection}{Messages Resource}
3540 Pour les d\'etails sur la ressource Messages, veuillez consulter
3541 le chapitre \ilink{La ressource Messages}{_ChapterStart15} de ce manuel.
3543 \subsection*{La ressource Console}
3544 \label{ConsoleResource1}
3545 \index[general]{Console Resource }
3546 \index[general]{Resource!Console }
3547 \addcontentsline{toc}{subsection}{Console Resource}
3549 A partir de la version 1.33 de Bacula, l'administrateur dispose de trois sortes de
3550 consoles diff\'erentes pour interagir avec le Director. Ces trois types de consoles
3551 comportent trois niveaux de s\'ecurit\'e diff\'erents.
3554 \item Le premier type de console est une console {\bf anonyme} ou {\bf par d\'efaut},
3555 qui d\'etient tous les privil\`eges. La ressource Console n'est pas requise pour
3556 ce type puisque le mot de passe est sp\'ecifi\'e dans la ressource Director et par
3557 cons\'equent, de telles consoles n'ont pas de nom d\'efini par une directive {\bf Name =}.
3558 C'est le premier type de console impl\'ement\'e dans les versions ant\'erieures \`a 1.33, il
3559 demeure valide. Sont usage est typiquement r\'eserv\'e aux administrateurs.
3560 \item Le second type de console, apparu avec la version 1.33 est une console "nomm\'ee"
3561 d\'efinie dans une ressource Console simultan\'ement dans le fichier de configuration du
3562 Director et dans le fichier de configuration de la Console, les noms et mots de passe
3563 devant \^etre en conjonction dans ces deux fichiers.
3564 Ce type de console ne d\'etient absolument aucun privil\`ege, except\'es ceux explicitement
3565 sp\'ecifi\'es dans la ressource Console du fichier de configuration du Director.
3566 Ainsi, vous pouvez d\'efinir plusieurs consoles avec des noms et mots de passe distincts
3567 destin\'ees \`a diff\'erents utilisateurs avec diff\'erents privil\`eges. Par d\'efaut ces consoles
3568 ne peuvent absolument rien faire. Il vous revient de leur accorder des privil\`eges
3569 ou plut\^ot des acc\`es aux commandes et ressources en sp\'ecifiant des listes de
3570 contr\^ole d'acc\`es (ACL) dans la ressource Console du fichier de configuration du
3571 Director. Les ACLs sont sp\'ecifi\'ees par une directive suivie d'une liste de noms
3572 d'acc\`es. Vous trouverez des exemples ci-dessous.
3573 \item Le troisi\`eme type de console est similaire au second en ce qu'il requiert
3574 une d\'efinition de ressource Console dans le fichier de configuration du
3575 Director et dans le fichier de configuration de la Console. De plus, si le nom de
3576 la console sp\'ecifi\'e par la directive {\bf Name =} est le m\^eme que le nom du client,
3577 cette console est autoris\'ee \`a utiliser la commande {\bf SetIP} pour modifier la
3578 directive Address dans la ressource client du fichier de configuration du
3579 Director en l'adresse IP de la console. Ceci permet aux portables et autres machines
3580 utilisant DHCP (adresses IP dynamiques) de "notifier" le Director de leur adresse
3584 La ressource Console est optionnelle. Les directives suivantes sont permises
3585 dans le fichier de configuration du Director.
3589 \item [Name = \lt{}name\gt{}]
3591 \index[dir]{Directive!Name}
3592 Le nom de la console. Ce nom doit \^etre en conjonction avec celui sp\'ecifi\'e
3593 dans le fichier de configuration de la Console (comme c'est le cas pour les
3594 d\'efinitions de clients).
3596 \item [Password = \lt{}password\gt{}]
3597 \index[dir]{Password}
3598 \index[dir]{Directive!Password}
3599 Sp\'ecifie le mot de passe qu'une console nomm\'ee doit fournir pour \^etre autoris\'ee.
3600 Le m\^eme mot de passe doit appara\^itre dans la ressource Console du fichier
3601 de configuration de la Console. Pour plus de s\'ecurit\'e, le mot de passe n'est
3602 jamais r\'eellement transmis \`a travers le r\'eseau, mais plut\^ot un code de
3603 hachage de type {\it challenge response} cr\'e\'e \`a partir du mot de passe.
3604 Cette directive est requise. Si vous disposez de {\bf /dev/random} ou {\bf bc}
3605 sur votre machine, Bacula g\'en\`erera al\'eatoirement ce mot de passe lors du
3606 processus de configuration, autrement, il sera laiss\'e blanc.
3608 \item [JobACL = \lt{}name-list\gt{}]
3610 \index[dir]{Directive!JobACL}
3611 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Job
3612 qui peuvent \^etre acc\'ed\'es par la console. Sans cette directive, la console ne peut
3613 acc\'eder \`a aucune des ressources Job d\'efinies dans le fichier de configuration
3614 du Director. Plusieurs ressources Job peuvent \^etre sp\'ecifi\'ees en les s\'eparant par
3615 des virgules, et/ou en sp\'ecifiant plusieurs directives JobACL. Par exemple, la
3616 directive peut \^etre sp\'ecifi\'ee ainsi :
3620 JobACL = kernsave, "Backup client 1", "Backup client 2"
3621 JobACL = "RestoreFiles"
3626 Avec cette sp\'ecificaton, la console peut acc\'eder aux ressources du Director pour
3627 les quatre jobs d\'esign\'es par la directive JobACL, et uniquement \`a eux.
3629 \item [ClientACL = \lt{}name-list\gt{}]
3630 \index[dir]{ClientACL}
3631 \index[dir]{Directive!ClientACL}
3632 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Client
3633 iaccessibles par la console.
3635 \item [StorageACL = \lt{}name-list\gt{}]
3636 \index[dir]{StorageACL}
3637 \index[dir]{Directive!StorageACL}
3638 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Storage
3639 accessibles par la console.
3641 \item [ScheduleACL = \lt{}name-list\gt{}]
3642 \index[dir]{ScheduleACL}
3643 \index[dir]{Directive!ScheduleACL}
3644 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Schedule
3645 accessibles par la console.
3647 \item [PoolACL = \lt{}name-list\gt{}]
3648 \index[dir]{PoolACL}
3649 \index[dir]{Directive!PoolACL}
3650 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Pool
3651 accesibles ar la console.
3653 \item [FileSetACL = \lt{}name-list\gt{}]
3654 \index[dir]{FileSetACL}
3655 \index[dir]{Directive!FileSetACL}
3656 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources FileSet
3657 accessibles par la console.
3659 \item [CatalogACL = \lt{}name-list\gt{}]
3660 \index[dir]{CatalogACL}
3661 \index[dir]{Directive!CatalogACL}
3662 Cette directive est utilis\'ee pour sp\'ecifier une liste de noms de ressources Catalog
3663 accessibles par la console.
3665 \item [CommandACL = \lt{}name-list\gt{}]
3666 \index[dir]{CommandACL}
3667 \index[dir]{Directive!CommandACL}
3668 Cette directive est utilis\'ee pour sp\'ecifier une liste de commandes de la console
3669 qui peuvent \^etre ex\'ecut\'ees par la console.
3673 En plus des diff\'erents noms de ressources du Director et de commandes, le mot-clef
3674 sp\'ecial {\bf *all*} peut \^etre sp\'ecifi\'e dans chacune des directives ACL ci-dessus.
3675 Sa pr\'esence signifie que toute ressource ou commande (pourvu qu'elle soit appropri\'ee
3676 \`a la directive) est accept\'ee. Pour un exemple de fichier de configuration, voyez le
3677 chapitre \ilink{Configuration de la console}{_ChapterStart36} de ce manuel
3679 \subsection*{La ressource Counter}
3680 \label{CounterResource}
3681 \index[general]{Ressource!Counter }
3682 \index[general]{Ressource Counter }
3683 \addcontentsline{toc}{subsection}{Ressource Counter}
3684 La ressource Counter d\'efinit une variable-compteur qui peut \^etre acc\'ed\'ee par le
3685 processus d'expansion de variables utilis\'e pour la cr\'eation de d'\'etiquettes (labels)
3686 de volumes avec la directive {\bf LabelFormat}. Consultez le paragraphe sur la directive
3687 \ilink{LabelFormat}{Label} de ce chapitre pour plus de d\'etails.
3692 \index[dir]{Counter}
3693 \index[dir]{Directive!Counter}
3694 D\'ebut de la ressource Counter. les directives Counter sont optionnelles.
3696 \item [Name = \lt{}name\gt{}]
3698 \index[dir]{Directive!Name}
3699 iLe nom de la variable-compteur. Il s'agit du nom que vous utiliserez pour vous r\'ef\'erer
3700 \`a cette variable et acc\'eder \`a sa valeur.
3702 \item [Minimum = \lt{}integer\gt{}]
3703 \index[dir]{Minimum}
3704 \index[dir]{Directive!Minimum}
3705 Sp\'ecifie la valeur minimale de la variable-compteur. Cette valeur devient celle par d\'efaut.
3706 Si elle n'est pas fournie, sa valeur est z\'ero.
3708 \item [Maximum = \lt{}integer\gt{}]
3709 \index[dir]{Maximum}
3710 \index[dir]{Directive!Maximum}
3711 Sp\'ecifie la valeur maximale de la variable-compteur. Si elle n'est pas fournie, ou si elles
3712 est r\'egl\'ee \`a z\'ero, la variable compteur peut prendre une valeur maximale de 2 147 483 648
3713 ($2^{31}$). Au del\`a de cette valeur, le compteur est remis au minimum.
3715 \item [*WrapCounter = \lt{}counter-name\gt{}]
3716 \index[dir]{*WrapCounter}
3717 \index[dir]{Directive!*WrapCounter}
3718 Si cette valeur est sp\'ecifi\'ee, lorsque la variable-compteur d\'epasse le maximum et
3719 est remise au minimum, le compteur sp\'ecifi\'e par la directive {\bf WrapCounter} est
3720 incr\'ement\'e. (Ceci n'est, pour le moment, pas impl\'ement\'e.)
3722 \item [Catalog = \lt{}catalog-name\gt{}]
3723 \index[dir]{Catalog}
3724 \index[dir]{Directive!Catalog}
3725 Si cette directive est sp\'ecifi\'ee, le compteur et sa valeur sont sauvegard\'es dans le
3726 catalogue sp\'ecifi\'e. Dans le cas contraire, le compteur est red\'efini \`a chaque
3727 d\'emarrage de Bacula.
3731 \subsection*{ Voici un exemple complet de fichier de configuration du Director.}
3732 \label{SampleDirectorConfiguration}
3733 \index[general]{File!Exemple Complet Director Configuration }
3734 \index[general]{Exemple Complet Fichier Configuration Director}
3735 \addcontentsline{toc}{subsection}{Exemple Complet Fichier Configuration Directo}
3736 Un exemple de fichier de configuration du Director pourrait \^etre le suivant :
3742 # Default Bacula Director Configuration file
3744 # The only thing that MUST be changed is to add one or more
3745 # file or directory names in the Include directive of the
3748 # For Bacula release 1.15 (5 March 2002) -- redhat
3750 # You might also want to change the default email address
3751 # from root to your address. See the "mail" and "operator"
3752 # directives in the Messages resource.
3754 Director { # define myself
3756 QueryFile = "/home/kern/bacula/bin/query.sql"
3757 WorkingDirectory = "/home/kern/bacula/bin/working"
3758 PidDirectory = "/home/kern/bacula/bin/working"
3759 Password = "XkSfzu/Cf/wX4L8Zh4G4/yhCbpLcz3YVdmVoQvU3EyF/"
3761 # Define the backup Job
3763 Name = "NightlySave"
3765 Level = Incremental # default
3768 Schedule = "WeeklyCycle"
3778 Where = /tmp/bacula-restores
3784 # List of files to be backed up
3788 Options { signature=SHA1 }
3790 # Put your list of files here, one per line or include an
3791 # external list with:
3795 # Note: / backs up everything
3800 # When to do the backups
3802 Name = "WeeklyCycle"
3803 Run = Full sun at 1:05
3804 Run = Incremental mon-sat at 1:05
3806 # Client (File Services) to backup
3811 Password = "MQk6lVinz4GG2hdIZk1dsKE/LxMZGo6znMHiD7t7vzF+"
3812 File Retention = 60d # sixty day file retention
3813 Job Retention = 1y # 1 year Job retention
3814 AutoPrune = yes # Auto apply retention periods
3816 # Definition of DLT tape storage device
3820 Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3821 Device = "HP DLT 80" # same as Device in Storage daemon
3822 Media Type = DLT8000 # same as MediaType in Storage daemon
3824 # Definition for a DLT autochanger device
3828 Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3829 Device = "Autochanger" # same as Device in Storage daemon
3830 Media Type = DLT-8000 # Different from DLTDrive
3833 # Definition of DDS tape storage device
3837 Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3838 Device = SDT-10000 # same as Device in Storage daemon
3839 Media Type = DDS-4 # same as MediaType in Storage daemon
3841 # Definition of 8mm tape storage device
3845 Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3846 Device = "Exabyte 8mm"
3849 # Definition of file storage device
3853 Password = "jMeWZvfikUHvt3kzKVVPpQ0ccmV6emPnF2cPYFdhLApQ"
3854 Device = FileStorage
3857 # Generic catalog service
3860 dbname = bacula; user = bacula; password = ""
3862 # Reasonable message delivery -- send most everything to
3863 # the email address and to the console
3866 mail = root@localhost = all, !skipped, !terminate
3867 operator = root@localhost = mount
3868 console = all, !skipped, !saved
3871 # Default pool definition
3879 # Restricted console used by tray-monitor to get the status of the director
3883 Password = "GN0uRo7PTUmlMbqrJ2Gr1p0fk0HQJTxwnFyE4WSST3MWZseR"
3884 CommandACL = status, .status