4
\section*{Adapter les fichiers de configuration}
5
\label{_ChapterStart16}
6
\index[general]{Adapter les fichiers de configuration }
7
\index[general]{Configuration!Adapter les fichiers de }
8
\addcontentsline{toc}{section}{Adapter les fichiers de configuration}
10
Lors de son d\'emarrage, chacun des programmes qui composent Bacula lit un
11
fichier de configuration sp\'ecifi\'e sur la ligne de commande, ou par
12
d\'efaut {\bf bacula-dir.conf}, {\bf bacula-fd.conf}, {\bf bacula-sd.conf}, ou
13
{\bf console.conf} pour le Director Daemon, le File Daemon, le Storage Daemon,
14
et le programme Console respectivement.
16
Chaque service (Director, Client, Storage, Console) poss\`ede son propre
17
fichier de configuration qui contient un groupe de directives. Dans la suite,
18
nous d\'esignerons ces groupes de directives par le mot {\bf Ressource}. Les
19
ressources son tr\`es similaires d'un service \`a l'autre, mais peuvent
20
contenir des directives diff\'erentes selon les services. Par exemple, dans le
21
fichier de configuration du Director, la ressource {\bf Director} d\'efinit le
22
nom du Director, quelques param\`etres g\'en\'eraux du Director et son mot de
23
passe. Dans le fichier de configuration du File Daemon, la ressource {\bf
24
Director} sp\'ecifie les Directors autoris\'es \`a utiliser le File Daemon.
26
Avant de lancer Bacula pour la premi\`ere fois, vous devez adapter chaque
27
fichier de configuration. Des fichiers de configuration auront \'et\'e
28
cr\'e\'es par le processus d'installation, mais il doivent \^etre modifi\'es
29
pour correspondre \`a votre syst\`eme. Le sch\'ema suivant donne une vue
30
globale des ressources.
32
\includegraphics{./bacula-objects.eps}
34
(Remerciements \`a Aristedes Maniatis pour ce sch\'ema.)
37
\subsection*{Format des directives}
38
\index[general]{Format des directives }
39
\index[general]{Directives!Format des }
40
\addcontentsline{toc}{subsection}{Format des directives}
42
Bien qu'il ne soit pas n\'ecessaire de conna{\^\i}tre le d\'etail de toutes
43
les directives possibles, une connaissance basique des ressources Bacula est
44
indispensable. Chaque directive contenue dans une ressource (entre accollades)
45
est compos\'e d'un mot-clef suivi du signe "='', suivi d'une ou plusieurs
46
valeurs. Le mot clef doit \^etre l'un de ceux connus par Bacula, et peut
47
comporter des caract\`eres majuscules et minuscules ainsi que des espaces.
49
Chaque d\'efinition de ressource DOIT comporter la directive Name, et peut
50
optionnellement comporter la directive Description. La directive Name est
51
utilis\'ee pour identifier de fa{\c c}on unique la ressource. La directive
52
Description sera utilis\'e lors de l'affichage pour offrir une identification
53
plus ais\'ee de la ressource. Par exemple :
59
Description = "Main Bacula Director"
60
WorkingDirectory = "$HOME/bacula/bin/working"
65
D\'efinit la ressource Director avec le nom "MyDir'' et le r\'epertoire de
66
travail \$HOME/bacula/bin/working. En g\'en\'eral, si vous voulez utiliser des
67
espaces dans le nom \`a droite du signe "='', vous devez l'entourer de
68
doubles quotes. Sinon, les quotes ne sont g\'en\'eralement pas requises car
69
une fois d\'efinies, les cha{\^\i}nes quot\'ees et non quot\'ees sont toutes
73
\subsubsection*{Commentaires}
74
\index[general]{Commentaires }
75
\addcontentsline{toc}{subsubsection}{Commentaires}
77
Lors de la lecture d'un fichier de configuration, les lignes blanches sont
78
ignor\'ees, et tout ce qui suit le caract\`ere di\`ese (\#) jusqu'\`a la fin
79
de la ligne est consid\'er\'e comme commentaire. Un point virgule (;) indique
80
la fin logique d'une ligne et tout ce qui suit le point virgule est
81
consid\'er\'e comme le param\`etre suivant. Un param\`etre qui appara{\^\i}t
82
seul sur une ligne ne n\'ecessite pas de point virgule, vous ne verrez donc
83
pas beaucoup de points virgule dans les exemples de ce manuel.
86
\subsubsection*{Casse et espaces}
87
\index[general]{Espaces!Casse et }
88
\index[general]{Casse et espaces }
89
\addcontentsline{toc}{subsubsection}{Casse et espaces}
91
La casse (majuscules/minuscules) et les espaces sont totalement ignor\'ees
92
dans les mots-clef des directives des ressources (la partie \`a gauche du
95
A l'int\'erieur des mots-clef (\`a gauche du signe "=''), les espaces ne sont
96
pas significatives. Ainsi, les mots-clef : {\bf name}, {\bf Name}, et {\bf N a
97
m e} sont tous identiques.
99
Les espaces apr\`es le signe "='' et avant le premier caract\`ere de la
100
valeur son ignor\'ees.
102
En g\'en\'eral, les espaces \`a l'int\'erieur d'une valeur sont significatives
103
(non ignor\'ees), et si la valeur est un nom, vous devez l'encadrer de doubles
104
quotes pour que l'espace soit accept\'ee. Les noms peuvent contenir jusqu'\`a
105
127 caract\`eres. Actuellement, un nom peut contenir n'importe quel
106
caract\`ere ASCII. A l'int\'erieur d'une cha{\^\i}ne quot\'ee, tout
107
caract\`ere pr\'ec\'ed\'e d'un backslash (\textbackslash{}) est pris tel quel
108
(utile pour ins\'erer des backslashes et doubles quotes (")).
110
Veuillez cependant noter que les noms de ressource Bacula ainsi que certains
111
autres noms seront s\'ev\`erement limit\'es dans l'avenir pour ne plus
112
autoriser que les lettres (y compris accentu\'ees ISO), nombres, et une
113
poign\'ee de caract\`eres sp\'eciaux (espaces, underscores, ...). Tous les
114
autres carat\`eres et ponctuations seront prohib\'es.
117
\subsubsection*{Inclure d'autres fichiers de configuration}
118
\index[general]{Configuration!Inclure d'autres fichiers de }
119
\index[general]{Inclure d'autres fichiers de configuration }
120
\addcontentsline{toc}{subsubsection}{Inclure d'autres fichiers de
123
Si vous souhaitez \'eclater votre fichier de configuration en fichiers plus
124
petits, l'inclusion est possible avec la syntaxe @{\bf NomDeFichier} o\`u {\bf
125
nom de fichier} est le chemin absolu vers un le fichier \`a inclure. Toute
126
donn\'ee primitive peut \^etre remplac\'ee par une sp\'ecification
127
@NomDeFichier. Par exemple
129
Director \{ Name=@xxx est valide et substituera le fichier xxx \`a @xxx, mais
130
Director \{ Name@xxx = something n'est pas valide puisque @xxx appara{\^\i}t
131
au milieu d'un (???mot clef/directive/...???)
134
\subsubsection*{Types de donn\'ees primitives reconnus}
135
\index[general]{Types de donn\'ees primitives reconnus }
136
\index[general]{Reconnus!Types de donn\'ees primitives }
137
\addcontentsline{toc}{subsubsection}{Types de donn\'ees primitives reconnus}
139
Lorsqu'il parcourt les enregistrements de ressource, Bacula classe les
140
donn\'ees selon les types enum\'er\'es ci-dessous. En premi\`ere lecture,
141
cette liste peut vous para{\^\i}tre accablante, mais en r\'ealit\'e, tout y
142
est d'une logique \'el\'egante et directe.
147
\index[console]{name }
148
Un mot-clef ou un nom constitu\'e de caract\`eres alphanum\'eriques, incluant
149
le trait d'union, underscore et dollar. Le premier caract\`ere d'un {\bf name}
150
doit \^etre une lettre. La longueur d'un {\bf name} est actuellement limit\'ee
151
\`a 127 caract\`eres. Typiquement, les mots-clef appara{\^\i}ssent \`a gauche
152
d'un signe ''=". Les mots-clef ne peuvent \^etre quot\'es.
155
\index[console]{name-string }
156
Une {\bf name-string} est similaire \`a un {\bf name} except\'e qu'elle peut
157
\^etre quot\'ee et ainsi contenir des caract\`eres suppl\'ementaires. La
158
longueur des {\bf name-strings} est limit\'ee \`a 127 caract\`eres.
159
Typiquement, on les utilise \`a droite d'un signe ''=", (i.e. ce sont les
160
valeurs \`a associer aux mots-clef).
163
\index[console]{string }
164
Une cha{\^\i}ne quot\'ee contenant potentiellement n'importe quel caract\`ere,
165
y compris les espaces, ou une cha{\^\i}ne non quot\'ee. Une {\bf string} peut
166
avoir une longueur quelconque. Typiquement, les {\bf strings} sont les
167
valeurs qui correspondent aux noms de fichiers, r\'epertoires, ou noms de
168
commandes syst\`eme. Un {\it Backslash} (\textbackslash{}) change le prochain
169
caract\`ere en lui m\^eme, de sorte que pour inclure une double quote dans une
170
cha{\^\i}ne, vous devez la pr\'eceder d'un {\it Backslash}. Il en va de
171
m\^eme pour inclure un {\it Backslash}.
174
\index[dir]{directory }
175
Un {\bf directory} (R\'epertoire) est une cha{\^\i}ne, quot\'ee ou non. Un
176
{\bf directory} est transmis \`a votre shell standard pour expansion lorsqu'il
177
est scann\'e. Ainsi, des constructions telles que {\bf \$HOME} sont
178
interpr\'et\'ees correctement.
181
\index[dir]{password }
182
Il s'agit d'un mot de passe Bacula. Il est stock\'e en interne sous un format
186
\index[dir]{integer }
187
Une valeur enti\`ere relative (positive ou n\'egative) sur 32 bits.
189
\item [positive integer]
190
\index[dir]{positive integer }
191
Une valeur enti\`ere positive sur 32 bits.
194
\index[dir]{long integer }
195
Une valeur enti\`ere sur 64 bits. Typiquement, ce sont les valeurs telles que
196
le nombre de bytes, qui peuvent d\'epasser 4 milliards et ainsi n\'ecessitent
197
une valeur sur 64 bits.
200
\index[dir]{yes or no }
201
Soit {\bf yes}, soit {\bf no}.
207
Une taille specifi\'ee en bytes. Typiquement, il s'agit d'une entr\'ee au
208
format scientifique (avec virgule flottante) suivie d'un modificateur
209
optionnel. L'entr\'ee est stock\'ee en tant qu'entier sur 64 bits. Si un
210
modificateur est sp\'ecifi\'e, il doit suivre imm\'ediatement la valeur, sans
211
espace. Les modificateurs suivants sont reconnus:
222
1 048 576 (megabytes)
225
1 000 000 (megabytes)
228
1 073 741 824 (gigabytes)
231
1 000 000 000 (gigabytes)
238
Une heure, ou une dur\'ee sp\'ecifi\'ee en secondes. Une valeur {\bf time} est
239
stock\'ee en interne en tant qu'entier sur 64 bits, mais il est sp\'ecifi\'e
240
en deux parties: un nombre et un modificateur. Le nombre peut \^etre un entier
241
ou un nombre \`a virgule flottante. S'il est sp\'ecifi\'e en virgule
242
flottante, il sera arrondi \`a l'entier le plus proche. Le modificateur est
243
obligatoire et suit le nombre avec ou sans espace intercal\'ee. Les
244
modificateurs suivants sont reconnus:
249
\index[dir]{seconds }
253
\index[dir]{minutes }
254
minutes (60 secondes)
258
heures (3600 secondes)
262
jours (3600*24 secondes)
266
semaines (3600*24*7 secondes)
270
mois (3600*24*30 secondes)
273
\index[dir]{quarters }
274
trimestres (3600*24*91 secondes)
278
ann\'ees (3600*24*365 secondes)
281
Toute abbr\'eviation des ces modificateurs est aussi autoris\'ee (i.e. {\bf
282
seconds} peut \^etre sp\'ecifi\'e par {\bf sec} ou {\bf s}. Une
283
sp\'ecification {\bf m} sera interpr\'et\'ee en tant que mois.
285
La sp\'ecification d'une dur\'ee peut comporter autant de couples
286
nombre/modificateur que vous le souhaitez. Par exemple:
290
1 week 2 days 3 hours 10 mins
291
1 month 2 days 30 sec
296
sont des sp\'ecifications valides (\`a partir de la version 1.35.1).
298
Note! Dans les versions de Bacula ant\'erieures \`a 1.31, le modificateur
299
\'etait optionnel. Il est d\'esormais obligatoire.
304
\subsection*{Types de Ressources}
305
\index[general]{Types de Ressources }
306
\index[general]{Ressources!Types de }
307
\addcontentsline{toc}{subsection}{Types de Ressources}
309
La table suivante \'enum\`ere tous les types de ressource de la version
310
courante de Bacula. Elle montre quelle ressource doit \^etre d\'efinie pour
311
chaque service ({\it daemon}). Les fichiers de configuration par d\'efaut
312
contiennent au moins un exemple de chaque ressource permise, aussi ne soyez
313
pas angoiss\'e \`a l'id\'ee d'avoir \`a cr\'eer toutes ces directives {\it ex
316
\begin{longtable}{|l|l|l|l|l|}
318
\multicolumn{1}{|c| }{\bf Resource } & \multicolumn{1}{c| }{\bf Director } &
319
\multicolumn{1}{c| }{\bf Client } & \multicolumn{1}{c| }{\bf Storage } &
320
\multicolumn{1}{c| }{\bf Console } \\
322
{Autochanger } & {No } & {No } & {Yes } & {No } \\
325
{Catalog } & {Oui } & {Non } & {Non } & {Non } \\
327
{Client } & {Oui } & {Oui } & {Non } & {Non } \\
329
{Console } & {Oui } & {Non } & {Non } & {Oui } \\
331
{Device } & {Non } & {Non } & {Oui } & {Non } \\
333
{Director } & {Oui } & {Oui } & {Oui } & {Oui } \\
335
{FileSet } & {Oui } & {Non } & {Non } & {Non } \\
337
{Job } & {Oui } & {Non } & {Non } & {Non } \\
339
{JobDefs } & {Oui } & {Non } & {Non } & {Non } \\
341
{Message } & {Oui } & {Oui } & {Oui } & {Non } \\
343
{Pool } & {Oui } & {Non } & {Non } & {Non } \\
345
{Schedule } & {Oui } & {Non } & {Non } & {Non } \\
347
{Storage } & {Oui } & {Non } & {Oui } & {Non }
352
\subsection*{Noms, mots de passe et autorisations}
354
\index[general]{Autorisations!Noms mots de passe et }
355
\index[general]{Noms, mots de passe et autorisations }
356
\index[general]{Mots de passe}
357
\addcontentsline{toc}{section}{Noms, mots de passe et autorisations}
359
Pour qu'un {\it daemon} puisse en contacter un autre, il lui faut
360
s'authentifier avec un mot de passe. Dans la plupart des cas, le mot de passe
361
est associ\'e \`a un nom particulier, de sorte que nom et mot de passe doivent
364
Les fichiers de configuration par d\'efaut sont automatiquement d\'efinis avec
365
des autorisations correctes et des mots de passe al\'eatoires. Si vous
366
modifiez ces fichiers, vous devrez \^etre attentif \`a leur coh\'erence.
368
Voici un sch\'ema des correspondances que doivent respecter les couples
369
''nom/mot de passe" des diff\'erents fichiers de configurations.
371
\includegraphics{./Conf-Diagram.eps}
373
Dans la colonne de gauche, vous trouverez les ressources Director, Storage et
374
Client, avec leurs noms et mots de passe -- ils sont tous dans le fichier {\bf
375
bacula-dir.conf}. Dans la colonne de droite figurent les valeurs
376
correspondantes dans les fichiers de configuration de la Console, du Storage
377
Daemon (SD) et du File Daemon (FD).
379
Veuillez noter que l'adresse {\bf fd-sd}, qui appara{\^\i}t dans la ressource
380
Storage du Director, pr\'ec\'ed\'ee d'une at\'erisque est transmise au File
381
Daemon sous forme symbolique. Le File Daemon la r\'esout alors en une adresse
382
IP. Pour cette raison, vous devez utiliser soit une adresse IP, soit une
383
adresse pleinement qualifi\'ee. Une adresse telle que {\bf localhost},
384
n'\'etant pas pleinement qualifi\'ee, sera r\'esolue par le File Daemon en
385
l'h\^ote local du File Daemon, ce qui n'est probablement pas le r\'esultat
386
d\'esir\'e. Le mot de passe utilis\'e par le File Daemon pour autoriser la
387
communication avec le Storage Daemon est temporaire et unique pour chaque {\it
388
job}. Il n'est sp\'ecifi\'e dans aucun fichier de configuration.
390
\subsection*{Informations d\'etaill\'ees sur chaque {\it daemon}}
391
\index[general]{Daemon!Informations d\'etaill\'ees sur chaque }
392
\index[general]{Informations d\'etaill\'ees sur chaque daemon }
393
\addcontentsline{toc}{subsection}{Informations d\'etaill\'ees sur chaque
396
Les d\'etails de chaque ressource et des directives permises sont d\'ecrits
397
dans les chapitres suivants.
399
Les fichiers de configuration suivants doivent \^etre d\'efinis:
403
\ilink{Console}{_ChapterStart36} -- Pour d\'efinir les
404
ressources pour le programme Console (interface utilisateur avec le Director).
405
Ce fichier d\'efinit quels sont les Directors disponibles avec lesquels vous
408
\ilink{Director}{_ChapterStart40} -- Pour d\'efinir les ressources
409
n\'ecessaires au Director. Vous y d\'efinissez tous les Clients et Storage
410
Daemons que vous utilisez.
412
\ilink{Client}{_ChapterStart25} -- Pour d\'efinir les ressources
413
de chaque client \`a sauvegarder. Vous aurez un fichier de ressources Client
414
pour chacune des machine qui ex\'ecute un File Daemon.
416
\ilink{Storage}{_ChapterStart31} -- Pour d\'efinir les ressources
417
utilis\'ees par chaque Storage Daemon. En principe, vous aurez un seul
418
Storage Daemon qui contr\^olera votre (vos) lecteur(s). Quoi qu'il en soit, si
419
vous avez des lecteurs sur plusieurs machines, vous aurez au moins un Storage