4 \section*{L'\'etat actuel de Bacula}
6 \index[general]{L'\'etat actuel de Bacula }
7 \index[general]{Bacula!L'\'etat actuel de }
8 \addcontentsline{toc}{section}{L'\'etat actuel de Bacula}
10 En d'autres termes, ce qui est et ce qui n'est pas actuellement impl\'ement\'e
13 \subsection*{Ce qui est impl\'ement\'e}
14 \index[general]{Ce qui est impl\'ement\'e }
15 \addcontentsline{toc}{subsection}{Ce qui est impl\'ement\'e}
20 \item Sauvegarde/restauration par le r\'eseau avec un Director centralis\'e.
21 \item Scheduler interne pour le lancement automatique des
23 \item Programmation de plusieurs Jobs \`a la m\^eme heure.
24 \item Execution simultan\'ee d'un Job ou plusieurs Jobs.
25 \item S\'equencement des Jobs selon une hi\'erarchie de priorit\'es.
26 \item \ilink{Console}{UADef} d'interfaçage avec le Director permettant un contrôle
27 total. La console est disponible en version shell ou en mode graphique GNOME et wxWidget.
28 Notez que pour l'instant, la version GNOME n'offre que très peu de fonctionnalités
29 supplémentaires par rapport à la console shell.
34 \item Verification des fichiers précédemment référencés offreant des possibilités à la Tripwire
35 (Vérification de l'intégrité du système).
36 \item Authentification par échange de mots de passe CRAM-MD5 entre chaque composant ({\it daemon}).
37 \item \ilink{Chiffrement TLS (ssl)}{_ChapterStart61} entre chaque composant.
38 \item Calcul de signatures MD5 ou SHA1 des fichiers sauvegardés sur demande.
42 \item Fonctionnalités liées aux restaurations
44 \item Restauration d'un ou plusieurs fichiers s\'electionn\'es interactivement
45 parmi les fichiers de la derni\`ere sauvegarde ou ceux d'une sauvegarde
46 ant\'erieure \`a une date et heure donn\'ees.
47 \item Restauration d'un syst\`eme complet "depuis le m\'etal brut".
48 Cette op\'eration est largement automatis\'ee pour les syst\`emes Linux et
49 partiellement pour les Solaris. Consultez le
50 \ilink{Plan de Reprise d'activit\'e avec Bacula}{_ChapterStart38}.
51 Selon certains utilisateurs, la restauration "depuis le m\'etal brut"
52 fonctionne aussi pour les syst\`emes Win2K/XP.
53 \item Listage et restauration des fichiers avec les outils autonomes {\bf
54 bextract}. Entre autres choses, ceci permet l'extraction de fichiers quand
55 Bacula et/ou le catalogue ne sont pas disponibles. Notez : La m\'ethode
56 recommand\'ee pour restaurer des fichiers est d'utiliser la commande restore
57 dans la Console. Ces programmes sont con{\c c}us pour une utilisation en
59 \item Possibilit\'e de r\'eg\'en\'erer le catalogue par balayage des volumes
60 de sauvegarde gr\^ace au programme {\bf bscan}.
65 \item Fonctions de base de donn\'ees (catalogue) pour les informations
66 concernant les volumes, pools, jobs et fichiers sauvegard\'es.
67 \item Support pour des catalogues de type SQLite, PostgreSQL, et MySQL.
68 \item Requ\^etes utilisateur arbitraires sur les bases de donn\'ees SQLite,
72 \item Gestion avancée des pools et volume
74 \item Marquage (label) des Volumes pour pr\'evenir tout \'ecrasement
75 accidentel (au moins par Bacula).
76 \item Un nombre quelconque de Jobs et Clients peuvent \^etre sauvegard\'es sur
77 un Volume unique. Cela signifie que vous pouvez sauvegarder et restaurer des
78 machines Linux, Unix, Sun, et Windows sur le m\^eme volume.
79 \item Sauvegardes multi-volumes. Lorsqu'un Volume est plein, {\bf Bacula}
80 r\'eclame automatiquement le volume suivant et poursuit la sauvegarde.
81 \item Gestion de librairie par
82 \ilink{Pools et Volumes}{PoolResource} offrant beaucoup de
83 flexibilit\'e dans la gestion des volumes (par exemple, groupes de volumes mensuels,
84 hebdomadaires, quotidiens ou diff\'erenci\'es par client,...).
85 \item Format d'\'ecriture de donn\'ees sur les volumes ind\'ependant des
86 machines. Les clients Linux, Solaris, et Windows peuvent tous \^etre
87 sauvegard\'es sur le m\^eme volume si d\'esir\'e.
88 \item Prise en charge flexible des
89 \ilink{ messages}{MessageResource} incluant le routage des
90 messages depuis n'importe quel {\it daemon} vers le Director pour un
91 reporting automatique par e-mail.
92 \item Possibilit\'e de mettre les donn\'ees sur un tampon disque (data
93 spooling) lors des sauvegardes avec écriture sur cartouche
94 asynchrone. Ceci prévient les arrèts et redémarrage (NDT : "shoe shine") des lecteurs,
95 surtout lors des incrémentales et différentielles.
98 \item Support avancé pour la plupart des périphériques de stockage
100 \item Support pour les librairies de sauvegarde via une simple interface shell
101 capable de s'interfacer avec pratiquement n'importe quel programme
103 \item Support pour les librairies \'equip\'ees de lecteurs de codes barres --
104 marquage (labeling) automatique selon les codes barres.
105 \item Support pour les librairies \`a magasins multiples, soit par
106 l'utilisation des codes barres, soit par lecture des cartouches.
107 \item Support pour les librairies avec plusieurs lecteurs.
108 \item Sauvegardes/restaurations "Raw device". Les restaurations doivent
109 alors s'effectuer vers le m\^eme support physique que la sauvegarde.
110 \item Tous les blocs de donn\'ees des volumes (approx 64K bytes) contiennent
111 une somme de contr\^ole.
114 \item Support pour de nonbreux systèmes d'exploitation
116 \item Programm\'e pour prendre en charge des noms de fichiers et messages
117 arbitrairement longs.
118 \item Compression GZIP fichier par fichier effectu\'ee, si activ\'ee, par le
119 programme Client avant le transfert sur le r\'eseau.
120 \item Sauvegarde et restaure les POSIX ACLs.
121 \item Liste d'acc\`es \`a la console qui permet de restreindre l'acc\`es des
122 utilisateurs \`a leurs donn\'ees seulement.
123 \item Support pour sauvegarde et restauration de fichiers de plus de 2GB.
124 \item Support pour les machines 64 bit, e.g. amd64.
125 \item Possibilit\'e de chiffrer les communications entre les {\it daemons} en
127 \item Support des étiquettes (labels) de cartouches ANSI et IBM.
128 \item Support des noms de fichiers Unicode (exemple : chinois) sur les machines Win32
129 depuis la version 1.37.28.
130 \item Sauvegarde cohérente des fichiers ouverts sur les systèmes Win32 (WinXP, Win2003
131 mais pas Win2000), par l'utilisation de Volume Shadow Copy (VSS).
136 \item Impl\'ementation multi-thread.
137 \item Un \ilink{fichier de configuration}{_ChapterStart40} compréhensible et
138 extensible pour chaque {\it daemon}.
142 \subsection*{Avantages de Bacula sur d'autres programmes de sauvegarde}
143 \index[general]{Avantages de Bacula sur d'autres programmes de sauvegarde }
144 \index[general]{Sauvegarde!Avantages de Bacula sur d'autres programmes de }
145 \addcontentsline{toc}{subsection}{Avantages de Bacula sur d'autres programmes
149 \item Du fait qu'il y a un client pour chaque machine, vous pouvez
150 sauvegarder et restaurer des clients de tous types avec l'assurance que tous
151 les attributs de fichiers sont convenablement sauvegard\'es et restaur\'es.
152 \item Il est aussi possible de sauvegarder des clients sans aucun logiciel
153 client en utilisant NFS ou Samba. Cependant, nous recommandons d'ex\'ecuter,
154 si possible, un File Daemon client sur chaque machine \`a sauvegarder.
155 \item Bacula prend en charge les sauvegardes multi-volumes.
156 \item Une base de donn\'ees compl\`ete aux standards SQL de tous les fichiers
157 sauvegard\'es. Ceci permet une vue en ligne des fichiers sauvegard\'es sur
158 n'importe quel volume.
159 \item Elagage automatique du catalogue (destruction des anciens
160 enregistrements), ce qui simplifie l'administration de la base de donn\'ees.
161 \item N'importe quel moteur de base de donn\'ees SQL peut \^etre utilis\'e, ce
162 qui rend Bacula tr\`es flexible.
163 \item La conception modulaire, mais int\'egr\'ee rend Bacula tr\`es
165 \item Puisque Bacula utilise des {\it daemons} fichier clients, toute base de
166 donn\'ees, toute application peut \^etre arr\'et\'ee proprement, puis
167 red\'emarr\'ee par Bacula avec les outils natifs du syst\`eme sauvegard\'e
168 (le tout dans un Job Bacula).
169 \item Bacula int\`egre un Job Scheduler.
170 \item Le format des volumes est document\'e et il existe de simples programmes C
171 pour le lire/\'ecrire.
172 \item Bacula utilise des ports TCP/IP bien d\'efinis (enregistr\'es) -- pas de
173 rpcs, pas de m\'emoire partag\'ee.
174 \item L'installation et la configuration de Bacula est relativement simple
175 compar\'ee \`a d'autres produits comparables.
176 \item Selon un utilisateur, Bacula est aussi rapide que la grande application
178 \item Selon un autre utilisateur, Bacula est quatre fois plus rapide qu'une
179 autre application commerciale, probablement parce que cette application
180 stocke ses informations de catalogue dans un grand nombre de fichiers
181 plut\^ot que dans une base SQL comme le fait Bacula.
182 \item Au lieu d'une interface d'administration graphique, Bacula possède une
183 interface shell qui permet à l'administrateur d'utiliser des outils tels que
184 ssh pour administrer n'importe quelle partie de Bacula depuis n'importe où.
185 \item Bacula dispose d'un CD de secours pour les systèmes Linux dotés des
186 fonctionnalités suivantes :
188 \item Vous le générez sur votre propre système d'un simple make suivi de make burn.
189 \item Il utilise votre noyau.
190 \item Il capture vos paramètres de disques et génère les scripts qui vous permettront
191 de repartitionner automatiquement vos disques et de les formater pour y remettre
192 ce qui s'y trouvait avant le désastre.
193 \item Il comporte un script qui redémarrera votre réseau (avec l'adresse IP correcte).
194 \item Il comporte un script qui monte automatiquement vos disques durs.
195 \item Il comporte un Bacula FD complet statiquement lié.
196 \item Vous pouvez aisément y ajouter des données ou programmes additionnels.
199 \subsection*{Restrictions de l'impl\'ementation actuelle}
200 \index[general]{Restrictions de l'impl\'ementation actuelle }
201 \index[general]{Actuelle!Restrictions de l'impl\'ementation }
202 \addcontentsline{toc}{subsection}{Restrictions de l'impl\'ementation actuelle}
205 \item Les chemins et noms de fichiers de longueur supérieure à 260 caractères
206 sur les systèmes Win32 ne sont pas supportés. Il sont sauvegardés mais
207 ne peuvent être restaurés. L'utilisation de la directive {\bf Portable=yes}
208 dans votre FileSet permet de restaurer ces fichiers vers les systèmes
209 Unix et Linux. Les noms de fichiers longs seront implémentés dans la
211 \item Si vous avez plus de 4 billions de fichiers enregistr\'es dans votre
212 catalogue, la base de donn\'ees FileId atteindra probablement ses limites.
213 Ceci est une base de donn\'ees monstrueuse mais possible. A un certain stade,
214 les champs FileId de Bacula passeront de 32 bits \`a 64 et ce probl\`eme
215 dispara{\^\i}tra. En attendant, un palliatif satisfaisant consiste \`a
216 utiliser plusieurs bases de donn\'ees
217 \item Les fichiers supprim\'es apr\`es une sauvegarde full sont inclus dans
219 \item Les sauvegardes différentielles et incrémentales de Bacula se basent sur
220 les time stamps. Par conséquent, si vous déplacez des fichiers d'un répertoire
221 existant ou un répertoire complet appartenant à un FileSet après une Full,
222 ces fichiers ne seront probablement pas sauvegardés par une incrémentale,
223 car ils seront encore marqués des anciennes dates. Vous devez explicitement
224 mettre à jour ces dates sur tous les fichiers déplacés. La correction de ce
225 défaut est en projet.
226 \item Les Modules Système de Fichiers (routines configurables pour
227 sauvegarder/restaurer les fichiers spéciaux) ne sont pas encore implémentés.
228 \item Le chiffrement des données sur les volumes sera implémenté dans la version 1.40.
229 \item Bacula ne peut restaurer automatiquement les fichiers d'un job depuis
230 deux ou plusieurs périphériques de stockage différents. Si vous
231 un même job utilise plusieurs périphériques ou plusieurs types de
232 média distincts, le processus de restauration nécessitera certaines
233 interventions manuelles.
234 \item Bacula ne supporte pas les volumes disque amovibles pour l'instant.
235 Des utilisateurs déclarent être parvenu à faire fonctionner Bacula
236 ainsi, mais cela nécessite de prendre garde de monter le bon volume, de
237 plus, les restaurations disséminées sur plusieurs volumes risquent
238 fort de ne pas fonctionner. Cette fonctionnalité est prévue pour la version
242 \subsection*{Limitations ou Restrictions inh\'erentes \`a la conception}
243 \index[general]{Limitations ou Restrictions inh\'erentes \`a la conception }
244 \index[general]{Conception!Limitations ou Restrictions inh\'erentes \`a la }
245 \addcontentsline{toc}{subsection}{Limitations ou Restrictions inh\'erentes \`a
249 \item Les noms (tels que resource names, Volume names, ...) d\'efinis dans les
250 fichiers de configuration de Bacula sont limit\'es \`a un nombre fix\'e de
251 caract\`eres. Actuellement, la limite est d\'efinie \`a 127 caract\`eres.
252 Notez que ceci ne concerne pas les noms de fichiers qui peuvent \^etre
253 arbitrairement longs.
254 \item Sur les machines Win32, les noms de fichiers sont limités à 260 caractères
255 par l'API non-Unicode Windows que nous utilisons. A partir de la version 1.39,
256 nous avons basculé sur l'API Unicode et cette limitation n'existe plus.