4 \section*{Configuration du Storage Daemon}
5 \label{_ChapterStart31}
6 \index[general]{Configuration du Storage Daemon}
7 \index[general]{Configuration!Storage Daemon}
8 \addcontentsline{toc}{section}{Configuration du Storage Daemon}
11 \index[general]{General}
12 \addcontentsline{toc}{subsection}{General}
13 Le fichier de configuration du Storage Daemon a relativement peu de d\'efinitions
14 de resources. Cependant, en raison du nombre pl\'ethorique de media et de syst\`emes,
15 il doit \^etre hautement param\'etrable. Par cons\'equent, il existe un nombre assez important
16 de directives dans la d\'efinition de ressource Devices qui vous permettent de d\'efinir
17 toutes les caract\'eristiques de votre p\'eriph\'erique de stockage. Heureusement, avec les
18 mat\'eriels modernes, les valeurs par d\'efaut sont g\'en\'eralement suffisantes, et tr\`es
19 peu de directives sont r\'eellement indispensables.
21 Des exemples de directives de ressources device connues pour fonctionner pour
22 beaucoup de lecteurs de bandes communs peuvent \^etre trouv\'es dans le r\'epertoire :
23 \lt{}bacula-src\gt{}/examples/devices}. La plupart seront \'enum\'er\'es ici.
25 Pour une discussion g\'en\'erale concernant les fichiers de configuration de Bacula,
26 les ressources et les types de donn\'ees reconnus, veuillez consulter le
27 chapitre \ilink{Configuration}{_ChapterStart16} de ce manuel. Les d\'efinitions de
28 ressources Storage suivantes doivent \^etre d\'efinies :
32 \ilink{Storage}{StorageResource} -- Pour d\'efinir le nom du Storage Daemon.
34 \ilink{Director}{DirectorResource1} -- Pour d\'efinir le nom du Director et le mot
35 de passe permettant d'y acc\'eder.
37 \ilink{Device}{DeviceResource} -- Pour d\'efinir les caract\'eristiques de votre
38 p\'eriph\'erique de stockage.
40 \ilink{Messages}{_ChapterStart15} -- Pour d\'efinir o\`u les messages d'erreurs
41 et d'information doivent \^etre exp\'edi\'es.
44 \subsection*{Ressource Storage}
45 \label{StorageResource}
46 \index[general]{Ressource!Storage}
47 \index[general]{Ressource Sorage}
48 \addcontentsline{toc}{subsection}{Ressource Storage}
50 En g\'en\'eral, les propri\'et\'es sp\'ecifi\'ees au niveau de la ressource Storage d\'efinissent
51 des propri\'et\'es globales du Storage Daemon. Chaque fichier de configuration de
52 Storage Daemon doit avoir sa propre d\'efinition de ressource Storage.
56 \item [Name = \lt{}Storage-Daemon-Name\gt{}]
58 \index[sd]{Directive!Name}
59 Sp\'ecifie le nom du Storage Daemon. Cette directive est requise.
60 \item [Working Directory = \lt{}R\'epertoire\gt{}]
61 \index[sd]{Working Directory}
62 \index[sd]{Directive!Working Directory}
63 Cette directive sp\'ecifie un r\'epertoire o\`u le Storage Daemon peut placer ses fichiers
64 d'\'etat. Ce r\'epertoire ne devrait \^etre utilis\'e que par Bacula, mais peut \^etre
65 partag\'e par d'autres daemons Bacula, pourvu que les noms donn\'es \`a chaque daemon
66 soient uniques. Cette directive est requise.
68 \item [Pid Directory = \lt{}R\'epertoire\gt{}]
69 \index[sd]{Pid Directory}
70 \index[sd]{Directive!Pid Directory}
71 Cette directive sp\'ecifie un r\'epertoire o\`u le Storage Daemon peut d\'eposer son fichier
72 d'Id de processus. Ce fichier est utilis\'e pour stopper Bacula et pr\'evenir l'ex\'ecution
73 simultan\'ee de plusieurs copies de Bacula. Les substitutions shell standard sont
74 effectu\'ees \`a la lecture du fichier de configuration, de sorte que des valeurs
75 telles que {\bf \$HOME} seront correctement substitu\'ees.
77 Typiquement, sur les syst\`emes Linux, vous utiliserez ici {\bf /var/run}. Si vous
78 n'installez pas Bacula dans les r\'epertoires syst\`eme, vous pouvez utiliser le
79 r\'epertoire de travail {\bf Working Directory} d\'efini plus haut.
80 Cette directive est requise.
82 \item [Heartbeat Interval = \lt{}P\'eriode\gt{}]
83 \index[sd]{Heartbeat Interval}
84 \index[sd]{Directive!Heartbeat Interval}
85 \index[general]{Heartbeat Interval}
86 \index[general]{Broken pipe}
87 Cette directive d\'efinit la p\'eriode des pulsations \'emises par le Storage Daemon
88 vers le File Daemon lorqu'il (le SD) se trouve en situation d'attente du montage
89 d'une cartouche par l'op\'erateur. La valeur par d\'efaut est z\'ero, ce qui d\'esactive
90 les pulsations. Cette fonctionnalit\'e est particuli\`erement utile si vous avez un
91 routeur (tel que les 3Com) qui ne suit pas les standards Internet et expire une
92 connection valide apr\`es une courte dur\'ee, bien que {\it keepalive} soit activ\'e.
93 Ceci produit habituellement un message d'erreur du type {\it broken pipe}.
95 \item [Maximum Concurrent Jobs = \lt{}nombre\gt{}]
96 \index[sd]{Maximum Concurrent Jobs}
97 \index[sd]{Directive!Maximum Concurrent Jobs}
98 O\`u \lt{}nombre\gt{} est nombre maximal de jobs qui peuvent \^etre ex\'ecut\'es
99 simultan\'ement. La valeur par d\'efaut est fix\'ee \`a 10, mais vous pouvez d\'efinir
100 une valeur plus grande. Chaque connexion depuis le Director (par exemple
101 une requ\^ete de statut, le lancement d'un job...) est consid\'er\'ee comme un job,
102 aussi, si vous voulez conserver la possibilit\'e d'utiliser la commande
103 {\bf status} dans la console alors qu'un job est en cours d'ex\'ecution, vous
104 devez utiliser une valeur strictement sup\'erieure \`a 1. Pour ex\'ecuter plusieurs
105 jobs simultan\'ement, vous devez param\'etrer plusieurs autres directives dans le
106 fichier de configuration du Director. Selon ce que vous voulez faire, il faudra
107 intervenir sur l'un ou l'autre param\`etre, mais vous devrez presque surement
108 r\'egler le param\`etre {\bf Maximum Concurrent Jobs} de la ressource Storage du
109 fichier de configuration du Director, et peut-\^etre aussi ceux des ressources
112 \item [SDAddresses = \lt{}Adresse IP\gt{}]
113 \index[sd]{SDAddresses}
114 \index[sd]{Directive!SDAddresses}
115 Pr\'ecise les ports et adresses sur lesquels le Storage Daemon est \`a
116 l'\'ecoute de connections du Director. En principe, les valeurs par d\'efaut sont
117 suffisantes, et vous n'avez pas besoin d'utiliser cette directive. La meilleure
118 explication du fonctionnement de cette directive est certainement un exemple :
122 SDAddresses = { ip = {
123 addr = 1.2.3.4; port = 1205; }
125 addr = 1.2.3.4; port = http; }
138 addr = 201:220:222::2
141 addr = bluedot.thun.net
147 o\`u "ip", "ip4", "ip6", "addr", et "port" sont des mots-clef. Notez que les adresses
148 peuvent \^etre sp\'ecifi\'ees sous forme de quadruplets point\'es, de nom symboliques
149 (uniquement dans la sp\'ecification "ip") ou en notation IPv6 \`a double points. Le port
150 peut quand \`a lui \^etre sp\'ecifi\'e par son num\'ero, ou par sa valeur mn\'emonique du
151 fichier /etc/services. Si un port n'est pas sp\'ecifi\'e, la valeur par d\'efaut est
152 utilis\'ee. Si une section ip est sp\'ecifi\'ee, la r\'esolution peut \^etre r\'ealis\'ee
153 par ipv4 ou ipv6. En revanche, si ip4 ou ip6 est sp\'ecifi\'ee, seule la r\'esolution
154 correspondante fonctionne.
156 Vous pouvez, avec ces directives, remplacer les valeurs des directives SDPort et
157 SDAddress montr\'ees ci-dessous.
159 \item [SDPort = \lt{}Num\'ero de port\gt{}]
161 \index[sd]{Directive!SDPort}
162 Sp\'ecifie le num\'ero de port sur lequel le Storage Daemon \'ecoute les connexions
163 en provenance du Director. La valeur par d\'efaut est 9103.
165 \item [SDAddress = \lt{}Adresse IP\gt{}]
166 \index[sd]{SDAddress}
167 \index[sd]{Directive!SDAddress}
168 Cette directive est optionnelle. Lorsqu'elle est sp\'ecifi\'ee, le Storage Daemon n'accepte
169 de connections (de Director(s) ou de File(s) Daemon(s)) que de l'adresse sp\'ecifi\'ee
170 {\bf Adresse-IP}, qui peut \^etre
171 soit un nom de domaine, soit une adresse IP au format quadruplet point\'e.
172 Si cette directive n'est pas sp\'ecifi\'ee, le Storage Daemon acceptera des connections de
173 de toute adresse valide.
177 Voici une d\'efinition typique d'une ressource Storage du Storage Daemon :
183 # "Global" Storage daemon configuration specifications appear
184 # under the Storage resource.
187 Name = "Storage daemon"
189 WorkingDirectory = "~/bacula/working"
190 Pid Directory = "~/bacula/working"
195 \subsection*{La ressource Director}
196 \label{DirectorResource1}
197 \index[general]{Ressource Director}
198 \index[general]{Resource!Director}
199 \addcontentsline{toc}{subsection}{La ressource Director}
201 La ressource Director sp\'ecifie le nom du Director qui est autoris\'e
202 \`a utiliser les services du Storage Daemon. Il peut exister plusieurs
203 ressources Director. Le nom et le mot de passe du Director doivent
204 s'accorder avec leurs homologues dans le fichier de configuration
209 \item [Name = \lt{}Nom-du-Director\gt{}]
211 \index[sd]{Directive!Name}
212 Sp\'ecifie le nom du Director autoris\'e \`a se connecter au Storage Daemon.
213 Cette directive est requise.
215 \item [Password = \lt{}Mot-de-passe-du-Director\gt{}]
217 \index[sd]{Directive!Password}
218 Sp\'ecifie le mot de passe qui doit \^etre soumis par le Director susnomm\'e.
219 Cette directive est requise.
221 \item [Monitor = \lt{}yes|no\gt{}]
223 \index[sd]{Directive!Monitor}
224 Si cette directive est d\'esactiv\'ee ({\bf no}), ce qui est le cas par d\'efaut,
225 ce Director dispose d'un acc\`es illimit\'e \`a ce Storage Daemon. Dans le cas
226 contraire, ce Director est brid\'e de fa\
\ 3on \`a pouvoir seulement r\'ecup\'erer le
227 statut courant de ce Storage Daemon.
229 Si ce Director est utilis\'e par un superviseur, nous vous recommandons
230 fortement d'activer cette directive pour \'eviter de s\'erieux probl\`emes de
235 Voici un exemple d'une d\'efinition de ressource Director valide :
241 Password = my_secret_password
246 \label{DeviceResource}
247 \subsection*{La Ressource Device}
248 \index[general]{Resource!Device}
249 \index[general]{Ressource Device}
250 \addcontentsline{toc}{subsection}{Ressource Device}
252 La ressource Device sp\'ecifie les d\'etails de chaque p\'eriph\'erique (en g\'en\'eral,
253 un lecteur de bandes) qui peut \^etre utilis\'e par le Storage Daemon. Un
254 Storage Daemon peut disposer de plusieurs ressources Device. En g\'en\'eral,
255 les propri\'et\'es sp\'ecifi\'ees dans la ressource Device sont sp\'ecifiques
260 \item [Name = {\it Nom-de-p\'eriph\'erique}]
262 \index[sd]{Directive!Name}
263 Sp\'ecifie le nom que le Director devra utiliser pour d\'esigner ce p\'eriph\'erique.
264 Il s'agit d'un nom logique, c'est une cha\^ine qui peut comporter jusqu'\`a 127
265 caract\`eres. C'est en g\'en\'eral une bonne id\'ee d'utiliser un nom qui corresponde
266 au nom "humain" du p\'eriph\'erique (NDT: la vo dit "the english name"). Le nom
267 physique du p\'eriph\'erique est sp\'ecifi\'e au niveau de la directive {\bf Archive Device}
268 d\'ecrite ci-dessous. Le nom que vous sp\'ecifiez ici est aussi utilis\'e dans le
269 fichier de configuration de votre Director au niveau de la
270 \ilink{directive Device}{StorageResource2} de sa ressource Storage.
272 \item [Archive Device = {\it cha\^ine-nom}]
273 \index[sd]{Archive Device}
274 \index[sd]{Directive!Archive Device}
275 La {\bf cha\^ine-nom} (NDT : name-string dans la vo) sp\'ecifie le nom de fichier syst\`eme
276 du p\'eriph\'erique de stockage g\'er\'e par ce daemon. Il s'agit en g\'en\'eral d'un nom
277 de p\'eriph\'erique amovible, par exemple un lecteur de bande d\'esign\'e par "{\bf /dev/nst0}"
278 ou "{\bf /dev/rmt/0mbn}". Dans le cas d'un graveur de DVD, ce sera par exemple
279 {\bf /dev/hdc}. Ce peut \^etre aussi un un nom de r\'epertoire si vous sauvegardez
280 sur disque. Dans ce cas, vous devez soumettre le chemin absolu vers ce
281 r\'epertoire. Lorsque vous utilisez un lecteur de bandes, il est pr\'ef\'erable
282 d'utiliser la variante "non-rewind" du fichier de p\'eriph\'erique. De plus, sur les
283 syst\`emes tels que Sun, qui disposent de plusieurs m\'ethodes d'acc\`es aux cartouches,
284 prenez soin de sp\'ecifier l'usage de la convention I/O Berkeley avec les p\'eriph\'eriques.
285 le {\bf b} de la sp\'ecification {\bf /dev/rmt/0mbn} Solaris (Sun) est ce qui est
286 requis dans ce cas. Bacula ne supporte pas le comportement SysV des lecteurs de bandes.
288 Comme mentionn\'e plus haut,Archive Device est, en principe, le nom d'un lecteur de bandes,
289 mais vous pouvez tout aussi bien sp\'ecifier le chemin absolu vers un r\'epertoire
290 existant. Dans ce cas, Bacula utilisera un fichier pour stocker les donn\'ees dans
291 le r\'epertoire sp\'ecifi\'e, le nom de fichier utilis\'e sera celui du volume tel que
292 sp\'ecifi\'e dans le catalogue. Si vous souhaitez \'ecrire dans plusieurs r\'epertoires
293 (dans le but de r\'epartir la charge sur plusieurs disques), vous devez d\'efinir deux ressources
294 Device, chacune comportant une Archive Device avec un r\'epertoire diff\'erent.
296 Une troisi\`eme possibilit\'e consiste \`a sp\'ecifier le nom d'un FIFO. Un FIFO est un
297 fichier sp\'ecial qui connecte deux programmes via la m\'emoire du noyau. Si vous
298 sp\'ecifiez un FIFO en guise d'Archive Device, vous devez avoir un programme qui
299 lit ce que Bacula \'ecrit dans le FIFO. Lorsque le Storage Daemon d\'emarre le job,
300 il attend que le programme lecteur commence \`a lire pendant un d\'elai maximal de
301 de {\bf MaximumOpenWait} secondes, au del\`a duquel le job est termin\'e. Par cons\'equent,
302 il est pr\'ef\'erable de lancer le programme lecteur au d\'ebut du job, par exemple
303 grâce \`a la directive {\bf RunBeforeJob}. Pour ce type de p\'eriph\'erique, vous ne devez
304 jamais sp\'ecifier {\bf AlwaysOpen}, puisque vous voulez que le Storage Daemon
305 ne l'ouvre que lorsqu'un job d\'emarre, aussi veuillez attribuer explicitement
306 la valeur {\bf No} \`a cette directive. Puisqu'un FIFO est un p\'eriph\'erique \`a sens
307 unique, Bacula ne tente pas d'en lire le label, il se contente d'y \'ecrire. Pour
308 cr\'eer un volume FIFO dans le catalogue, utilisez la commande {\bf add} plut\^ot
309 que la commande {\bf label} afin d'\'eviter de tenter d'\'ecrire un label.
311 Lors d'une op\'eration de restauration, si l'Archive Device est un FIFO, Bacula
312 tente de lire le FIFO, aussi vous devez avoir un programme externe qui \'ecrit dans
313 le FIFO. Bacula attend que ce programme commence \`a \'ecrire pendant un d\'elai
314 maximal de {\bf MaximumOpenWait} secondes apr\`es quoi il termine le job. Comme
315 mentionn\'e ci-dessus, vous pouvez utiliser la directive {\bf RunBeforeJob} pour
316 lancer ce programme auteur d\`es le d\'ebut du job.
318 La directive Archive Device est requise.
320 \item [Device Type = {\it Sp\'ecification-de-type}]
321 \index[sd]{Device Type}
322 \index[sd]{Directive!Device Type}
323 La sp\'ecification Device Type de d\'eclarer explicitement \`a Bacula quel type
324 de p\'eriph\'erique vous d\'efinissez. La valeur de {\it Sp\'ecification-de-type} peut
325 \^etre l'une des suivantes :
328 Indique \`a Bacula que le p\'eriph\'erique est un fichier. Ce peut \^etre
329 un fichier d\'efini sur un m\'edium fixe ou au contraire amovible (par exemple, un
330 p\'eriph\'erique USB). Tous les fichiers doivent \^etre des p\'eriph\'eriques en acc\`es
331 s\'electif (NDT : traduction Google sans doute \`a revoir de "random access")
333 Indique \`a Bacula que le p\'eriph\'erique est un lecteur de bandes, donc \`a
334 acc\`es s\'equentiel. Ces p\'eriph\'eriques sont control\'e par les appels
337 Indique \`a Bacula que le p\'eriph\'erique est un p\'eriph\'erique \`a acc\`es
338 s\'equentiel "first-in-first-out" (premier entr\'e, premier sorti) en
339 lecture seule ou en \'ecriture seule.
341 Indique \`a Bacula que le p\'eriph\'erique est un DVD. Les DVDs sont \`a acc\`es
342 s\'equentiel en \'ecriture et \`a acc\`es s\'electif (NDT : traduction Google sans
343 doute \`a revoir de "random access") en lecture.
346 La directive Device Type n'est pas requise, et si elle n'est pas sp\'ecifi\'ee,
347 Bacula tentera de deviner cette information selon la sp\'ecification Archive
348 Device fournie. Il existe plusieurs avantages \`a sp\'ecifier explicitement
349 le type de p\'eriph\'erique. D'abord, sur certains syst\`emes, les p\'eriph\'eriques
350 bloc et caract\`ere ont le m\^eme type, ce qui signifie que sur ces syst\`emes,
351 Bacula est probablement incapable de deviner qu'un p\'eriph\'erique est un DVD.
352 Ensuite, si vous sp\'ecifiez explicitement le type de p\'eriph\'erique, le point de
353 montage n'a pas besoin d'\^etre d\'efini jusqu'\`a ce que le p\'eriph\'erique soit ouvert.
354 C'est le cas de la plupart des p\'eriph\'eriques amovibles tels que les USB mont\'es
355 par le daemon HAL. Au contraire, si le type de p\'eriph\'erique n'est pas
356 sp\'ecifi\'e explicitement, le point de montage doit exister d\`es le
357 d\'emarrage du Storage Daemon.
359 Cette directive est apparue avec la version 1.38.6 de Bacula.
361 \item [Media Type = {\it name-string}]
362 \index[sd]{Media Type}
363 \index[sd]{Directive!Media Type}
364 La cha\^ine {\bf name-string} sp\'ecifi\'ee baptise le type de m\'edia support\'e par
365 ce p\'eriph\'erique, par exemple, "DLT7000". Les noms de type de m\'edia sont
366 arbitraires, vous pouvez utiliser le nom de votre choix, mais ils doivent
367 \^etre connus du catalogue pour qu'il puisse garder trace de quel daemon
368 peut lire quel type de m\'edia. En g\'en\'eral, chaque type de stockage devrait
369 avoir un type de m\'edia unique associ\'e. Le m\^eme nom {\bf name-string} doit
370 appara\^itre dans la d\'efinition de ressource Storage appropri\'ee du fichier
371 de configuration du Director.
373 M\^eme si les noms que vous assignez sont arbitraires, vous devriez les choisir
374 avec circonspection, car le Media Type est utilis\'e pour d\'eterminer le
375 p\'eriph\'erique de stockage \`a s\'electionner lors d'une restauration. Ainsi, vous
376 devriez certainement utiliser le m\^eme Media Type pour tous les lecteurs
377 dont les cartouches sont interchangeables. Ce n'est g\'en\'eralement pas un
378 probl\`eme si vous n'avez qu'un Storage Daemon, mais c'en est un avec plusieurs
379 Storage Daemon, surtout s'ils utilisent des m\'edia incompatibles.
381 Si, par exemple, vous sp\'ecifiez le Media Type "DDS-4", Bacula pourra lors de
382 restaurations s\'electionner tout Storage Daemon qui supporte les "DDS-4".
383 Si vous avez une librairie, vous voudrez peut-\^etre baptiser son Media Type
384 d'un nom qui lui soit unique, \`a moins que vous souhaitiez pouvoir utiliser
385 ses volumes dans d'autres lecteurs. Vous devriez aussi vous assurer d'avoir
386 des noms de Media Type uniques si les media ne sont pas compatibles d'un
387 lecteur \`a l'autre. Cette sp\'ecification est requise pour tous les
390 Enfin, si vous utilisez le stockage sur disque, sachez que chaque ressource
391 Device a g\'en\'eralement un point de montage (ou r\'epertoire) diff\'erent. Afin
392 que Bacula puisse s\'electionner correctement la ressource Device \`a utiliser,
393 chacun doit avoir un Media Type distinct.
396 \item [Autochanger = {\it Yes|No}]
397 \index[sd]{Autochanger}
398 \index[sd]{Directive!Autochanger}
399 Si cette directive est \`a {\bf yes}, alors Bacula consid\`ere que le p\'eriph\'erique
400 concern\'e est dans une librairie, et il vous faut sp\'ecifier une ressource
401 {\bf Autochanger} qui pointe vers les ressources {\bf Device}. Vous devez
402 aussi renseigner la directive {\bf Changer Device}. Si la directive est \`a {\bf No}
403 (valeur par d\'efaut), les volumes doivent \^etre chang\'es manuellement. Vous devriez
404 aussi avoir une directive identique \`a la \ilink{Storage resource}{Autochanger1} dans
405 le fichier de configuration du Director, de sorte que Bacula vous demande le slot
406 lors de l'\'etiquetage des cartouches.
408 \item [Changer Device = {\it cha\^ine-nom}]
409 \index[sd]{Changer Device}
410 \index[sd]{Directive!Changer Device}
411 La {\bf cha\^ine-nom} sp\'ecifi\'ee doit \^etre le nom de p\'eriph\'erique {\bf SCSI g\'en\'erique}
412 associ\'e \`a l'{\bf Archive Device} sp\'ecifi\'ee dans la ressource Device. Ce nom de
413 p\'eriph\'erique SCSI g\'en\'erique devrait \^etre sp\'ecifi\'e si vous avez une librairie
414 ou si vous n'avez qu'un lecteur standard mais souhaitez utiliser la {\bf commande
415 Alert} (voir ci-dessous). Par exemple, sur les systèmes Linux, vous sp\'ecifierez
416 certainement {\bf /dev/nst0} pour le nom d'Archive Device, et {\bf /den/sg0} pour
417 le nom de Changer Device. Selon votre configuration, le nombre de librairies dont
418 vous disposez et leurs types, le nom que vous serez amen\'e \`a sp\'ecifier ici peut varier.
419 Cette directive est optionnelle. Consultez le chapitre
420 \ilink{Utiliser une librairie}{_ChapterStart18} de ce manuel pour plus de d\'etails
421 concernant les directives relatives aux librairies.
423 \item [Changer Command = {\it cha\^ine nom}]
424 \index[sd]{Changer Command}
425 \index[sd]{Directive!Changer Command}
426 La {\bf cha\^ine-nom} d\'esigne un programme externe qui aura pour t\^ache le
427 changement des volumes \`a la demande de Bacula. En principe, cette directive
428 n'est sp\'ecifi\'ee qu'au niveau de la ressource {\bf AutoChanger}, qui est alors
429 utilis\'ee pour tous les p\'eriph\'eriques. Cependant, vous pouvez parfaitement
430 utiliser une commande {\bf Changer Command} diff\'erente pour chaque ressource Device.
431 La plupart du temps, vous sp\'ecifierez le script {\bf mtx-changer} fourni avec
432 Bacula de la fa\
\ 3on suivante :
436 Changer Command = "/path/mtx-changer %c %o %S %a %d"
440 Et vous installerez le programme {\bf mtx} sur votre syst\`eme (paquetage tiers).
441 Un exemple de cette commande figure dans le fichier de configuration par d\'efaut
442 du Storage Daemon, bacula-sd.conf. Pour plus de d\'etails concernant les
443 substitutions de caract\`eres qui peuvent \^etre utilis\'ees pour configurer
444 votre librairie, veuillez consulter le chapitre sur
445 l'\ilink{utilisation des Librairies}{_ChapterStart18}. Les utilisateurs
446 de FreeBSD voudront probablement jeter un oeil aux quelques scripts
447 fournis dans le r\'epertoire {\bf examples/autochangers}.
449 \item [Alert Command = {\it name-string}]
450 \index[sd]{Alert Command}
451 La {\bf cha\^ine-nom} d\'esigne un programme externe \`a appeler au terme
452 de chaque job apr\`es que le p\'eriph\'erique ait \'et\'e lib\'er\'e. Le but de cette
453 commande est de r\'ecup\'erer d'\'eventuels messages d'alerte du lecteur pour
454 vous pr\'evenir si quelque chose ne fonctionne pas correctement (ces messages
455 existent au moins sur la plupart des lecteurs modernes). Les m\^emes
456 substitutions que celles d\'ecrites au niveau de la {\bf Changer command}
457 peuvent \^etre utilis\'ees ici. Pour plus d'informations, veuillez consulter
458 le chapitre sur les \ilink{Librairies}{_ChapterStart18} de ce manuel.
460 Notez que vous pouvez trouver un usage \`a cette commande sans n\'ecessairement
461 poss\'eder une librairie. L'exemple ci-dessous utilise le programme {\bf tapeinfo}
462 qui vient avec le paquet {\bf mtx} mais peut \^etre utilis\'e avec n'importe quel
463 lecteur. Vous devrez tout de m\^eme sp\'ecifier une directive {\bf Changer Device}
464 dans votre ressource Device (voir ci-dessus) afin que le p\'eriph\'erique SCSI
465 g\'en\'erique puisse \^etre \'edit\'e dans la commande (avec \%c).
467 Voici un exemple qui affiche les alertes en provenance du lecteur dans les
472 Alert Command = "sh -c 'tapeinfo -f %c | grep TapeAlert'"
477 Et un exemple de ce qui peut en sortir lorqu'il y a un probl\`eme :
481 bacula-sd Alert: TapeAlert[32]: Interface: Problem with SCSI interface
482 between tape drive and initiator.
487 \item [Drive Index = {\it number}]
488 \index[sd]{Drive Index}
489 \index[sd]{Directive!Drive Index}
490 Le num\'ero de lecteur, ou {\bf Drive Index}, que vous sp\'ecifiez ici est
491 pass\'e au script {\bf mtx-changer} et donc au programe {\bf mtx}.
492 Par d\'efaut, le Drive Index vaut z\'ero, aussi, si vous n'avez qu'un
493 lecteur dans votre librairie, tout fonctionnera correctement.
494 Si en revanche vous avez plusieurs lecteurs, vous devez sp\'ecifier
495 plusieurs ressources Device (une par lecteur).
496 Il n'est pas n\'ecessaire de sp\'ecifier la valeur z\'ero pour la directive
497 Drive Index dans la premi\`ere de ces ressources (valeur par d\'efaut). Par
498 contre, la seconde devrait contenir une directive Drive Index \'egale \`a 1,
499 la troisi\`eme une directive Drive Index \'egale \`a 2, et ainsi de suite.
500 A partir de la version 1.38.0, en utilisant la ressource {\bf Autochanger},
501 Bacula s'assure qu'un seul lecteur \`a la fois utilise le script d'autochargement
502 (script mtx-changer), aussi vous n'avez plus besoin de scripts de verrouillage
503 comme ce fut le cas dans le pass\'e -- Le script mtx-change fourni avec Bacula
504 fonctionne avec un nombre quelconque de lecteurs.
506 \item [Autoselect = {\it Yes|No}]
507 \index[sd]{Autoselect}
508 \index[sd]{Directive!Autoselect}
509 Si cette directive vaut {\bf yes} (valeur par d\'efaut), et si le p\'eriph\'erique
510 appartient \`a une librairie, alors lorsque la librairie est r\'ef\'erenc\'ee par
511 le Director, ce p\'eriph\'erique peut \^etre automatiquement s\'electionn\'e.
512 Si cette directive vaut {\bf no}, alors le p\'eriph\'erique peut seulement
513 \^etre d\'esign\'e par son nom de p\'eriph\'erique (Device Name) dans le
514 Director. Ceci permet de r\'eserver un lecteur pour une tâche particuli\`ere,
515 comme une sauvegarde hautement prioritaire, ou des op\'erations de restaurations.
517 \item [Maximum Changer Wait = {\it time}]
518 \index[sd]{Maximum Changer Wait}
519 \index[sd]{Directive!Maximum Changer Wait}
520 Cette directive sp\'ecifie le d\'elai maximum, en secondes, pendant lequel Bacula
521 peut attendre d'une librairie qu'elle change de volume. Au del\`a de ce d\'elai,
522 Bacula invalide le num\'ero de slot r\'ef\'erenc\'e dans le catalogue et essaye \`a
523 nouveau. Si aucun autre volume n'est disponible dans la librairie, Bacula
524 r\'eclame l'intervention d'un op\'erateur. La valeur par d\'efaut est 5 minutes.
526 \item [Maximum Rewind Wait = {\it time}]
527 \index[sd]{Maximum Rewind Wait}
528 \index[sd]{Directive!Maximum Rewind Wait}
529 Cette directive sp\'ecifie le d\'elai maximum, en secondes, pendant lequel Bacula
530 peut attendre d'un lecteur qu'il rembobine une cartouche. Au del\`a de ce d\'elai,
531 le job est effac\'e. La valeur par d\'efaut est 5 minutes.
533 \item [Maximum Open Wait = {\it time}]
534 \index[sd]{Maximum Open Wait}
535 \index[sd]{Directive!Maximum Open Wait}
536 Cette directive sp\'ecifie le d\'elai maximum, en secondes, pendant lequel Bacula
537 peut attendre après une commande Open.Au del\`a de ce d\'elai,
538 le job est effac\'e. La valeur par d\'efaut est 5 minutes.
540 \item [Always Open = {\it Yes|No}]
541 \index[sd]{Always Open}
542 \index[sd]{Directive!Always Open}
543 Si la valeur sp\'ecifi\'ee ici est {\bf Yes} (valeur par d\'efaut), Bacula garde le
544 p\'eriph\'erique ouvert, \`a moins qu'il ne soit explicitement d\'emont\'e ({\bf unmounted})
545 depuis la console Bacula. Ceci permet \`a Bacula de s'assurer que le lecteur est
546 toujours disponible. Si vous r\'eglez {\bf AlwaysOpen} \`a {\bf no} {\bf Bacula},
547 Bacula ouvre le lecteur seulement lorsque n\'ecessaire, et le libère \`a la fin du
548 job, si aucun autre job ne l'utilise. Lors de l'utilisation suivante, Bacula
549 doit rembobiner la cartouche et se repositionner au bon endroit. Pour \'eviter
550 ces rembnobinages inutiles et les interventions de l'op\'erateur, il est
551 hautement recommand\'e de garder la valeur {\bf Always Open = yes}. Ceci assure
552 aussi que le lecteur est disponible lorsque Bacula en a besoin.
554 Si vous avez sp\'ecifi\'e {\bf Always Open = yes} (comme recommand\'e) et si vous
555 voulez utiliser le lecteur pour autre chose, lib\'erez-le simplement avec la
556 commande {\bf unmount} dans la console Bacula. N'oubliez-pas ensuite de
557 remonter le lecteur avec la commande {\bf mount} afin que Bacula soit prèt
558 \`a prendre en charge le prochain job planifi\'e.
560 Pour le stockage sur disque (File Storage), cette directive est ignor\'ee. Dans le
561 cas d'un stockage FIFO, vous devez mettre cette directive \`a {\bf No}.
563 Notez bien que si vous mettez cette directive \`a {\bf No}, Bacula libère le
564 lecteur entre chaque job, obligeant le lecteur \`a rembobiner la cartouche, et
565 \`a replacer la bande \`a la fin de la zone de donn\'ees, ce qui peut prendre
568 \item [Volume Poll Interval = {\it p\'eriode}]
569 \index[sd]{Volume Poll Interval}
570 \index[sd]{Directive!Volume Poll Interval}
571 Si la p\'eriode sp\'ecifi\'ee pour cette directive est non nulle alors, après avoir
572 demand\'e \`a l'op\'erateur de monter un nouveau volume, Bacula retentera
573 p\'eriodiquement de lire le lecteur selon la p\'eriode sp\'ecifi\'ee au cas où un
574 nouveau volume aurait \'et\'e mont\'e. Si la valeur sp\'ecifi\'ee est z\'ero, ces
575 tentatives de lecture n'ont pas lieu. Cette directive est utile lorsque
576 vous souhaitez \'eviter l'intervention d'un op\'erateur \`a la console. Au lieu de
577 quoi l'op\'erateur se contente de sortir la cartouche pr\'ec\'edente et de monter la
578 nouvelle qui sera reconnue \`a la prochaine tentative. Soyez conscient que si vous
579 sp\'ecifiez une p\'eriode trop courte, vous risquez de solliciter excessivement
580 votre lecteur si la cartouche pr\'ec\'edente demeure dans le lecteur, puisque Bacula
581 la lira \`a chaque tentative. Vous pouvez \'eviter ceci en \'ejectant la cartouche avec
582 les directives {\bf Offline On Unmount} et {\bf Close on Poll}.
583 Cependant, si vous utilisez un noyau Linux 2.6 ou un autre système d'exploitation tel
584 FreeBSD ou Solaris, les commandes Offline ou Unmount laisseront le lecteur sans cartouche,
585 et Bacula, incapable de d'ouvrir correctement le lecteur, pourrait \'echouer ses jobs.
586 Pour plus d'informations sur ce problème, veuillez consulter la section
587 \ilink{description of Offline On Unmount}{NoTapeInDrive} du chapitre relatif
588 aux tests des lecteurs de bandes.
590 \item [Close on Poll= {\it Yes|No}]
591 \index[sd]{Close on Poll}
592 \index[sd]{Directive!Close on Poll}
593 Si cette directive est \`a {\bf Yes}, Bacula ferme le p\'eriph\'erique et le r\'eouvre
594 \`a chaque tentative (ce qui est \'equivalent \`a unmount, sauf qu'il n'est pas
595 n\'ecessaire d'utiliser mount ensuite). En principe, cette directive n'est
596 pas très utile \`a moins que vous ayez activ\'e la directive {\bf Offline on Unmount},
597 auquel cas le lecteur sera consid\'er\'e hors-ligne (NDT : offline) pr\'evenant ainsi
598 de nombreux mouvements inutiles de la bande lors de chaque tentative de lecture.
599 Une fois que l'op\'erateur aura charg\'e une nouvelle cartouche, Bacula
600 sera en mesure de s'en rendre compte \`a la prochaine tentative et poursuivra
601 automatiquement la sauvegarde. Voyez ci-dessus pour plus de d\'etails.
603 \item [Maximum Open Wait = {\it time}]
604 \index[sd]{Maximum Open Wait}
605 \index[sd]{Directive!Maximum Open Wait}
606 Cette directive sp\'ecifie le d\'elai maximum, en secondes que Bacula
607 accorde \`a un p\'eriph\'erique occup\'e. La valeur par d\'efaut est 5 minutes.
608 Si le p\'eriph\'erique ne peut \^etre obtenu, le job en cours est termin\'e en erreur.
609 Bacula tentera \`a nouveau d'ouvrir le lecteur lorsqu'un nouveau job le
612 \item [Removable media = {\it Yes|No}]
613 \index[sd]{Removable media}
614 \index[sd]{Directive!Removable media}
615 R\'eglez cette directive \`a {\bf Yes} si le p\'eriph\'erique concern\'e supporte des
616 m\'edia amovibles (par exemple des cartouches ou des CDROMs). Dans le cas de
617 m\'edia inamovibles (par exemple, une zone de sauvegardes interm\'ediaires sur un
618 disque dur), mettez {\bf Removable media = No}
620 \item [Random access = {\it Yes|No}]
621 \index[sd]{Random access}
622 \index[sd]{Directive!Random access}
623 If {\bf Yes}, the archive device is assumed to be a random access medium
624 which supports the {\bf lseek} (or {\bf lseek64} if Largefile is enabled
625 during configuration) facility.
627 \item [Minimum block size = {\it size-in-bytes}]
628 \index[sd]{Minimum block size}
629 \index[sd]{Directive!Minimum block size}
630 On most modern tape drives, you will not need or wamt to specify this
631 directive, and if you do so, it will be to make Bacula use fixed block
632 sizes. This statement applies only to non-random access devices (e.g.
633 tape drives). Blocks written by the storage daemon to a non-random
634 archive device will never be smaller than the given {\bf size-in-bytes}.
635 The Storage daemon will attempt to efficiently fill blocks with data
636 received from active sessions but will, if necessary, add padding to a
637 block to achieve the required minimum size.
639 To force the block size to be fixed, as is the case for some non-random
640 access devices (tape drives), set the {\bf Minimum block size} and the
641 {\bf Maximum block size} to the same value (zero included). The default
642 is that both the minimum and maximum block size are zero and the default
643 block size is 64,512 bytes. If you wish the block size to be fixed and
644 different from the default, specify the same value for both {\bf Minimum
645 block size} and {\bf Maximum block size}.
647 For example, suppose you want a fixed block size of 100K bytes, then you
653 Minimum block size = 100K
654 Maximum block size = 100K
659 Please note that if you specify a fixed block size as shown above, the tape
660 drive must either be in variable block size mode, or if it is in fixed block
661 size mode, the block size (generally defined by {\bf mt}) {\bf must} be
662 identical to the size specified in Bacula -- otherwise when you attempt to
663 re-read your Volumes, you will get an error.
665 If you want the block size to be variable but with a 64K minimum and 200K
666 maximum (and default as well), you would specify:
671 Minimum block size = 64K
672 Maximum blocksize = 200K
677 \item [Maximum block size = {\it size-in-bytes}]
678 \index[sd]{Maximum block size}
679 \index[sd]{Directive!Maximum block size}
680 On most modern tape drives, you will not need to specify this directive.
681 If you do so, it will most likely be to use fixed block sizes (see
682 Minimum block size above). The Storage daemon will aways attempt to
683 write blocks of the specified {\bf size-in-bytes} to the archive device.
684 As a consequence, this statement specifies both the default block size
685 and the maximum block size. The size written never exceed the given
686 {\bf size-in-bytes}. If adding data to a block would cause it to exceed
687 the given maximum size, the block will be written to the archive device,
688 and the new data will begin a new block.
690 If no value is specified or zero is specified, the Storage daemon will
691 use a default block size of 64,512 bytes (126 * 512).
693 \item [Hardware End of Medium = {\it Yes|No}]
694 \index[sd]{Hardware End of Medium}
695 \index[sd]{Directive!Hardware End of Medium}
696 If {\bf No}, the archive device is not required to support end of medium
697 ioctl request, and the storage daemon will use the forward space file
698 function to find the end of the recorded data. If {\bf Yes}, the archive
699 device must support the {\tt ioctl} {\tt MTEOM} call, which will position the
700 tape to the end of the recorded data. In addition, your SCSI driver must keep
701 track of the file number on the tape and report it back correctly by the
702 {\bf MTIOCGET} ioctl. Note, some SCSI drivers will correctly forward space to
703 the end of the recorded data, but they do not keep track of the file number.
704 On Linux machines, the SCSI driver has a {\bf fast-eod} option, which if set
705 will cause the driver to lose track of the file number. You should ensure
706 that this option is always turned off using the {\bf mt} program.
708 Default setting for Hardware End of Medium is {\bf Yes}. This function is
709 used before appending to a tape to ensure that no previously written data is
710 lost. We recommend if you have a non-standard or unusual tape drive that you
711 use the {\bf btape} program to test your drive to see whether or not it
712 supports this function. All modern (after 1998) tape drives support this
715 \item [Fast Forward Space File = {\it Yes|No}]
716 \index[sd]{Fast Forward Space File}
717 \index[sd]{Directive!Fast Forward Space File}
718 If {\bf No}, the archive device is not required to support keeping track of
719 the file number ({\bf MTIOCGET} ioctl) during forward space file. If {\bf
720 Yes}, the archive device must support the {\tt ioctl} {\tt MTFSF} call, which
721 virtually all drivers support, but in addition, your SCSI driver must keep
722 track of the file number on the tape and report it back correctly by the
723 {\bf MTIOCGET} ioctl. Note, some SCSI drivers will correctly forward space,
724 but they do not keep track of the file number or more seriously, they do not
725 report end of meduim.
727 Default setting for Fast Forward Space File is {\bf Yes}.
729 \item [Use MTIOCGET = {\it Yes|No}]
730 \index[sd]{Fast Forward Space File}
731 \index[sd]{Directive!Fast Forward Space File}
732 If {\bf No}, the operating system is not required to support keeping track of
733 the file number and reporting it in the ({\bf MTIOCGET} ioctl). The default
734 is {\bf Yes}. If you must set this to No, Bacula will do the proper file
735 position determination, but it is very unfortunate because it means that
736 tape movement is very inefficient.
737 Fortunately, this operation system deficiency seems to be the case only
738 on a few *BSD systems. Operating systems known to work correctly are
739 Solaris, Linux and FreeBSD.
741 \item [BSF at EOM = {\it Yes|No}]
742 \index[sd]{BSF at EOM}
743 \index[sd]{Directive!BSF at EOM}
744 If {\bf No}, the default, no special action is taken by Bacula with the End
745 of Medium (end of tape) is reached because the tape will be positioned after
746 the last EOF tape mark, and Bacula can append to the tape as desired.
747 However, on some systems, such as FreeBSD, when Bacula reads the End of
748 Medium (end of tape), the tape will be positioned after the second EOF tape
749 mark (two successive EOF marks indicated End of Medium). If Bacula appends
750 from that point, all the appended data will be lost. The solution for such
751 systems is to specify {\bf BSF at EOM} which causes Bacula to backspace over
752 the second EOF mark. Determination of whether or not you need this directive
753 is done using the {\bf test} command in the {\bf btape} program.
755 \item [TWO EOF = {\it Yes|No}]
757 \index[sd]{Directive!TWO EOF}
758 If {\bf Yes}, Bacula will write two end of file marks when terminating a tape
759 -- i.e. after the last job or at the end of the medium. If {\bf No}, the
760 default, Bacula will only write one end of file to terminate the tape.
762 \item [Backward Space Record = {\it Yes|No}]
763 \index[sd]{Backward Space Record}
764 \index[sd]{Directive!Backward Space Record}
765 If {\it Yes}, the archive device supports the {\tt MTBSR ioctl} to backspace
766 records. If {\it No}, this call is not used and the device must be rewound
767 and advanced forward to the desired position. Default is {\bf Yes} for non
768 random-access devices. This function if enabled is used at the end of a
769 Volume after writing the end of file and any ANSI/IBM labels to determine whether
770 or not the last block was written correctly. If you turn this function off,
771 the test will not be done. This causes no harm as the re-read process is
772 precautionary rather than required.
774 \item [Backward Space File = {\it Yes|No}]
775 \index[sd]{Backward Space File}
776 \index[sd]{Directive!Backward Space File}
777 If {\it Yes}, the archive device supports the {\bf MTBSF} and {\bf MTBSF
778 ioctl}s to backspace over an end of file mark and to the start of a file. If
779 {\it No}, these calls are not used and the device must be rewound and
780 advanced forward to the desired position. Default is {\bf Yes} for non
781 random-access devices.
783 \item [Forward Space Record = {\it Yes|No}]
784 \index[sd]{Forward Space Record}
785 \index[sd]{Directive!Forward Space Record}
786 If {\it Yes}, the archive device must support the {\bf MTFSR ioctl} to
787 forward space over records. If {\bf No}, data must be read in order to
788 advance the position on the device. Default is {\bf Yes} for non
789 random-access devices.
791 \item [Forward Space File = {\it Yes|No}]
792 \index[sd]{Forward Space File}
793 \index[sd]{Directive!Forward Space File}
794 If {\bf Yes}, the archive device must support the {\tt MTFSF ioctl} to
795 forward space by file marks. If {\it No}, data must be read to advance the
796 position on the device. Default is {\bf Yes} for non random-access devices.
798 \item [Offline On Unmount = {\it Yes|No}]
799 \index[sd]{Offline On Unmount}
800 \index[sd]{Directive!Offline On Unmount}
801 The default for this directive is {\bf No}. If {\bf Yes} the archive device
802 must support the {\tt MTOFFL ioctl} to rewind and take the volume offline. In
803 this case, Bacula will issue the offline (eject) request before closing the
804 device during the {\bf unmount} command. If {\bf No} Bacula will not attempt
805 to offline the device before unmounting it. After an offline is issued, the
806 cassette will be ejected thus {\bf requiring operator intervention} to
807 continue, and on some systems require an explicit load command to be issued
808 ({\bf mt -f /dev/xxx load}) before the system will recognize the tape. If you
809 are using an autochanger, some devices require an offline to be issued prior
810 to changing the volume. However, most devices do not and may get very
813 If you are using a Linux 2.6 kernel or other OSes
814 such as FreeBSD or Solaris, the Offline On Unmount will leave the drive
815 with no tape, and Bacula will not be able to properly open the drive and
816 may fail the job. For more information on this problem, please see the
817 \ilink{description of Offline On Unmount}{NoTapeInDrive} in the Tape
821 \item [Maximum Volume Size = {\it size}]
822 \index[sd]{Maximum Volume Size}
823 \index[sd]{Directive!Maximum Volume Size}
824 No more than {\bf size} bytes will be written onto a given volume on the
825 archive device. This directive is used mainly in testing Bacula to
826 simulate a small Volume. It can also be useful if you wish to limit the
827 size of a File Volume to say less than 2GB of data. In some rare cases
828 of really antiquated tape drives that do not properly indicate when the
829 end of a tape is reached during writing (though I have read about such
830 drives, I have never personally encountered one). Please note, this
831 directive is deprecated (being phased out) in favor of the {\bf Maximum
832 Volume Bytes} defined in the Director's configuration file.
834 \item [Maximum File Size = {\it size}]
835 \index[sd]{Maximum File Size}
836 \index[sd]{Directive!Maximum File Size}
837 No more than {\bf size} bytes will be written into a given logical file
838 on the volume. Once this size is reached, an end of file mark is
839 written on the volume and subsequent data are written into the next
840 file. Breaking long sequences of data blocks with file marks permits
841 quicker positioning to the start of a given stream of data and can
842 improve recovery from read errors on the volume. The default is one
845 \item [Block Positioning = {\it yes|no}]
846 \index[sd]{Block Positioning}
847 \index[sd]{Directive!Block Positioning}
848 This directive is not normally used (and has not yet been tested). It will
849 tell Bacula not to use block positioning when it is reading tapes. This can
850 cause Bacula to be {\bf extremely} slow when restoring files. You might use
851 this directive if you wrote your tapes with Bacula in variable block mode
852 (the default), but your drive was in fixed block mode. If it then works as I
853 hope, Bacula will be able to re-read your tapes.
855 \item [Maximum Network Buffer Size = {\it bytes}]
856 \index[sd]{Maximum Network Buffer Size}
857 \index[sd]{Directive!Maximum Network Buffer Size}
858 where {\it bytes} specifies the initial network buffer size to use with the
859 File daemon. This size will be adjusted down if it is too large until
860 it is accepted by the OS. Please use care in setting this value since if
861 it is too large, it will be trimmed by 512 bytes until the OS is happy,
862 which may require a large number of system calls. The default value is
865 The default size was chosen to be relatively large but not too big in
866 the case that you are transmitting data over Internet. It is clear that
867 on a high speed local network, you can increase this number and improve
868 performance. For example, some users have found that if you use a value
869 of 65,536 bytes they get 5-10 times the throughput. Larger values for
870 most users don't seem to improve performance. If you are interested
871 in improving your backup speeds, this is definitely a place to
872 experiment. You will probably also want to make the corresponding change
873 in each of your File daemons conf files.
876 \item [Maximum Spool Size = {\it bytes}]
877 \index[sd]{Maximum Spool Size}
878 \index[sd]{Directive!Maximum Spool Size}
879 where the bytes specify the maximum spool size for all jobs that are running.
880 The default is no limit.
882 \item [Maximum Job Spool Size = {\it bytes}]
883 \index[sd]{Maximum Job Spool Size}
884 \index[sd]{Directive!Maximum Job Spool Size}
885 where the bytes specify the maximum spool size for any one job that is
886 running. The default is no limit.
887 This directive is implemented only in version 1.37 and later.
889 \item [Spool Directory = {\it directory}]
890 \index[sd]{Spool Directory}
891 \index[sd]{Directive!Spool Directory}
892 specifies the name of the directory to be used to store the spool files for
893 this device. This directory is also used to store temporary part files when
894 writing to a device that requires mount (DVD). The default is to use the
897 \item [Maximum Part Size = {\it bytes}]
898 \index[sd]{Maximum Part Size}
899 \index[sd]{Directive!Maximum Part Size}
900 This is the maximum size of a volume part file. The default is no limit.
901 This directive is implemented only in version 1.37 and later.
903 If the device requires mount, it is transfered to the device when this size
904 is reached. In this case, you must take care to have enough disk space left
905 in the spool directory.
907 Otherwise, it is left on the hard disk.
909 It is ignored for tape and FIFO devices.
914 \subsection*{Devices that require a mount (DVD)}
915 \index[general]{Devices that require a mount (DVD)}
916 \index[general]{DVD!Devices that require a mount}
917 \addcontentsline{toc}{subsection}{Devices that require a mount (DVD)}
919 All the directives in this section are implemented only in
920 Bacula version 1.37 and later and hence are available in version 1.38.6.
922 As of version 1.39.5, the directives
923 "Requires Mount", "Mount Point", "Mount Command", and "Unmount Command"
924 apply to removable filesystems such as USB in addition to DVD.
928 \item [Requires Mount = {\it Yes|No}]
929 \index[sd]{Requires Mount}
930 \index[sd]{Directive!Requires Mount}
931 You must set this directive to {\bf yes} for DVD-writers, and to {\bf no} for
932 all other devices (tapes/files). This directive indicates if the device
933 requires to be mounted to be read, and if it must be written in a special way.
934 If it set, {\bf Mount Point}, {\bf Mount Command}, {\bf Unmount Command} and
935 {\bf Write Part Command} directives must also be defined.
937 \item [Mount Point = {\it directory}]
938 \index[sd]{Mount Point}
939 \index[sd]{Directive!Mount Point}
940 Directory where the device can be mounted.
942 \item [Mount Command = {\it name-string}]
943 \index[sd]{Mount Command}
944 \index[sd]{Directive!Mount Command}
945 Command that must be executed to mount the device. Before the command is
946 executed, \%a is replaced with the Archive Device, and \%m with the Mount
949 Most frequently, you will define it as follows:
953 Mount Command = "/bin/mount -t iso9660 -o ro %a %m"
957 \item [Unmount Command = {\it name-string}]
958 \index[sd]{Unmount Command}
959 \index[sd]{Directive!Unmount Command}
960 Command that must be executed to unmount the device. Before the command is
961 executed, \%a is replaced with the Archive Device, and \%m with the Mount
964 Most frequently, you will define it as follows:
968 Unmount Command = "/bin/umount %m"
972 \item [Write Part Command = {\it name-string}]
973 \index[sd]{Write Part Command}
974 \index[sd]{Directive!Write Part Command}
975 Command that must be executed to write a part to the device. Before the
976 command is executed, \%a is replaced with the Archive Device, \%m with the
977 Mount Point, \%e is replaced with 1 if we are writing the first part,
978 and with 0 otherwise, and \%v with the current part filename.
980 For a DVD, you will most frequently specify the Bacula supplied {\bf
981 dvd-handler} script as follows:
985 Write Part Command = "/path/dvd-handler %a write %e %v"
989 Where {\bf /path} is the path to your scripts install directory, and
990 dvd-handler is the Bacula supplied script file.
991 This command will already be present, but commented out,
992 in the default bacula-sd.conf file. To use it, simply remove
993 the comment (\#) symbol.
996 \item [Free Space Command = {\it name-string}]
997 \index[sd]{Free Space Command}
998 \index[sd]{Directive!Free Space Command}
999 Command that must be executed to check how much free space is left on the
1000 device. Before the command is executed,\%a is replaced with the Archive
1001 Device, \%m with the Mount Point, \%e is replaced with 1 if we are writing
1002 the first part, and with 0 otherwise, and \%v with the current part filename.
1004 For a DVD, you will most frequently specify the Bacula supplied {\bf
1005 dvd-handler} script as follows:
1009 Free Space Command = "/path/dvd-handler %a free"
1013 Where {\bf /path} is the path to your scripts install directory, and
1014 dvd-handler is the Bacula supplied script file.
1015 If you want to specify your own command, please look at the code of
1016 dvd-handler to see what output Bacula expects from this command.
1017 This command will already be present, but commented out,
1018 in the default bacula-sd.conf file. To use it, simply remove
1019 the comment (\#) symbol.
1021 If you do not set it, Bacula will expect there is always free space on the
1026 %% This pulls in the Autochanger resource from another file.
1027 \label{AutochangerRes}
1028 \label{AutochangerResource1}
1029 \input{autochangerres}
1034 \subsection*{Capabilities}
1035 \index[general]{Capabilities}
1036 \addcontentsline{toc}{subsection}{Capabilities}
1040 \item [Label media = {\it Yes|No}]
1041 \index[sd]{Label media}
1042 \index[sd]{Directive!Label media}
1043 If {\bf Yes}, permits this device to automatically label blank media
1044 without an explicit operator command. It does so by using an internal
1045 algorithm as defined on the \ilink{Label Format}{Label} record in each
1046 Pool resource. If this is {\bf No} as by default, Bacula will label
1047 tapes only by specific operator command ({\bf label} in the Console) or
1048 when the tape has been recycled. The automatic labeling feature is most
1049 useful when writing to disk rather than tape volumes.
1051 \item [Automatic mount = {\it Yes|No}]
1052 \index[sd]{Automatic mount}
1053 \index[sd]{Directive!Automatic mount}
1054 If {\bf Yes} (the default), permits the daemon to examine the device to
1055 determine if it contains a Bacula labeled volume. This is done
1056 initially when the daemon is started, and then at the beginning of each
1057 job. If the This directive is particularly important if you have set
1058 {\bf Always Open = no} because it permits Bacula to attempt to read the
1059 device before asking the system operator to mount a tape. However,
1060 please note that the tape must be mounted before the job begins.
1064 \subsection*{Messages Resource}
1065 \label{MessagesResource1}
1066 \index[general]{Resource!Messages}
1067 \index[general]{Messages Resource}
1068 \addcontentsline{toc}{subsection}{Messages Resource}
1070 For a description of the Messages Resource, please see the
1071 \ilink{Messages Resource}{_ChapterStart15} Chapter of this
1074 \subsection*{Sample Storage Daemon Configuration File}
1075 \label{SampleConfiguration}
1076 \index[general]{File!Sample Storage Daemon Configuration}
1077 \index[general]{Sample Storage Daemon Configuration File}
1078 \addcontentsline{toc}{subsection}{Sample Storage Daemon Configuration File}
1080 A example Storage Daemon configuration file might be the following:
1085 # Default Bacula Storage Daemon Configuration file
1087 # For Bacula release 1.37.2 (07 July 2005) -- gentoo 1.4.16
1089 # You may need to change the name of your tape drive
1090 # on the "Archive Device" directive in the Device
1091 # resource. If you change the Name and/or the
1092 # "Media Type" in the Device resource, please ensure
1093 # that bacula-dir.conf has corresponding changes.
1095 Storage { # definition of myself
1098 WorkingDirectory = "$HOME/bacula/bin/working"
1099 Pid Directory = "$HOME/bacula/bin/working"
1100 Maximum Concurrent Jobs = 20
1103 # List Directors who are permitted to contact Storage daemon
1107 Password = "ZF9Ctf5PQoWCPkmR3s4atCB0usUPg+vWWyIo2VS5ti6k"
1110 # Restricted Director, used by tray-monitor to get the
1111 # status of the storage daemon
1115 Password = "9usxgc307dMbe7jbD16v0PXlhD64UVasIDD0DH2WAujcDsc6"
1119 # Devices supported by this Storage daemon
1120 # To connect, the Director's bacula-dir.conf must have the
1121 # same Name and MediaType.
1127 Changer Command = "/home/kern/bacula/bin/mtx-changer %c %o %S %a %d"
1128 Changer Device = /dev/sg0
1134 Media Type = DLT-8000
1135 Archive Device = /dev/nst0
1136 AutomaticMount = yes; # when device opened, read it
1138 RemovableMedia = yes;
1141 Alert Command = "sh -c 'tapeinfo -f %c |grep TapeAlert|cat'"
1147 Media Type = DLT-8000
1148 Archive Device = /dev/nst1
1149 AutomaticMount = yes; # when device opened, read it
1151 RemovableMedia = yes;
1154 Alert Command = "sh -c 'tapeinfo -f %c |grep TapeAlert|cat'"
1159 Media Type = DLT8000
1160 Archive Device = /dev/nst0
1161 AutomaticMount = yes; # when device opened, read it
1163 RemovableMedia = yes;
1167 # Media Type = DDS-2
1168 # Archive Device = /dev/nst0
1169 # AutomaticMount = yes; # when device opened, read it
1171 # RemovableMedia = yes;
1175 # Media Type = Floppy
1176 # Archive Device = /mnt/floppy
1177 # RemovableMedia = yes;
1178 # Random Access = Yes;
1179 # AutomaticMount = yes; # when device opened, read it
1183 # Name = FileStorage
1185 # Archive Device = /tmp
1186 # LabelMedia = yes; # lets Bacula label unlabeled media
1187 # Random Access = Yes;
1188 # AutomaticMount = yes; # when device opened, read it
1189 # RemovableMedia = no;
1193 # Name = "NEC ND-1300A"
1195 # Archive Device = /dev/hda
1196 # LabelMedia = yes; # lets Bacula label unlabeled media
1197 # Random Access = Yes;
1198 # AutomaticMount = yes; # when device opened, read it
1199 # RemovableMedia = yes;
1201 # MaximumPartSize = 800M;
1202 # RequiresMount = yes;
1203 # MountPoint = /mnt/cdrom;
1204 # MountCommand = "/bin/mount -t iso9660 -o ro %a %m";
1205 # UnmountCommand = "/bin/umount %m";
1206 # SpoolDirectory = /tmp/backup;
1207 # WritePartCommand = "/etc/bacula/dvd-handler %a write %e %v"
1208 # FreeSpaceCommand = "/etc/bacula/dvd-handler %a free"
1211 # A very old Exabyte with no end of media detection
1214 # Name = "Exabyte 8mm"
1215 # Media Type = "8mm"
1216 # Archive Device = /dev/nst0
1217 # Hardware end of medium = No;
1218 # AutomaticMount = yes; # when device opened, read it
1220 # RemovableMedia = yes;
1223 # Send all messages to the Director,
1224 # mount messages also are sent to the email address
1228 director = rufus-dir = all
1229 operator = root = mount