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