4 \chapter{La commande restore de la console Bacula}
5 \label{_ChapterStart13}
6 \index[general]{Commande!restore de la console Bacula}
7 \index[general]{La commande restore de la console Bacula}
8 \addcontentsline{toc}{section}{La commande restore de la console Bacula}
10 \section{G\'en\'eralit\'es}
11 \index[general]{G\'en\'eralit\'es}
12 \addcontentsline{toc}{section}{G\'en\'eralit\'es}
14 Nous allons maintenant d\'ecrire la restauration de fichiers avec la commande
15 {\bf restore} de la Console, qui est le mode de restauration recommand\'e.
16 Il existe cependant un programme ind\'ependant nomm\'e {\bf bextract}, qui permet
17 lui aussi de restaurer des fichiers. Pour plus d'informations sur ce
18 programme, consultez le chapitre \ilink{Programmes utilitaires Bacula}{bextract}
19 de ce manuel. Vous y trouverez aussi des informations sur le programme {\bf bls}
20 qui sert \`a produire une liste du contenu de vos volumes, et sur le programme
21 {\bf bscan} qui vous sera utilie si vous voulez restaurer les enregistrements
22 du catalogue relatifs \`a un ancien volume qui n'y figure plus.
24 En g\'en\'eral, pour restaurer un fichier ou un ensemble de fichiers, vous devez
25 ex\'ecuter un job de type {\bf restore}, par cons\'equent, vous devez pr\'ed\'efinir
26 un tel job dans le fichier de configuration de votre Director. Les param\`etres
27 (Client, FileSet,...) que vous d\'efinissez ici ne sont pas importants,
28 Bacula les ajustera automatiquement lors de l'utilisation de {\bf restore}.
30 Bacula \'etant un programme r\'eseau, il vous appartient de vous assurer que
31 vous avez s\'electionn\'e le bon client et le bon disque dur pour recevoir la
32 restauration. Bacula peut sauvegarder le client A et restaurer ses fichiers
33 sur le client B, pourvu que leurs syst\`emes ne soient pas trop diff\'erents
34 au niveau de leurs structures de fichiers. Par d\'efaut, Bacula restaure les
35 donn\'ees sur leur client d'origine, mais pas \`a leur emplacement d'origine :
36 dans le r\'epertoire {\bf /tmp/bacula-restores}. Vous pouvez modifier ces
37 valeurs par d\'efaut lorsque la commande {\bf restore} vous demande confirmation
38 d'ex\'ecution du job en choisissant l'option {\bf mod}.
41 \section{La commande Restore}
42 \index[general]{Commande!Restore }
43 \index[general]{La commande Restore}
44 \addcontentsline{toc}{section}{La commande Restore}
45 Puisque Bacula maintient un catalogue des fichiers sauvegard\'es, et des volumes
46 o\`u ils sont stock\'es, il peut se charger de la majeure partie du travail
47 d'intendance. Ainsi, il vous suffit de sp\'ecifier le type de restauration que
48 vous souhaitez (d'apr\`es la derni\`ere sauvegarde, d'apr\`es la derni\`ere sauvegarde
49 ant\'erieure \`a une date sp\'ecifi\'ee...), et quels fichiers vous voulez restaurer.
51 Ceci est r\'ealis\'e par la commande {\bf restore} de la Console. Vous s\'electionnez
52 d'abord le type de restauration souhait\'ee ce qui entra\^ine la s\'election des
53 JobIds requis et la construction d'une arborescence interne \`a Bacula contenant
54 les enregistrements de fichiers des JobIds s\'electionn\'es. A ce stade, le
55 processus de restauration entre dans un mode o\`u vous pouvez naviguer
56 interactivement dans l'arborescence des fichiers disponibles pour restauration
57 et s\'electionner ceux que vous voulez restaurer. Ce mode est similaire au
58 programme de s\'election de fichier interactif standard d'Unix {\bf restore}.
60 Si vos fichiers ont \'et\'e \'elagu\'es, la commande {\bf restore} sera dans
61 l'incapacit\'e de les trouver. Voyez ci-dessous pour plus de d\'etails sur ce cas
64 Dans la Console, apr\`es avoir saisi {\bf restore}, le menu suivant vous est
69 First you select one or more JobIds that contain files
70 to be restored. You will be presented several methods
71 of specifying the JobIds. Then you will be allowed to
72 select which files from those JobIds are to be restored.
73 To select the JobIds, you have the following choices:
74 1: List last 20 Jobs run
75 2: List Jobs where a given File is saved
76 3: Enter list of comma separated JobIds to select
77 4: Enter SQL list command
78 5: Select the most recent backup for a client
79 6: Select backup for a client before a specified time
80 7: Enter a list of files to restore
81 8: Enter a list of files to restore before a specified time
82 9: Find the JobIds of the most recent backup for a client
83 10: Find the JobIds for a backup for a client before a specified time
84 11: Enter a list of directories to restore for found JobIds
91 \item Le choix 1 \'enum\`ere les 20 derniers jobs ex\'ecut\'es. Si vous trouvez
92 celui (ceux) que vous voulez, vous pouvez ensuite faire le choix 3 et entrer
95 \item Le choix 2 affiche tous les Jobs ayant sauvegard\'e un fichier
96 sp\'ecifi\'e. Si vous trouvez celui (ceux) que vous voulez, vous pouvez ensuite
97 faire le choix 3 et entrer son (leurs) JobId(s).
99 \item Le choix 3 vous permet de saisir une liste de JobIds, s\'epar\'es par des
100 virgules. Les fichiers de ces jobs seront plac\'es dans l'arborescence afin
101 que vous puissiez s\'electionner ceux que vous voulez restaurer.
103 \item Le choix 4 vous permet d'entrer une requ\^ete SQL arbitraire. C'est
104 certainement le moyen le plus primitif pour trouver les jobs d\'esir\'es,
105 mais aussi le plus flexible. Si vous trouvez celui (ceux) que vous voulez,
106 vous pouvez ensuite faire le choix 3 et entrer son (leurs) JobId(s).
108 \item Le choix 5 s\'electionne automatiquement la full la plus r\'ecente, et toutes
109 les incr\'ementales et diff\'erentielles subs\'equentes \`a cette full pour un
110 client sp\'ecifi\'e. Il s'agit l\`a des jobs et fichiers qui, si vous les
111 restaurez, ram\`eneront votre syst\`eme \`a son dernier \'etat sauvegard\'e.
112 Les JobIds sont automatiquement charg\'es dans l'arborescence. C'est
113 probablement le plus pratique des choix propos\'es pour restaurer un
114 client \`a son \'etat le plus r\'ecent.
116 Notez que ce processus de s\'election automatique ne s\'electionnera jamais
117 un job qui a \'echou\'e (termin\'e avec un statut d'erreur). Si vous disposez
118 d'un tel job dont vous voulez extraire des fichiers, vous devez
119 eplicitement entrer son JobId au niveau du choix 3 et choisir les fichiers
122 Si certains de jobs requis pour la restauration ont eu leurs enregistrements
123 de fichiers \'elagu\'es, la restauration sera incompl\`ete. Bacula ne d\'etecte
124 pas, pour l'instant, cette condition. Vous pouvez cependant la
125 contr\^oler en examinant attentivement la liste des jobs s\'electionn\'es
126 et affich\'es par Bacula. Si vous trouvez des jobs dont le champ JobFiles
127 est \`a z\'ero alors que ces fichiers auraient d\^u \^etre sauvegard\'es, alors
128 vous pouvez vous attendre \`a des probl\`emes.
130 Si tous les enregistrements de fichiers ont \'et\'e \'elagu\'es, Bacula constatera
131 qu'il n'y a aucune r\'ef\'erence \`a aucun fichier pour le JobIds s\'electionn\'es
132 et vous en informera, et vous proposera de faire une restauration compl\`ete
133 (non s\'elective) de ces JobIds. Ceci est possible car Bacula sait encore
134 o\`u commencent les donn\'ees sur les volumes, m\^eme s'il ne sait plus o\`u sont
135 les fichiers individuellement.
137 \item Le choix 6 vous permet de sp\'ecifier une date et un heure. Bacula
138 s\'electionne alors automatiquement la plus r\'ecente full ant\'erieure \`a cette date
139 ainsi que les incr\'ementales et diff\'erentielles subs\'equentes \`a cette full et
140 ant\'erieures \`a cette date.
142 \item Le choix 7 vous permet de sp\'ecifier un ou plusieurs noms de fichiers
143 (le chemin absolu est requis) \`a restaurer. Les noms de fichiers sont saisis
144 un par un, \`a moins que vous ne pr\'ef\'eriez cr\'eer un fichier pr\'efix\'e du
145 caract\`ere "moins" (\lt{}) que Bacula consid\`ere comme une liste de fichier
146 \`a restaurer. Pour quitter ce mode, entrez une ligne vide.
148 \item Le choix 8 vous permet de sp\'ecifier une date et une heure avant
149 d'entrer les noms de fichiers. Voir le choix 7 pour plus de d\'etails.
151 \item Le choix 9 vous permet de d\'eterminer les JobIds de la sauvegarde
152 la plus r\'ecente pour un client. C'est essentiellement la m\^eme chose
153 que le choix 5 (le m\^eme code est utilis\'e), mais ces JobIds sont
154 conserv\'es en interne comme si vous les aviez saisis manuellement.
155 Vous pouvez alors faire le choix 11 pour restaurer un ou plusieurs
158 \item Le choix 10 est le m\^eme que le 9, sauf qu'il vous permet d'entrer
159 une date butoir (comme pour le choix 6) pour la s\'election des JobIds.
160 Ces JobIds sont conserv\'es en interne comme si vous les aviez saisis manuellement.
162 \index[general]{Restaurer des r\'epertoires}
163 \item Le choix 11 vous permet d'entrer une liste de JobIds \`a partir de
164 laquelle vous pouvez s\'electionner les r\'epertoires \`a restaurer. La liste de
165 JobIds peut avoir \'et\'e \'etablie pr\'ec\'edemment \`a l'aide des choix 9 ou 10
166 du menu. Vous pouvez alors entrer le chemin absolu d'un r\'epertoire, ou
167 un nom de fichier pr\'efix\'e d'un signe "moins" (\lt{}) contenant la liste
168 des r\'epertoires \`a restaurer. Tous les fichiers des r\'epertoires s\'electionn\'es
169 seront restaur\'es, mais pas les sous-r\'epertoires, \`a moins que vous ne les
170 sp\'ecifiiez explicitement.
172 \item Le choix 12 vous permet d'abandonner la restauration.
175 A titre d'exemple, supposons que nous s\'electionnions l'option 5 (restaurer \`a
176 l'\'etat le plus r\'ecent). Bacula vous demande alors le client d\'esir\'e ce qui,
177 sur mon syst\`eme, se manifeste ainsi :
191 Select Client (File daemon) resource (1-9):
196 Si vous n'avez qu'un client, il est automatiquement s\'electionn\'e. Dans le cas
197 pr\'esent, j'entre {\bf Rufus} pour s\'electionner ce client. Bacula a
198 maintenant conna\^itre le FileSet \`a restaurer, aussi il affiche :
202 The defined FileSet resources are:
205 Select FileSet resource (1-2):
210 J'opte pour le choix 1, ma sauvegarde full. En principe, vous n'aurez qu'un
211 FileSet pour chaque job, et si vos machines de ressemblent (m\^emes syst\`emes),
212 vous pouvez n'avoir qu'un seul FileSet pour tous vos clients.
214 A ce stade, Bacula d\'etient toutes les informations dont il a besoin pour
215 trouver le jeu de sauvegardes le plus r\'ecent. Il va maintenant interroger le
216 cataloguie, ce qui peut prendre un peu de temps, et afficher quelque chose
221 +-------+------+----------+-------------+-------------+------+-------+----------
223 | JobId | Levl | JobFiles | StartTime | VolumeName | File | SesId |
225 +-------+------+----------+-------------+-------------+------+-------+----------
227 | 1,792 | F | 128,374 | 08-03 01:58 | DLT-19Jul02 | 67 | 18 |
229 | 1,792 | F | 128,374 | 08-03 01:58 | DLT-04Aug02 | 0 | 18 |
231 | 1,797 | I | 254 | 08-04 13:53 | DLT-04Aug02 | 5 | 23 |
233 | 1,798 | I | 15 | 08-05 01:05 | DLT-04Aug02 | 6 | 24 |
235 +-------+------+----------+-------------+-------------+------+-------+----------
237 You have selected the following JobId: 1792,1792,1797
238 Building directory tree for JobId 1792 ...
239 Building directory tree for JobId 1797 ...
240 Building directory tree for JobId 1798 ...
246 (Certaines colonnes sont tromqu\'ees pour des n\'ecessit\'es de mise en page).
248 Selon le nombre de {\bf JobFiles} pour chaque JobId, la construction de
249 l'arborescence peut prendre un certain temps. Si vous constatez que tous les
250 JobFiles sont \`a z\'ero, vos fichiers ont probalement \'et\'e \'elagu\'es et vous ne
251 pourrez pas s\'electionner les fichiers individuellement : vous devrez
252 restaurer tout ou rien.
254 Dans notre exemple, Bacula a trouv\'e quatre jobs qui comprennent la
255 sauvegarde la plus r\'ecente du client et du FileSet sp\'ecifi\'es. Deux des jobs
256 ont le m\^eme JobId car le job a \'ecrit sur deux volumes diff\'erents. Le
257 troisi\`eme est une incr\'ementale qui n'a sauvegard\'e que 254 fichier sur les
258 128 374 de la full. Le quatri\`eme est aussi une incr\'ementale, et n'a sauvegard\'e
261 Maintenant Bacula ins\`ere ces jobs dans l'arborescence, sans en marquer aucun
262 pour restauration par d\'efaut. Il vous indique le nombre de fichiers dans
263 l'arbre, et vous informe que le r\'epertoire de travail courant ({\bf cwd}) est
264 /. Finalement, Bacula vous invite avec le signe (\$) \`a saisir des commandes
265 pour vous d\'eplacer dans l'arborescence, et s\'electionner des fichiers.
267 Si vous voulez que tous les fichiers de l'arbre soient marqu\'es pour
268 restauration \`a sa construction, tapez {\bf restore all}.
270 Plut\^ot que de choisir l'option 5 du premier menu (s\'electionner la
271 sauvegarde la plus r\'ecente pour un client), si nous avions choisi l'option 3
272 (Entrer une liste de JobIds \`a s\'electionner), et si nous avions saisi
273 {\bf 1792,1797,1798}, nous serions arriv\'es au m\^eme point.
275 Il faut noter un point si vous saisissez manuellement les JobIds : vous devez
276 les entrer dans l'ordre o\`u ils ont \'et\'e ex\'ecut\'es (en g\'en\'eral, l'ordre croissant.
277 Si vous les sasissez dans un ordre diff\'erent, vous courrez le risque de ne pas
278 version la plus r\'ecente d'un fichier sauvegard\'e plusieurs fois si celui-ci a \'et\'e
279 sauvegard\'e dans plusieurs jobs.
281 Entre vos JobIds directement peut aussi vous permettre de restaurer depuis
282 un job qui a \'ecrit des donn\'ees sur les volumes mais qui s'est termin\'e en erreur.
284 Dans le mode s\'election de fichiers, vous pouvez utiliser {\bf help} ou une
285 question (?) pour produire un r\'esum\'e des commandes disponibles :
291 cd change current directory
292 count count marked files in and below the cd
293 dir long list current directory, wildcards allowed
294 done leave file selection mode
295 estimate estimate restore size
296 exit same as done command
297 find find files, wildcards allowed
299 ls list current directory, wildcards allowed
300 lsmark list the marked files in and below the cd
301 mark mark dir/file to be restored recursively in dirs
302 markdir mark directory name to be restored (no files)
303 pwd print current working directory
304 unmark unmark dir/file to be restored recursively in dir
305 unmarkdir unmark directory name only no recursion
306 quit quit and do not do restore
311 Par d\'efaut, aucun fichier n'est s\'electionn\'e pour restauration (sauf si vous
312 avez ajout\'e {\bf all} \`a la ligne de commande). Si, \`a ce stade, vous voulez
313 tout restaurer, vous devriez saisir {\bf mark *}, puis {\bf done}, Bacula
314 \'ecrira alors les donn\'ees bootstrap dans un fichier et sollicitera votre
315 approbation pour d\'emarrer la restauration.
317 Si vous n'utilisez pas {\bf mark *}, vous commencez avec une s\'election vide.
318 Vous pouvez simplement regarder et marquer ({\bf mark}) les fichiers et/ou
319 r\'epertoires qui vous int\'eressent. Il est ais\'e de commettre une erreur dans ces
320 op\'erations, et la gestion des erreurs dans Bacula n'est pas parfaite, aussi
321 contr\^olez votre travail avec la commande {\bf ls} ou {\bf dir} pour voir
322 quels fichiers ont \'et\'e s\'electionn\'es. Les fichiers s\'electionn\'es sont pr\'ec\'ed\'es
325 Pour contr\^oler ce qui est marqu\'e et ce qui ne l'est pas utilisez la commande
326 {\bf count} qui affiche :
330 128401 total files. 128401 marked to be restored.
335 Chacune des commandes ci-dessus sera expliqu\'e plus en d\'etail dans la
336 prochaine section. Poursuivons avec notre exemple, en validant la restauration de
337 tous les fichiers. En saisissant {\bf done}, Bacula affiche :
341 Bootstrap records written to /home/kern/bacula/working/restore.bsr
342 The restore job will require the following Volumes:
346 128401 files selected to restore.
348 JobName: kernsrestore
349 Bootstrap: /home/kern/bacula/working/restore.bsr
350 Where: /tmp/bacula-restores
356 OK to run? (yes/mod/no):
361 Examinez chaque \'el\'ement attentivement pour vous assurer que tout est
362 conforme \`a ce que vous souhaitez. En particulier, v\'erifiez la ligne {\bf where},
363 qui vous indique dans quelle partie du syst\`eme de fichiers vos donn\'ees
364 seront restaur\'ees, et quel client va les recevoir (par d\'efaut, les
365 restaurations ont lieu sur le client d'origine). Ces param\`etres n'auront pas
366 forc\'ement les bonnes valeurs, mais vous pouvez les modifier \`a l'aide
367 de la commande {\bf mod} et en vous laissant guider par l'invite de la
370 L'affichage ci-dessus suppose que vous ayez d\'efini une ressource Job de type
371 {\bf restore} dans le fichier de configuration de votre Director. en
372 principe, vous n'en n'aurez besoin que d'une, car, par nature, une
373 restauration est une op\'eration essentiellement manuelle. A l'aide de la
374 Console, vous pourrez modifier le job Restore pour faire ce que vous voulez
377 Un exemple de ressource Job de type restore est donn\'e plus bas.
379 Pour en revenir \`a notre exemple, en plus de v\'erifier le client, il est sage
380 de v\'erifier que le p\'eriph\'erique de stockage choisi par Bacula est le bon.
381 Bien que le FileSet soit pr\'esent\'e, il est en fait ignor\'e dans la restauration.
382 Le processus de restauration choisit ses fichiers en lisant le fichier
383 {\bf bootstrap}, et restaure tous les fichiers associ\'es au JobId consid\'er\'e
384 si ce fichier n'est pas sp\'ecifi\'e.
386 Enfin, avant de lancer la restauration, notez que le lieu par d\'efaut pour les
387 fichiers restaur\'es n'est pas leur emplacement d'origine mais le r\'epertoire
388 {\bf /tmp/bacula-restores}. Vous pouvez modifier cette valeur par d\'efaut dans
389 le fichier de configuration du Director, ou avec l'option {\bf mod}. Si vous
390 voulez restaurer les fichiers \`a leurs emplacements d'origine, modifiez l'option
391 {\bf where} : sp\'ecifiez la racine ({\bf /} ou rien du tout).
393 Si vous entrez maintenant {\bf yes}, Bacula lance la restauration. le Storage
394 Daemon va d'abord requ\'erir le volume {\bf DLT-19Jul02}, puis le {\bf DLT-04Aug02}
395 une fois qu'il aura extrait les fichiers requis du premier.
397 \section{S\'electionner des fichiers par leurs noms}
398 \index[general]{S\'electionner des fichiers par leurs noms}
399 \index[general]{Noms de fichiers!S\'electionner des fichiers par leurs}
400 \addcontentsline{toc}{section}{S\'electionner des fichiers par leurs noms}
402 Si vous n'avez qu'un petit nombre de fichiers \`a restaurer dont vous connaissez
403 les noms, vous pouvez, aux choix, placer ces noms dans un fichier qui sera
404 lu par Bacula, ou saisir les noms un par un. Les noms de fichier doivent inclure
405 le chemin absolu. Les caract\`eres jokers ne peuvent \^etre utilis\'es.
407 Pour saisir la liste, choisissez l'option 7 dans le menu de la commande {\bf restore} :
411 To select the JobIds, you have the following choices:
412 1: List last 20 Jobs run
413 2: List Jobs where a given File is saved
414 3: Enter list of comma separated JobIds to select
415 4: Enter SQL list command
416 5: Select the most recent backup for a client
417 6: Select backup for a client before a specified time
418 7: Enter a list of files to restore
419 8: Enter a list of files to restore before a specified time
420 9: Find the JobIds of the most recent backup for a client
421 10: Find the JobIds for a backup for a client before a specified time
422 11: Enter a list of directories to restore for found JobIds
428 Vous \^etes alors invit\'e \`a pr\'eciser le client :
436 Select the Client (1-3): 3
440 Si vous n'avez qu'un client, il est s\'electionn\'e automatiquement.
441 Finalement, Bacula vous demande d'entrer un nom de fichier :
449 Vous pouvez, \`a ce stade, saisir le chemin absolu et le nom du fichier :
453 Enter filename: /home/kern/bacula/k/Makefile.in
458 Si Bacula ne peut en trouver aucune copie, il affiche ce qui suit :
462 Enter filename: junk filename
463 No database record found for: junk filename
468 Si vous souhaitez que Bacula r\'ecup\`ere la liste des fichiers \`a restaurer depuis
469 un fichier, r\'edigez ce fichier et donnez lui un nom commen\c{c}ant par le signe
470 moins (\lt{}) et saisissez-le ici. Lorsque vous avez entr\'e tous les noms de
471 fichiers, validez une ligne vide. Bacula \'ecrit maintenant le fichier
472 bootstrap, vous indique les cartouches qui seront utilis\'ees, et vous propose
473 de valider la restauration :
478 Automatically selected Storage: DDS-4
479 Bootstrap records written to /home/kern/bacula/working/restore.bsr
480 The restore job will require the following Volumes:
483 1 file selected to restore.
485 JobName: kernsrestore
486 Bootstrap: /home/kern/bacula/working/restore.bsr
487 Where: /tmp/bacula-restores
492 When: 2003-09-11 10:20:53
494 OK to run? (yes/mod/no):
498 Il est possible d'automatiser la s\'election des fichiers en pla\c{c}ant votre liste
499 de fichiers dans, part exemple, {\bf /tmp/file-list}, puis en utilisant la
504 restore client=Rufus file=</tmp/file-list
508 Si, en modifiant les param\`etres du job restauration, vous constatez que Bacula
509 vous demande d'entrer un num\'ero de job, c'est vous n'avez pour l'instant sp\'ecifi\'e
510 ni num\'ero de job, ni fichier bootstrap. Entrez simplement z\'ero pour pouvoir
511 continuer et s\'electionner une autre option \`a modifier.
513 \label{CommandArguments}
515 \section{Arguments de la ligne de commande}
516 \index[general]{Arguments!ligne de commande}
517 \index[general]{Arguments de la ligne de commande}
518 \addcontentsline{toc}{section}{Arguments de la ligne de commande}
520 Si tout ce qui pr\'ec\`ede vous a sembl\'e compliqu\'e, vous admettrez certainement
521 que ce n'est vraiment pas le cas apr\`es quelques essais. Il est possible de
522 faire tout ce qui vient d'\^etre vu en utilisant la ligne de commande, \`a
523 l'exception de la s\'election du FileSet. Voici une telle ligne de commande :
527 restore client=Rufus select current all done yes
531 Le sp\'ecification {\bf client=Rufus} s\'electionne automatiquement le client Rufus,
532 l'option {\bf current} pr\'ecise que vous voulez une restauration \`a l'\'etat le plus
533 r\'ecent possible, et le {\bf yes} \'elude l'invite finale {\bf yes/mod/no} et
534 ex\'ecute directement la restauration.
536 Voici la liste des arguments de la ligne de commandes :
539 \item {\bf all} -- s\'electionne tous les fichiers pour la restauration.
540 \item {\bf select} -- utilise la s\'election via l'arborescence.
541 \item {\bf done} -- permet de quitter le mode de s\'election dans l'arborescence.
542 \item {\bf current} -- s\'electionne automatiquement le jeu de sauvegardes le plus
543 r\'ecent pour le client sp\'ecifi\'e.
544 \item {\bf client=xxxx} -- S\'electionne le client sp\'ecifi\'e.
545 \item {\bf jobid=nnn} -- Sp\'ecifie un JobId ou une liste de JobIds s\'epar\'es par des
546 virgules pour la restauration.
547 \item {\bf before=YYYY-MM-DD HH:MM:SS} -- Sp\'ecifie une date et un horaire. Bacula
548 s\'electionne le plus r\'ecent des jeux de sauvegardes ant\'erieurs \`a la date sp\'ecifi\'ee.
549 Cette commande n'est pas tr\`es conviviale, en effet, vous devez sp\'ecifier la date
550 et l'heure en respectant exactement le mod\`ele.
551 \item {\bf file=filename} -- Sp\'ecifie un nom de fichier \`a restaurer. Vous devez
552 sp\'ecifier le chemin absolu vers le fichier. Si vous pr\'efixez l'entr\'ee d'un signe moins
553 (\lt{}), Bacula consid\`ere que ce fichier existe et qu'il contient la liste des
554 fichiers \`a restaurer. Les sp\'ecifications multiples {\bf file=xxx} peuvent \^etre
555 utilis\'ees en ligne de commandes.
556 \item {\bf jobid=nnn} -- Sp\'ecifie un JobId \`a restaurer.
557 \item {\bf pool=pool-name} -- Sp\'ecifie un nom de pool \`a utiliser pour la s\'election des
558 volumes au niveau des options 5 et 6 (restauration \`a l'\'etat le plus r\'ecent et
559 restauration \`a l'\'etat le plus r\'ecent avant une date donn\'ee). Ceci vous permet d'avoir
560 plusieurs pools, dont un \'eventuellement hors site et l'autre sur place disponible pour
562 \item {\bf yes} -- Ex\'ecute automatiquement la restauration sans passer par l'invite finale
563 de validation/modification surtout utile pour l'utilisation dans des scripts).
566 \section{Restaurer les attributs de fichiers}
567 \index[general]{Attributs de fichiers!Restaurer}
568 \index[general]{Restaurer les attributs de fichiers}
569 \addcontentsline{toc}{section}{Restaurer les attributs de fichiers}
571 Selon la fa\c{c}on dont vous restaurez, vous pouvez ou non restaurer les
572 attributs de fichiers \`a leur \'etat initial. Voici quelques uns des
573 probl\`emes auxquels vous pouvez \^etre confront\'es, et, pour les
574 restaurations sur la machine d'origine, comment les \'eviter.
577 \item Vous avez sauvegard\'e des fichiers sur une machine, et les restaurez
578 sur une autre qui a peut-\^etre un autre syst\`eme d'exploitation ou des
579 utilisateurs/groupes diff\'erents. Bacula fait du mieux qu'il peut dans ces
580 situations. Notez qu'utilisateurs et groupes sont sauvegard\'es au format
581 num\'erique, et qu'ils peuvent donc se r\'ef\'erer \`a d'autres utilisateurs et
582 groupes sur un autre syst\`eme.
583 \item Vous restaurez dans un r\'epertoire existant sur lequel portent des
584 restrictions du droit de cr\'eation. Bacula tente alors de tout r\'etablir,
585 mais sans parcourir la cha\^ine compl\`ete des r\'epertoires ni les modifier
586 durant la restauration. En fait, ce que pourra faire Bacula pour r\'etablir
587 les permissions correctement d\'epend pour beaucoup de votre syst\`eme
589 \item Vous faites une restauration recursive d'une arborescence. Dans ce cas,
590 de figure, Bacula restaure un fichier avant de restaurer l'entr\'ee de son
591 r\'epertoire parent. Dans le processus de restauration du fichier, Bacula
592 cr\'ee le r\'epertoire parent avec des permissions ouvertes et le m\^eme
593 propri\'etaire que le fichier restaur\'e. Alors, lorsque Bacula tente de restaurer
594 le r\'epertoire en lui m\^eme, il se rend compte qu'il existe d\'ej\`a (situation
595 similaire \`a la pr\'ec\'edente). Si vous avez fix\'e l'option "Replace" \`a "never"
596 lors du lancement du job, alors Bacula ne modifie pas les permissions et
597 propri\'et\'es du r\'epertoire pour s'accorder \`a ce qu'elles \'etaient lors de la
598 sauvegarde. Vous devriez aussi noter une divergence entre le nombre de fichiers
599 effectivement restaur\'es et le nombre de fichiers attendus. Si vous voulez
600 \'eviter ces inconv\'enients, fixez l'option "Replace" \`a "always", ainsi
601 Bacula sera en mesure de modifier les propri\'etaire et permissions des
602 r\'epertoires pour les ramener \`a leurs \'etats d'origine. Le nombre de
603 fichiers restaur\'es devrait cette fois \^etre identique \`a celui attendu.
605 \item Vous avez s\'electionn\'e un ou plusieurs fichiers d'un r\'epertoire sans
606 s\'electionner le r\'epertoire lui-m\^eme. Dans ce cas, si le r\'epertoire
607 n'existe pas d\'ej\`a, Bacula le cr\'ee avec des attributs par d\'efaut qui ne
608 seront peut-\^etre pas ceux d'origine. Si vous ne voulez pas s\'electionner
609 un r\'epertoire et tout son contenu, mais seulement quelques objets dans
610 ce r\'epertoire en les marquant individuellement, vous devriez utiliser
611 la commande {\bf markdir} pour s\'electionner un r\'epertoire de plus haut
612 niveau (un \`a la fois) si vous voulez que les entr\'ees de r\'epertoires
613 soient restaur\'ees correctement.
618 \section{Restaurer sur Windows}
619 \index[general]{Restaurer sur Windows}
620 \index[general]{Windows!Restaurer sur}
621 \addcontentsline{toc}{section}{Restaurer sur Windows}
622 Sur les syst\`emes WinNT/2K/XP, Bacula restaure les fichiers avec les droits
623 et permissions d'origine comme on s'y attend. Ceci est aussi v\'erifi\'e si vous
624 restaurez ces fichiers vers un autre r\'epertoire (avec l'option "where") que celui
625 d'origine. Cependant, si le nouveau r\'epertoire n'existe pas, le File Daemon
626 tente de le cr\'eer. Dans certains cas, il n'y parvient pas. S'il y parvient, le
627 r\'epertoire cr\'e\'e appartient \`a l'utilisateur qui ex\'ecute le File Daemon, c'est-\`a-dire
628 SYSTEM. Dans ce cas, il se peut que vous ayez des difficult\'es pour acc\'eder aux
629 fichiers fraichement restaur\'es.
631 Pour \'eviter ce probl\`eme, vous devriez cr\'eer le r\'epertoire alternatif avant
632 de lancer la restauration. Bacula ne changera pas les attributs de ce r\'epertoire,
633 du moment que ce n'est pas l'un des r\'epertoires \`a restaurer.
635 Le r\'epertoire de restauration par d\'efaut est {\bf /tmp/bacula-restores/}, qui devient
636 {\bf /tmp/bacula-restores/e/} si vous restaurez depuis le disque {\bf E}.
637 Aussi, assurez-vous que ce r\'epertoire existe avant de lancer la restauration, ou
638 utilisez l'option {\bf mod} pour s\'electionner un r\'epertoire destination existant.
640 Certains utilisateurs ont signal\'e des probl\`emes en restaurant des fichiers
641 qui participent \`a Active Directory. Ils ont aussi rapport\'e que le changement de
642 l'Id utilisateur sous lequel est ex\'ecut\'e Bacula de SYSTEM en un Id d'administrateur
643 du domaine r\'esout le probl\`eme.
645 \section{Une restauration peut prendre du temps}
646 \index[general]{temps!Restauration}
647 \index[general]{Une restauration peut prendre du temps}
648 \addcontentsline{toc}{section}{Une restauration peut prendre du temps}
650 Restaurer des fichiers est g\'en\'eralement {\bf beaucoup} plus lent que de les
651 sauvegarder, ce pour plusieurs raisons. La premi\`ere est que lors d'une sauvegarde,
652 la cartouche est normalement d\'ej\`a positionn\'ee, Bacula n'a qu'\`a \'ecrire dessus.
653 D'autre part, les restaurations \'etant si rares (par rapport aux sauvegardes),
654 Bacula ne garde dans le catalogue que l'emplacement sur la cartouche du premier
655 fichier et du premier bloc pour chaque job, et non l'emplacement de chaque fichier,
656 ce qui occuperait trop de place dans le catalogue.
658 Bacula se place d'abord sur la bonne marque de fichier sur la cartouche, puis
659 sur le bloc correct, puis lit s\'equentiellement chaque enregistrement jusqu'\`a
660 trouver ceux correspondant aux fichier que vous voulez restaurer. Une fois ces
661 fichiers restaur\'es, Bacula cesse de lire la cartouche.
663 Enfin, au lieu de simplement lire un fichier comme pour une sauvegarde, Bacula
664 doit, lors d'une restauration, cr\'eer les fichiers, tandis que le syst\`eme
665 d'exploitation doit, de son cot\'e, allouer de l'espace disque pour ces fichiers
668 Pour toutes ces raisons, le processus de restauration est g\'en\'eralement beaucoup
669 plus lent que celui de sauvegarde (une restauration peut prendre trois fois
670 plus de temps que la sauvegarde).
672 \section{Probl\`emes lors de la restauration de fichiers}
673 \index[general]{Fichiers!Probl\`emes de restauration}
674 \index[general]{Probl\`emes lors de la restauration de fichiers}
675 \addcontentsline{toc}{section}{Probl\`emes lors de la restauration de fichiers}
677 Les probl\`emes que les utilisateurs rencontrent le plus souvent lors des restaurations
678 sont des messages d'erreurs tels que :
682 04-Jan 00:33 z217-sd: RestoreFiles.2005-01-04_00.31.04 Error:
683 block.c:868 Volume data error at 20:0! Short block of 512 bytes on
684 device /dev/tape discarded.
692 04-Jan 00:33 z217-sd: RestoreFiles.2005-01-04_00.31.04 Error:
693 block.c:264 Volume data error at 20:0! Wanted ID: "BB02", got ".".
698 Ces deux types de messages indiquent que vous avez probablement utilis\'e votre
699 lecteur en mode "blocs de taille fixe" plut\^ot qu'en mode "blocs de taille
700 variable". Le mode "blocs de taille fixe" fonctionne avec tout programme
701 qui lit les cartouches s\'equentiellement tel que {\bf tar}, cependant Bacula
702 repositionne la bande suivant les blocs lors des restaurations, ce qui lui
703 permet d'am\'eliorer les performances en restauration de plusieurs ordres
704 de grandeur lorsqu'il s'agit de restaurer quelques fichiers isol\'es. Il existe
705 plusieurs moyens pour vous tirer de ce mauvais pas.
707 Tentez-les l'un apr\`es l'autre, en r\'etablissant votre ressource Device apr\`es
711 \item D\'esactivez le positionnement par blocs ("Block Positioning = no"
712 dans la ressource Device) et essayez de restaurer. Cette directive est
713 r\'ecente et n'est pas encore bien test\'ee.
714 \item R\'eglez \`a 512 les tailles minimum et maximum de blocs
715 ("Minimum Block Size = 512" et "Maximum Block Size = 512") et essayez de
716 restaurer. Si vous \^etes en mesure de d\'eterminer la taille de blocs
717 utilis\'ee par votre lecteur pour \'ecrire les donn\'ees, vous devriez essayer
718 cette valeur si la restauration a \'echou\'e avec 512.
719 \item Editez le fichier restore.bsr \`a l'invite yes/mod/no de la
720 commande Run xxx avant de valider la restauration, et supprimez tous les
721 enregistrements VolBlock. Ce sont eux qui causent les repositionnements de
722 la bande et les probl\`emes qui s'ensuivent si vous utilisez des blocs de taille
723 fixe sur votre lecteur. Les commandes VolFile provoquent aussi le
724 repositionnement, mais celui-ci fonctionne ind\'ependamment de la taille des blocs.
725 \item Utilisez bextract pour extraire vos fichiers -- ce programme lit les
726 volumes s\'equentiellement si vous utilisez la fonctionnalit\'e des listes
727 d'inclusions, ou si vous utilisez un fichier .bsr (priv\'e des enregistrements
728 VolBlock) \`a l'invite "yes/mod/no" qui pr\'ec\`ede le lancement de la
732 \section{Erreurs de restaurations}
733 \index[general]{Erreurs!Restauration}
734 \index[general]{Erreurs de restauration}
735 \addcontentsline{toc}{section}{Erreurs de restauration}
737 Il existe de multiples causes qui peuvent \^etre \`a l'origine de messages d'alerte ou d'erreurs
738 lors des restaurations. Les plus courantes sont les suivantes :
742 \item [file count mismatch]
743 Cette erreur peut se produire dans les cas suivants :
745 \item Vous avez enjoint Bacula \`a ne pas \'ecraser les fichiers
746 existants ou plus r\'ecents.
747 \item Bacula a commis une erreur dans le d\'ecompte des fichiers/r\'epertoires.
748 Ceci est un probl\`eme inh\'erent \`a la complexit\'e des r\'epertoires, liens
749 symboliques/durs, etc. Contr\^olez simplement que tous les fichiers voulus ont \'et\'e
750 effectivement restaur\'es.
752 \item [file size error]
753 Lorsque Bacula restaure un fichier, il v\'erifie que la taille du fichier
754 restaur\'e est conforme aux donn\'ees d'\'etat enregistr\'ees au d\'ebut de la sauvegarde
755 du fichier. En cas de divergence, Bacula affiche un message d'erreur. Cet
756 divergence survient presque toujours \`a cause d'une \'ecriture du fichier
757 au cours de sa sauvegarde. Dans ce cas, la taille du fichier restaur\'e
758 est plus grande que la taille enregistr\'ee dans les donn\'ees d'\'etat. Cette
759 erreur se produit souvent avec les fichiers de journaux.
761 Si en revanche la taille du fichier restaur\'ee est plus petite, vous devriez
762 pousser vos investigations du cot\'e d'un \'eventuel probl\`eme de bande et
763 contr\^oler les rapports de Bacula ainsi que votre syst\`eme de journalisation.
766 \section{Un exemple de ressource Restore Job}
767 \index[general]{Exemple ressource Restore Job }
768 \index[general]{Ressource!Exemple Restore Job }
769 \addcontentsline{toc}{section}{Exemple ressource Restore Job}
774 Name = "RestoreFiles"
777 FileSet = "Any-FileSet"
778 Storage = Any-storage
779 Where = /tmp/bacula-restores
785 Si la directive {\bf Where} n'est pas pr\'ecis\'ee, les fichiers sont restaur\'es \`a
786 leur emplacement d'origine.
789 \section{Les commande de s\'election de fichiers}
790 \index[general]{Commandes!s\'election fichiers}
791 \index[general]{Fichiers S\'election Commandes }
792 \addcontentsline{toc}{section}{Commandes de s\'election de fichiers}
794 Une fois que vous avez s\'electionn\'e les jobs \`a restaurer et apr\`es que Bacula a cr\'e\'e
795 l'arborescence des r\'epertoires en m\'emoire, vous entrez dans le mode de s\'election
796 de fichiers, ce qui est rappel\'e par l'invite ({\bf \$}). Dans ce mode, vous
797 pouvez utiliser les commandes \'enum\'er\'ees plus haut. Vous pouvez naviguer dans
798 l'arborescence avec la commande {\bf cd} tout comme vous le feriez dans
799 un syst\`eme de fichiers. Lorsque vous \^etes dans un r\'epertoire, vous pouvez en
800 s\'electionner des fichiers ou r\'epertoires pour restauration. Par d\'efaut, aucun
801 fichier n'est s\'electionn\'e. Si vous souhaitez au contraire partir d'une situation
802 o\`u tous les fichiers sont s\'electionn\'es, saisissez simplement : {\bf cd /} et
803 {\bf mark *}. Sinon, s\'electionnez vos fichiers avec la commande {\bf mark}. Les
804 commandes disponibles sont :
809 La commande {\bf cd} change le r\'epertoire courant en l'argument sp\'ecifi\'e. les
810 caract\`eres joker ne sont pas admis.
812 Notez que sur les syst\`emes Windows, les diff\'erents disques (c:, d:, ...) sont
813 trait\'es comme des r\'epertoires dans l'arborescence. Une cons\'equence est que vous
814 devez saisir {\bf cd c:} ou \'eventuellement {\bf cd C:} pour descendre dans le
815 premier r\'epertoire.
819 La commande {\bf dir} est similaire \`a la commande {\bf ls}, mais produit un
820 affichage au format long (tous les d\'etails). Cette commande peut \^etre un peu
821 plus lente que la commande {\bf ls} car elle n\'ecessite l'acc\`es au catalogue
822 pour produire les informations d\'etaill\'ees concernant chaque fichier.
825 \index[dir]{estimate }
826 La commande {\bf estimate} affiche un aper\c{c}u du nombre total de fichiers dans
827 l'arbre, de ceux s\'electionn\'es pour restauration, et une estimation du nombre
828 d'octets \`a restaurer. Ceci peut-\^etre tr\`es utile si la machine o\`u vous comptez
829 restaurer est limit\'ee en espace disque.
833 La commande {\bf find} prend un ou plusieurs arguments et affiche tous les fichiers
834 de l'arbre qui satisfont ces arguments. Les arguments peuvent comporter
835 des caract\`eres joker. Cette commande est similaire \`a la commande Unix
836 {\bf find / -name arg}.
839 La commande {\bf ls} produit la liste des fichiers du r\'epertoire courant, comme
840 le ferait la commande Unix {\bf ls}. Vous pouvez sp\'ecifier un argument
841 comportant des caract\`eres joker, auquel cas seuls les fichiers concern\'es seront
842 list\'es. Le nom de tout fichier s\'electionn\'e pour restauration est pr\'ec\'ed\'e
843 d'un ast\'erisque ({\bf *}). Les noms de r\'epertoires sont suivis d'une barre oblique
844 avant (slash {\bf /}) pour les distinguer des noms de fichiers.
848 La commande {\bf lsmark} est similaire \`a la commande {\bf ls}, mais de port\'ee
849 restreinte aux fichiers s\'electionn\'es pour restauration. D'autre part, contrairement
850 \`a {\bf lsmark}, elle descend r\'ecursivement dans les sous-r\'epertoire du
851 r\'epertoire s\'electionn\'e.
855 La commande {\bf mark} vous permet de s\'electionner vos fichiers pour restauration.
856 Elle prend pour unique argument le nom du fichier ou r\'epertoire (du r\'epertoire
857 courant) \`a restaurer. L'argument peut comporter des caract\`eres joker, auquel cas
858 tous les fichiers qui co\"incident avec le motif sp\'ecifi\'e sont s\'electionn\'es pour
859 restauration. Si un r\'epertoire du r\'epertoire courant co\"incide avec l'argument,
860 alors ce r\'epertoire et tous les fichiers qu'il contient sont r\'ecursivement
861 s\'electionn\'es pour restauration. Chacun des fichiers s\'electionn\'e est identifiable par
862 l'ast\'erisque qui pr\'ec\`ede son nom dans la liste produite par les commandes {\bf ls}
863 ou {\bf dir}. Notez que fournir un chemin absolu en argument de la commande
864 {\bf mark} ne produit pas le r\'esultat qu'on pourrait en attendre pour s\'electionner
865 un fichier ou un r\'epertoire du r\'epertoire courant. La commande {\bf mark} travaille
866 sur le r\'epertoire courant et sur les r\'epertoires enfants, mais ne remonte pas vers les
867 r\'epertoires de plus haut niveau.
869 Apr\`es ex\'ecution, la commande {\bf mark} affiche un bref r\'esum\'e :
878 si aucun fichier n'a \'et\'e s\'electionn\'e, ou :
887 si certains fichiers ont \'et\'e s\'electionn\'es.
891 la commande {\bf unmark} fonctionne exactement comme la commande {\bf mark}, mais
892 sert \`a d\'es\'electionner les fichiers sp\'ecifi\'es pour qu'ils ne soient pas
893 restaur\'es. Notez que la commande {\bf unmark} travaille sur le r\'epertoire courant
894 et sur les r\'epertoires enfants, mais ne remonte pas vers les r\'epertoires de plus
895 haut niveau. Si vous souhaitez d\'es\'electionner l'ensembles des fichiers, placez-vous
896 \`a la racine ({\bf cd /}) avant de saisir {\bf unmark *}.
900 La commande {\bf pwd} affiche le r\'epertoire courant. Elle ne prend aucun argument.
904 La commande {\bf count} affiche le nombre total de fichiers dans l'arborescence des
905 fichiers et le nombre de fichiers s\'electionn\'es pour restauration.
909 Cette commande permet de quitter le mode de s\'election de fichiers.
913 Cette commande permet de quitter le mode de s\'election de fichiers (identique \`a {\bf done}).
917 Cette commande permet de quitter le mode de s\'election de fichiers sans ex\'ecuter la restauration.
921 Cette commande affiche un aper\c{c}u des commandes disponibles.
924 Cette commande est identique \`a {\bf help}.
927 \label{database_restore}
928 \section{Restaurer lorsque tout va de travers}
929 \index[general]{Restaurer lorsque tout va de travers}
930 \index[general]{Restaurer le catalogue}
931 \index[general]{Catalogue!Restaurer}
932 \addcontentsline{toc}{section}{Restaurer lorsque tout va de travers}
934 Je pr\'esente ici quelques-uns des probl\`emes qui peuvent survenir et
935 rendre les op\'erations de restaurations plus difficiles, et quelques id\'ees
936 pour se sortir de ces situations d\'elicates. Des informations plus
937 sp\'ecifiques aux restaurations compl\`etes des \ilink{clients}{restore_client}
938 ou du \ilink{serveur}{restore_server} sont fournies dans le chapitre
939 \ilink{Disaster recovery avec Bacula}{_ChapterRescue}.
943 Mon catalogue est corrompu.
945 Pour SQLite, utilisez la commande {\bf vacuum} pour tenter de r\'ecup\'erer
946 le catalogue. Pour MySQL ou PostgreSQL, consultez la documentation
947 officielle de la base de donn\'ees. Des outils sp\'ecifiques vous permettront
948 de contr\^oler et r\'eparer votre catalogue.
950 Dans le cas contraire, vous devrez restaurer le catalogue.
952 Comment restaurer mon catalogue ?
954 Si vous avez sauvegard\'e votre catalogue quotidiennement (comme il se doit...)
955 et avez fait un fichier {\it bootstrap}, vous pouvez imm\'ediatement
956 recharger votre base de donn\'ees. Faites une copie de votre base courante,
957 puis r\'einitialisez-la avec les scripts suivants :
962 Apr\`es r\'einitialisation de la base, vous devriez pouvoir d\'emarrer Bacula.
963 Si vous tentez maintenat d'utiliser la commande {\bf run}, \c{c}a ne
964 marchera pas puisque le catalogue est vierge. Cependant, vous pouvez
965 ex\'ecuter manuellement un job et sp\'ecifier votre fichier bootstrap.
966 Pour cela, utilisez la commande {\bf run} et choisissez un job de type
967 {\bf retore}. Si vous utilisez le bacula-dir.conf par d\'efaut, il s'agit
968 de {\bf RestoreFiles}. Vous devriez obtenir quelque chose comme :
973 JobName: RestoreFiles
974 Bootstrap: /home/kern/bacula/working/restore.bsr
975 Where: /tmp/bacula-restores
980 When: 2005-07-10 17:33:40
983 OK to run? (yes/mod/no):
986 Plusieurs param\`etres seront diff\'erents dans votre cas. Vous aller modifier
987 (commande {\bf mod}) le param\`etre {\bf Bootstrap} pour qu'il pointe
988 vers votre fichier bootstrap, et vous assurer que les autres param\`etres
989 sont corrects. Notez que le FileSet est ignor\'e lorque vous utilisez un
990 fichier bootstrap. Une fois que vous avez fix\'e tous les bons param\`etres,
991 ex\'evutez le job, vous devriez r\'ecup\'erer la sauvegarde de votre catalogue.
992 Il vous reste alors \`a r\'eg\'en\'erer votre base de donn\'ees \`a partir du
993 fichier de sauvegarde ASCII.
996 Si vous avez sauvegard\'e votre catalogue mais n'avez pas fait de fichier
997 bootstrap, la reconstruction du catalogue sera un peu plus difficile.
998 Il vous faudra probablement utiliser {\bf bextract} pour extraire
999 la sauvegarde du catalogue. D'abord vous devez la localiser en
1000 consultant le rapport de la derni\`ere sauvegarde du catalogue. Il comporte
1001 des informations qui vous seront pr\'ecieuses pour le restaurer rapidement.
1002 Par exemple, dans le rapport ci-dessous, les \'elements critiques sont
1003 {\it Volume name(s)}, {\it the Volume Session Id} et {\it Volume Session Time}.
1004 Si vous les connaissez, vous pouvez restaurer ais\'ement votre catalogue.
1008 22-Apr 10:22 HeadMan: Start Backup JobId 7510,
1009 Job=CatalogBackup.2005-04-22_01.10.0
1010 22-Apr 10:23 HeadMan: Bacula 1.37.14 (21Apr05): 22-Apr-2005 10:23:06
1012 Job: CatalogBackup.2005-04-22_01.10.00
1015 FileSet: "CatalogFile" 2003-04-10 01:24:01
1018 Start time: 22-Apr-2005 10:21:00
1019 End time: 22-Apr-2005 10:23:06
1022 FD Bytes Written: 210,739,395
1023 SD Bytes Written: 210,739,521
1025 Software Compression: None
1026 Volume name(s): DLT-22Apr05
1027 Volume Session Id: 11
1028 Volume Session Time: 1114075126
1029 Last Volume Bytes: 1,428,240,465
1030 Non-fatal FD errors: 0
1032 FD termination status: OK
1033 SD termination status: OK
1034 Termination: Backup OK
1038 Avec ces informations, vous pouvez cr\'eer manuellement un fichier
1039 bootstrap et embrayer sur les instructions donn\'ees plus haut pour
1040 restaurer le catalogue. Un fichier bootstrap reconstruit pour le job
1041 ci-dessus ressemblerait \`a ceci :
1045 Volume="DLT-22Apr05"
1047 VolSessionTime=1114075126
1052 o\`u les valeurs {\it Volume name}, {\it Volume Session Id} , et {\it Volume Session Time}
1053 conformes \`a celles du rapport de job ont \'et\'e introduites. Notez aussi
1054 le {\it FileIndex} de valeur 1, ce sera toujours le cas pourvu qu'un seul fichier
1055 ait \'et\'e sauvegard\'e par le job.
1057 L'inconv\'enient de ce fichier bootstrap par rapport \`a celui cr\'e\'e automatiquement
1058 lorsque vous le sp\'ecifiez est qu'il ne comporte aucune sp\'ecification {\it File}
1059 ou {\it Block}, aussi Bacula doit examiner toutes les donn\'ees du volume pour
1060 trouver le fichier requis. Un fichier bootstrap compl\`etement renseign\'e ressemblerait
1065 Volume="DLT-22Apr05"
1067 VolSessionTime=1114075126
1075 J'essaye de restaurer depuis la derni\`ere sauvegarde compl\`ete en
1076 s\'electionnant le choix 3 dans le menu de restauration, puis le
1077 JobId \`a restaurer. Bacula affiche alors :
1084 et ne restaure rien.
1086 Les enregistrements de fichiers ont tr\`es probablement \'et\'e \'elagu\'es du catalogue
1087 soit par expiration de leur p\'eriode de r\'etention (File Retention), soit par purge
1088 explicite du job. La commande {\it llist jobid=nn} permet d'obtenir toutes les
1089 informations importantes sur ce job :
1094 Job: save.2005-12-05_18.27.33
1102 SchedTime: 2005-12-05 18:27:32
1103 StartTime: 2005-12-05 18:27:35
1104 EndTime: 2005-12-05 18:27:37
1105 JobTDate: 1133803657
1107 VolSessionTime: 1133803624
1114 FileSet.FileSet: BackupSet
1117 Vous pouvez alors d\'eterminer le(s) volume(s) avec :
1121 select VolumeName from JobMedia,Media where JobId=1 and JobMedia.MediaId=Media.MediaId;
1124 Finalement, vous pouvez cr\'eer un fichier bootstrap iavec ces informations
1125 comme d\'ecrit plus haut.
1127 A partir de la version 1.38.0, lorsque vous entrez un jobId apr\`es avoir
1128 fait le choix 3, Bacula v ous demande si vous voulez restaurer tous les
1129 fichiers du job, collecte pour vous les informations requises et \'ecrit le
1133 Vous n'avez ni fichier bootstrap, ni rapport de job pour votre sauvegarde
1134 de catalogue, mais vous avez une sauvegarde et vous savez sur quel volume.
1137 Utilisez {\bf bls} pour d\'eterminer o\`u se trouve le fichier requis sur la bande.
1142 ./bls -j -V DLT-22Apr05 /dev/nst0
1145 pourrait produire ceci :
1148 bls: butil.c:258 Using device: "/dev/nst0" for reading.
1149 21-Jul 18:34 bls: Ready to read from volume "DLT-22Apr05" on device "DLTDrive"
1151 Volume Record: File:blk=0:0 SessId=11 SessTime=1114075126 JobId=0 DataLen=164
1153 Begin Job Session Record: File:blk=118:0 SessId=11 SessTime=1114075126
1155 Job=CatalogBackup.2005-04-22_01.10.0 Date=22-Apr-2005 10:21:00 Level=F Type=B
1156 End Job Session Record: File:blk=118:4053 SessId=11 SessTime=1114075126
1158 Date=22-Apr-2005 10:23:06 Level=F Type=B Files=1 Bytes=210,739,395 Errors=0
1161 21-Jul 18:34 bls: End of Volume at file 201 on device "DLTDrive" (/dev/nst0),
1162 Volume "DLT-22Apr05"
1163 21-Jul 18:34 bls: End of all volumes.
1166 Bien sur, il y aura de nombreuses autres informations affich\'ees, nous n'avons
1167 reproduit ici que les essentielles. D'apr\`es les informations sur le d\'ebut
1168 ({\it Begin job Session Record} et sur la fin {\it End Job Session Record} du
1169 job, vous pouvez \'ecrire un fichier bootstrap comme indiqu\'e plus haut.
1172 Comment puis-je d\'eterminer o\`u un fichier est stock\'e ?
1174 En principe, ce n'est pas n\'ecessaire. La commande {\bf restore} permet de
1175 restaurer la version de la sauvegarde la plus r\'ecente (option 5 du menu),
1176 ou une version sauvegard\'ee avant une date donn\'ee (option 8 du menu). Si vous
1177 connaissez le JobId du job qui l'a sauvegard\'e, vous pouvez utiliser l'option 3
1178 pour entrer ce JobId.
1180 Pour rechercher le JobId d'une sauvegarde d'un fichier donn\'e, choisissez
1183 Vous pouvez aussi utiliser la commande {\bf query} pour trouver l'information :
1190 2: List up to 20 places where a File is saved regardless of the directory:
1191 3: List where the most recent copies of a file are saved:
1192 4: List last 20 Full Backups for a Client:
1193 5: List all backups for a Client after a specified time
1194 6: List all backups for a Client
1195 7: List Volume Attributes for a selected Volume:
1196 8: List Volumes used by selected JobId:
1197 9: List Volumes to Restore All Files:
1198 10: List Pool Attributes for a selected Pool:
1199 11: List total files/bytes by Job:
1200 12: List total files/bytes by Volume:
1201 13: List Files for a selected JobId:
1202 14: List Jobs stored in a selected MediaId:
1203 15: List Jobs stored for a given Volume name:
1204 Choose a query (1-15):