]> git.sur5r.net Git - bacula/docs/blob - docs/manual-de/state.tex
Update
[bacula/docs] / docs / manual-de / state.tex
1 %%
2 %%
3
4 \chapter{Baculas Stand}
5 \label{_ChapterStart2}
6 \index[general]{Baculas momentaner Stand }
7
8 (was gegenw\"{a}rtig implementiert und funktionsf\"{a}hig ist und was nicht)
9
10 \section{Was implementiert ist}
11 \index[general]{implementiert!Was ist }
12 \index[general]{Was implementiert ist }
13
14 \begin{itemize}
15 \item Sicherung/Wiederherstellung im Netzwerkes unter der Regie eines
16 zentralen \textbf{Director}-Prozess. 
17
18 \item automatische Ausf\"{u}hrung von 
19    \ilink{Job}{JobDef}s nach einem festgelegten Zeitplan.
20    
21 \item Terminplanung f\"{u}r mehrere Jobs zur gleichen Zeit.
22
23 \item die M\"{o}glichkeit einen oder mehrere Jobs zur gleichen Zeit auszuf\"{u}hren. 
24
25 \item zeitliche Staffelung der Jobs entsprechend ihrer Priorit\"{a}t. 
26
27 \item die Wiederherstellung einer oder mehrerer Dateien, die interaktiv
28 aus der letzten Sicherung oder einer Sicherung vor einem festgelegten
29 Zeitpunkt ausgew\"{a}hlt werden k\"{o}nnen.  
30
31 \item die Wiederherstellung aller Dateien eines Systems auf einer
32 leeren Festplatte. Dieser Vorgang kann bei Linux- und Solaris-Systemen (mit
33 Einschr\"{a}nkungen) gr\"{o}{\ss}tenteils automatisch ablaufen. N\"{a}heres hierzu im Kapitel
34 \ilink{``Disaster Recovery Using Bacula''}{_ChapterStart38}. Benutzer
35 berichten, dass dies auch mit Win2K/XP-Systemen funktioniert.  
36
37 \item die Ermittlung und Wiederherstellung von Dateien mittels eigenst\"{a}ndiger
38 Hilfsprogramme wie {\bf bls} und {\bf bextract}. Unter anderem ist es damit
39 m\"{o}glich, Dateien wiederherzustellen, wenn Bacula und/oder die
40 \textbf{Catalog}-Datenbank nicht verf\"{u}gbar ist/sind. Beachten Sie aber, dass wir
41 hierf\"{u}r den ``restore''-Befehl an der \textbf{Console} empfehlen und diese
42 Hilfsprogramme nur f\"{u}r den Notfall vorgesehen sind. 
43
44 \item die M\"{o}glichkeit, die \textbf{Catalog}-Datenbank durch Auslesen
45 der \textbf{Volumes} mit dem Hilfsprogramm {\bf bscan} wieder herzustellen.
46
47 \item eine \ilink{Konsolen}{UADef}-Schnittstelle zum \textbf{Director}, \"{u}ber die
48 dieser vollkommen gesteuert werden kann. Die \textbf{Console} ist als
49 Shell-Programm, GNOME-GUI und wxWidgets-GUI verf\"{u}gbar. Beachten Sie bitte, dass
50 das  GNOME-GUI gegen\"{u}ber dem Shell-Programm zur Zeit nur sehr wenige zus\"{a}tzliche
51 Funktionen aufweist.
52
53 \item die Verifikation der Dateien, die zuvor in das
54 \textbf{Catalog}-Verzeichnis aufgenommen wurden, erlaubt eine Funktionalit\"{a}t
55 wie sie das Programm ``Tripwire'' hat (Intrusion Detection).  
56
57 \item die Authentifizierung der Komponenten (D\"{a}monen) untereinander
58 durch CRAM-MD5 Passw\"{o}rter.
59
60 \item eine konfigurierbare \ilink{TLS (ssl)-Verschl\"{u}sselung }{_ChapterStart61}
61 zwischen den einzelnen Komponenten.
62
63 \item leicht verst\"{a}ndliche und erweiterbare  
64 \ilink{Konfigurationsdateien}{_ChapterStart40} f\"{u}r jeden einzelnen
65 D\"{a}monprozess. 
66
67 \item eine \textbf{Catalog}-Datenbank zur Aufzeichnung der \textbf{Volumes},
68 \textbf{Pools}, \textbf{Jobs} und der Informationen \"{u}ber die gesicherten
69 Dateien.
70
71 \item Unterst\"{u}tzung von \textbf{SQLite}, \textbf{PostgreSQL} und
72 \textbf{MySQL} \textbf{Catalog}-Datenbanksystemen. 
73
74 \item vom Benutzer erweiterbare Datenbankabfragen an \textbf{SQLite}-,
75 \textbf{PostgreSQL} und \textbf{MySQL}-Datenbanksysteme. 
76
77 \item gekennzeichnete \textbf{Volumes}, die ein versehentliches
78 Überschreiben (zumindest durch Bacula) verhindern.  
79
80 \item eine beliebige Anzahl verschiedener \textbf{Jobs} und
81 \textbf{Clients} kann auf ein einzelnes \textbf{Volume} gesichert werden. Dies
82 bedeutet, dass von Linux-, Unix-, Sun- und Windows-Rechnern auf das gleiche
83 \textbf{Volume} gesichert werden kann. Das gleiche gilt f\"{u}r die
84 Wiederherstellung. 
85
86 \item eine Sicherung kann sich \"{u}ber mehrere \textbf{Volumes} erstrecken. Sobald ein
87 \textbf{Volume} voll ist, fordert {\bf Bacula} automatisch das n\"{a}chste
88 \textbf{Volume} an und setzt die Sicherung fort. 
89  
90 \item die Verwaltung von \ilink{\textbf{Pools}
91 und \textbf{Volumes}}{PoolResource} erlaubt einen anpassungsf\"{a}higen Umgang mit
92 \textbf{Volumes} (z.B. Gruppen von \textbf{Volumes} f\"{u}r die monatliche,
93 w\"{o}chentliche, t\"{a}gliche Sicherung, Gruppen von \textbf{Volumes} f\"{u}r bestimmte
94 \textbf{Clients}...). 
95
96 \item das Datenformat der \textbf{Volumes} ist systemunabh\"{a}ngig. Bei Bedarf
97 k\"{o}nnen die Daten von Linux-, Solaris- und Windows-Clients in
98 dasselbe \textbf{Volumen} gespeichert werden.
99
100 \item ein konfigurierbares \ilink{Messages}-Handling.
101 Dazu geh\"{o}rt der Versand von Botschaften aller D\"{a}mon-Prozesse an den \textbf{Director}
102 und die automatische Benachrichtigung des Benutzers \"{u}ber das Mailsystem.
103
104 \item Implementierung der Prozesse als Multithread-Programme. 
105
106 \item Programmtechnisch keine Begrenzung der L\"{a}nge der Dateinamen oder
107 der Botschaften. 
108
109 \item GZIP-Komprimierung f\"{u}r jede einzelne Datei, die schon der Client
110 erledigt, sofern dies vor einer Übertragung im Netzwerk angefordert wird.
111
112 \item bei Bedarf die Berechnung von MD5 oder SHA1 Signaturen der
113 Dateidaten.
114
115 \item POSIX ACLs werden - wenn aktiviert -  unter den meisten Betriebssystemen gesichert und wiederhergestellt.
116  
117 \item die Unterst\"{u}tzung von Autochangern \"{u}ber ein einfache Shell-Schnittstelle.
118 Damit ist es m\"{o}glich, praktisch mit jedem Autoloader-Programm zu kommunizieren.
119 Ein Skript f\"{u}r {\bf mtx} ist bereitgestellt. 
120
121 \item unterst\"{u}tzt Autochanger-Barcodes -- entsprechend der Barcodes
122 wird das Band gekennzeichnet.
123
124 \item automatische Unterst\"{u}tzung mehrerer Autochanger-Magazine. Hierbei wird entweder der Barcode oder das Band gelesen.
125
126 \item Unterst\"{u}tzung von Autochangern mit mehreren Laufwerken
127
128 \item Sicherung/Wiederherstellung als raw-Backup. Hierbei mu{\ss} die Wiederherstellung auf den gleichen Datentr\"{a}ger erfolgen.
129
130 \item jeder Datenblock (etwa 64KByte) der \textbf{Volumes} enth\"{a}lt die
131 Pr\"{u}fsumme der Daten.
132
133 \item Zugangskontrolllisten f\"{u}r \textbf{Consolen}, die dem Benutzer einen Zugang nur zu den eigenen Daten erlauben.  
134
135 \item Zwischenspeicherung der zu sichernden Daten auf der Festplatte und
136 fortlaufende Beschreibung des Bandes mit den zwischengespeicherten Daten 
137 verhindert den ``Schoe-Shine-Effekt'' bei einer inkrementiellen oder
138 differentiellen Sicherung.
139
140 \item Sicherung/Wiederherstellung von Dateien, die gr\"{o}{\ss}er sind als 2GB.
141
142 \item Unterst\"{u}tzung von 64Bit-Systemen wie z.B. AMD64.
143
144 \item es ist m\"{o}glich, die Kommunikation der D\"{a}monen untereinander durch
145 STunnel zu verschl\"{u}sseln.
146  
147 \item Unterst\"{u}tzung von ANSI- und IBM Band-Labels.
148
149 \item Unterst\"{u}tzung von Unicode-Dateinamen (z.B. Chinesisch) auf Win32-Rechnern mit der Version 1.37.28 und h\"{o}her.
150
151 \item konsistente Sicherung von ge\"{o}ffneten Dateien von Win32-Systemen (WinXP, Win2003, nicht Win2000) durch Verwendung von Volume Shadow Copy (VSS).
152
153 \end{itemize}
154
155 \section{Die Vorteile von Bacula gegen\"{u}ber anderen Sicherungsprogrammen}
156 \index[general]{Die Vorteile von Bacula gegen\"{u}ber anderen Sicherungsprogrammen}
157 \index[general]{Sicherungsprogrammen!Die Vorteile von Bacula gegen\"{u}ber anderen}
158
159 \begin{itemize}
160 \item da f\"{u}r jeden Rechner ein eigener Client existiert, k\"{o}nnen die Daten von Betriebssystemen aller Art gesichert und wiederhergestellt werden, wobei immer gew\"{a}hrleistet ist,
161 dass ihre Dateiattribute korrekt gesichert und wiederhergestellt werden.
162
163 \item Man kann auch Clients sichern ohne eine Client-Software zu benutzen und
164 verwendet hierzu NFS oder Samba. Wir empfehlen jedoch, sofern m\"{o}glich, auf jedem
165 Rechner, von dem Daten gesichert werden sollen, einen eigenen File-D\"{a}mon laufen zu
166 haben.
167
168 \item Bacula kann mit Sicherungen umgehen, die auf mehrere Volumes verteilt
169 sind.
170
171 \item eine umfassende SQL-Datenbank aller gesicherter Dateien erm\"{o}glicht den Überblick \"{u}ber alle gespeicherte Dateien in jedem einzelnen Volume.
172
173 \item automatische Bereinigung der Datenbank (die Entfernung alter Aufzeichnungen) und dadurch eine Vereinfachung der Datenbankadministration.
174
175 \item durch die Verwendung beliebiger SQL-Datenbanksysteme ist Bacula sehr anpassungsf\"{a}hig.
176
177 \item durch den modularen, dabei aber einheitlichen Entwurf ist Bacula in hohem Ma{\ss}e skalierbar.
178   
179 \item da Bacula D\"{a}monen auf den Client-Rechnern benutzt, ist es m\"{o}glich, dort laufende Datenbank- oder sonstige Anwendungen mit systemeigenen Befehlen zu beenden und nach einer Sicherung die entsprechenden Anwendungen wieder zu starten. Dies alles kann aus einem einzigen Bacula-Job heraus geschehen.
180
181 \item Bacula hat ein eingebautes Steuerungsprogramm f\"{u}r die Sicherungsjobs.
182
183 \item Das Format der \textbf{Volumes} ist dokumentiert und es gibt einfache C-Programme mit denen sie gelesen und beschrieben werden k\"{o}nnen
184
185 \item Bacula benutzt eindeutige (bei der IANA registrierte) TCP/IP-Ports -- also weder RPCs noch Shared Memory.
186
187 \item Baculas Installation und Konfiguration ist gegen\"{u}ber anderen vergleichbaren Produkten relativ einfach.  
188
189 \item laut einem unserer Benutzer ist Bacula genau so schnell wie die wichtigen gro{\ss}en kommerziellen Programme.
190
191 \item laut einem anderen Benutzer ist Bacula vier mal so schnell wie eine andere kommerzielle Anwendung. Das vielleicht deswegen, weil diese Anwendung ihre Verzeichnisinformationen in vielen einzelnen Dateien anstatt in einer SQL-Datenbank speichert, wie Bacula es tut.  
192
193 \item neben der grafischen Benutzeroberfl\"{a}che zur Verwaltung hat Bacula eine umfassende Shell-Schnittstelle f\"{u}r die Wartungsaufgaben, wobei der Administrator Werkzeuge wie z.B. ``ssh'' verwenden kann, um jeden Teil von Bacula von \"{u}berall (sogar von Zuhause) zu administrieren.
194
195 \item Bacula hat eine Rettungs-CD f\"{u}r Linux-Systeme mit den folgenden Eigenschaften:  
196    \begin{itemize}
197    \item Sie kompilieren sie von Grund auf auf ihrem eigenen System mit einem einzigen einfachen Befehl:
198       ``make'' (...OK, Sie brauchen dann noch ``make burn''...). 
199    \item die Rettungs-CD verwendet Ihren Kernel
200    \item sie schreibt Skripte entsprechend der Parameter Ihrer Festplatte mit denen Sie diese automatisch
201         repartitionieren und formatieren k\"{o}nnen, um den Ausgangszustand wieder herzustellen.
202    
203    \item sie hat ein Skript, das Ihr Netzwerk wieder starten wird (mit der korrekten IP-Adresse)  
204    
205    \item sie hat ein Skript, mit dem Ihre Festplatten automatisch gemountet werden.
206       
207    \item eine vollwertiger Bacula-FD ist statisch eingebunden  
208    
209    \item sie k\"{o}nnen der Rettungs-CD auf einfache Weise zus\"{a}tzliche Daten und Programme hinzuf\"{u}gen.  
210    \end{itemize}
211
212 \end{itemize}
213
214 \section{Einschr\"{a}nkungen der aktuellen Implementierung}
215 \index[general]{Einschr\"{a}nkungen der aktuellen Implementierung }
216 \index[general]{aktuelle Implementierung! Einschr\"{a}nkungen der}
217
218 \begin{itemize}
219 \item Pfade und Dateinamen mit mehr als 260 Zeichen werden auf Win32-Systemen nicht unterst\"{u}tzt. Diese werden zwar gesichert, k\"{o}nnen aber nicht wiederhergestellt werden. Durch Verwendung der Direktive {\bf Portable=yes} in Ihrem FileSet k\"{o}nnen Dateien mit langen Namen auf Unix- bzw. Linux-Systemen wiederhergestellt werden.
220 Lange Dateinamen f\"{u}r Win32-Systeme werden in einer sp\"{a}teren Version implementiert sein.
221
222 \item Sollten Sie mehr als 4 Milliarden Dateieintr\"{a}ge in Ihrer Datenbank gespeichert haben, wird der FileID der Datenbank vermutlich \"{u}berlaufen. Dies w\"{a}re eine ziemlich gro{\ss}e Datenbank, aber immerhin ist sie denkbar. Irgendwann einmal wird das Feld f\"{u}r den FileID von Bacula von 32 auf 64 Bit erweitert werden und das Problem ist gel\"{o}st. In der  Zwischenzeit ist die Verwendung mehrerer Datenbanken eine gute L\"{o}sung.
223   
224 \item Dateien, die nach einer Vollsicherung gel\"{o}scht wurden, werden bei einer Wiederherstellung eingeschlossen.
225
226 \item Datei-System-Module fehlen(dies w\"{a}ren konfigurierbare Routinen, um spezielle Dateien zu sichern/wiederherzustellen).  
227
228 \item Verschl\"{u}sselung des Dateninhalts der \textbf{Volumes}.  
229
230 \item Bacula kann die Dateien eines einzelnen Jobs nicht von zwei oder mehreren Speicherger\"{a}ten oder verschiedenen Speichermedien wiederherstellen. Daher wird eine Wiederherstellung einige Handarbeit erfordern, wenn sie auf mehr als ein Sicherungsger\"{a}t oder verschiedene Medientypen speichern.
231
232    \end{itemize}
233
234 \section{Grenzen und Beschr\"{a}nkungen des Software Design}
235 \index[general]{Restrictions!Design Limitations or }
236 \index[general]{Design Limitations or Restrictions }
237
238 \begin{itemize}
239 \item Namen (\textbf{Resource}-Namen, \textbf{Volume}-Names und \"{a}hnliche) in Baculas Konfigurationsdateien sind auf eine bestimmte L\"{a}nge beschr\"{a}nkt . Momentan liegt die Grenze bei 127 Zeichen. Beachten Sie bitte, dass diese Einschr\"{a}nkungen nicht die Dateinamen betrifft, die beliebig lang sein k\"{o}nnen.
240
241 \item Durch die Nicht-Unicode Windows API, die wir auf Win32-Maschinen verwenden, sind wir bei Dateinamen auf 260 Zeichen beschr\"{a}nkt. Wir planen dies in einer zuk\"{u}nftigen Version zu korrigieren, indem wir die Unicode-API verwenden.
242
243 \end{itemize}