]> git.sur5r.net Git - bacula/docs/blob - docs/manuals/de/old/concepts/state.tex
Add more print info to send
[bacula/docs] / docs / manuals / de / old / concepts / state.tex
1 %%
2 %%
3
4 \chapter{Baculas Stand}
5 \label{StateChapter}
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 Job-Steuerung
16    \begin{itemize}
17    \item Sicherung/Wiederherstellung im Netzwerkes unter der Regie eines
18       zentralen Director-Prozess. 
19    \item automatische Ausf\"{u}hrung von 
20    \ilink{Job}{JobDef}s nach einem festgelegten Zeitplan.
21    \item Terminplanung f\"{u}r mehrere Jobs zur gleichen Zeit.
22    \item die M\"{o}glichkeit einen oder mehrere Jobs zur gleichen Zeit auszuf\"{u}hren. 
23    \item zeitliche Staffelung der Jobs entsprechend ihrer Priorit\"{a}t. 
24    \item \ilink{Console}{UADef} Programm als Benutzer-Schnittstelle zum Director-Dienst.
25       Eine shell-, Qt4-GUI-, GNOME-GUI und wxWidgets-Version sind derzeit verf\"{u}gbar.
26       Die Qt4-Version der Console, Bacula Administration Tool, kurz bat genannt, bietet
27       viele zus\"{a}tzliche Funktionen gegen\"{u}ber der shell-Version.
28    \end{itemize}
29
30 \item Sicherheit
31    \begin{itemize}
32    \item die Verifikation der Dateien, die zuvor in das
33       Catalog-Verzeichnis aufgenommen wurden, erlaubt eine
34       Funktionalit\"{a}t wie sie das Programm Tripwire hat (Intrusion
35       Detection).
36    \item die Authentifizierung der Komponenten (Dienste) untereinander
37       durch CRAM-MD5 Passw\"{o}rter.
38    \item eine konfigurierbare \ilink{TLS (ssl)-Verschl\"{u}sselung }{CommEncryption}
39       zwischen den einzelnen Komponenten.
40    \item bei Bedarf die Berechnung von MD5 oder SHA1 Signaturen der
41       Dateidaten.
42    \end{itemize}
43
44 \item Wiederherstellungs-Funktionen
45    \begin{itemize}
46    \item leicht verst\"{a}ndliche und erweiterbare  
47       \ilink{Konfigurationsdateien}{_ChapterStart40} f\"{u}r jeden einzelnen
48        D\"{a}monprozess. 
49    \end{itemize}
50
51 \item SQL-Datenbank
52    \begin{itemize}
53    \item eine Catalog-Datenbank zur Aufzeichnung der Volumes,
54       Pools, Jobs und der Informationen \"{u}ber die gesicherten
55       Dateien.
56    \item Unterst\"{u}tzung von SQLite, PostgreSQL und
57       MySQL als Catalog-Datenbanksystemen. 
58    \item vom Benutzer erweiterbare Datenbankabfragen an SQLite-,
59       PostgreSQL und MySQL-Datenbanksysteme. 
60    \end{itemize}
61
62 \item fortschrittliches Volume- und Pool-Management
63    \begin{itemize}
64    \item gekennzeichnete \textbf{Volumes}, die ein versehentliches
65       \"{u}berschreiben (zumindest durch Bacula) verhindern.  
66    \item eine beliebige Anzahl verschiedener Jobs und
67       Clients kann auf ein einzelnes Volume gesichert werden. Dies
68       bedeutet, dass von Linux-, Unix-, Sun- und Windows-Rechnern auf das gleiche
69       Volume gesichert werden kann. Das gleiche gilt f\"{u}r die
70       Wiederherstellung. 
71    \item eine Sicherung kann sich \"{u}ber mehrere Volumes erstrecken. Sobald ein
72       Volume voll ist, fordert Bacula automatisch das n\"{a}chste
73       Volume an und setzt die Sicherung fort. 
74    \item die Verwaltung von \ilink{Pools
75       und Volumes}{PoolResource} erlaubt einen
76       flexiblen Umgang mit Volumes (z.B. Gruppen von
77       Volumes f\"{u}r die monatliche, w\"{o}chentliche,
78       t\"{a}gliche Sicherung, Gruppen von Volumes f\"{u}r
79       bestimmte Clients).
80    \item das Datenformat der Volumes ist systemunabh\"{a}ngig. Bei Bedarf
81       k\"{o}nnen die Daten von Linux-, Solaris- und Windows-Clients in
82      dasselbe Volumen gespeichert werden.
83    \item jede Bacula-Version kann jedes, mit einer kleineren Version, erstellte Volume lesen.
84    \item ein konfigurierbares \ilink{Messages}{MessagesChapter}-Handling.
85       Dazu geh\"{o}rt der Versand von Botschaften aller D\"{a}mon-Prozesse
86       an den Director-Dienst und die automatische Benachrichtigung des
87       Benutzers \"{u}ber das Mailsystem.
88    \item Zwischenspeicherung der zu sichernden Daten auf der Festplatte (Spooling) und
89       fortlaufende Beschreibung des Bandes mit den zwischengespeicherten Daten 
90       verhindert den ``Schoe-Shine-Effekt'' bei einer inkrementellen oder
91       differentiellen Sicherung.
92    \end{itemize}
93
94 \item Unterst\"{u}tzung f\"{u}r fast alle Speicher-Ger\"{a}te
95     \begin{itemize}
96    \item die Unterst\"{u}tzung von Autochangern \"{u}ber ein einfache Shell-Schnittstelle.
97       Damit ist es m\"{o}glich, praktisch mit jedem Autoloader-Programm zu kommunizieren.
98       Ein Skript f\"{u}r {\bf mtx} ist bereitgestellt. 
99    \item unterst\"{u}tzt Autochanger-Barcodes -- entsprechend der Barcodes
100       wird das Band gekennzeichnet.
101    \item automatische Unterst\"{u}tzung mehrerer Autochanger-Magazine.
102       Hierbei wird entweder der Barcode oder das Band gelesen.
103    \item Unterst\"{u}tzung von Autochangern mit mehreren Laufwerken
104    \item Sicherung/Wiederherstellung als raw-Backup.  Hierbei mu{\ss} die
105       Wiederherstellung auf den gleichen Datentr\"{a}ger erfolgen.
106    \item jeder Datenblock (etwa 64KByte) der Volumes enth\"{a}lt die
107       Pr\"{u}fsumme der Daten.
108    \item Migration, die M\"{o}glichkeit gesicherte Daten von einem Pool oder Volume,
109    in einen anderen Pool oder auf ein anderes Volume zu verschieben.
110   \item schreibbare DVD k\"{o}nnen als Backup-Medium verwendet werden
111    \end{itemize}
112
113 \item Unterst\"{u}tzung verschiedener Bertiebssysteme
114    \begin{itemize} 
115    \item Programmtechnisch keine Begrenzung der L\"{a}nge der Dateinamen oder
116       der Nachrichten. Auf Win32 ist die L\"{a}nge der Dateinamen/Pfade auf 64k begrenzt.
117    \item GZIP-Komprimierung f\"{u}r jede einzelne Datei, die schon der Client
118       erledigt, sofern dies vor einer \"{U}bertragung im Netzwerk angefordert wird.
119    \item POSIX ACLs werden - wenn aktiviert -  unter den meisten Betriebssystemen gesichert und wiederhergestellt.
120    \item Zugangskontrolllisten f\"{u}r Consolen, die dem Benutzer einen Zugang nur zu den eigenen Daten erlauben.  
121    \item Sicherung/Wiederherstellung von Dateien, die gr\"{o}{\ss}er sind als 2GB.
122    \item Unterst\"{u}tzung von 64Bit-Systemen wie z.B. AMD64.
123    \item Unterst\"{u}tzung von ANSI- und IBM Band-Labels.
124    \item Unterst\"{u}tzung von Unicode-Dateinamen (z.B. Chinesisch) auf
125       Win32-Rechnern mit der Bacula-Version 1.37.28 und h\"{o}her.
126    \item konsistente Sicherung von ge\"{o}ffneten Dateien von Win32-Systemen
127      (WinXP, Win2003, nicht Win2000) durch Verwendung von Volume Shadow Copy
128      (VSS).
129    \end{itemize}
130
131
132 \item Verschiedenes
133    \begin{itemize}
134    \item Implementierung der Prozesse als Multithread-Programme. 
135    \item leicht verst\"{a}ndliche und erweiterbare
136    \ilink{Konfigurationsdateien}{DirectorChapter} f\"{u}r jeden einzelnen
137    D\"{a}monprozess.
138    \end{itemize}
139 \end{itemize}
140
141 \section{Vorteile gegen\"{u}ber anderen Sicherungsprogrammen}
142 \index[general]{Vorteile gegen\"{u}ber anderen Sicherungsprogrammen}
143 \index[general]{Sicherungsprogrammen!Vorteile gegen\"{u}ber anderen}
144
145 \begin{itemize}
146 \item da f\"{u}r jeden Rechner ein eigener Client existiert, k\"{o}nnen die
147       Daten von Betriebssystemen aller Art gesichert und wiederhergestellt
148       werden, wobei immer gew\"{a}hrleistet ist, dass ihre Dateiattribute
149       korrekt gesichert und wiederhergestellt werden.
150 \item Man kann auch Clients sichern ohne eine Client-Software zu benutzen
151       und verwendet hierzu NFS oder Samba.  Wir empfehlen jedoch, sofern
152       m\"{o}glich, auf jedem Rechner, von dem Daten gesichert werden
153       sollen, einen eigenen File-D\"{a}mon laufen zu lassen.
154 \item Bacula kann mit Sicherungen umgehen, die auf mehrere Volumes verteilt
155       sind.
156 \item eine umfassende SQL-Datenbank aller gesicherter Dateien
157       erm\"{o}glicht den \"{U}berblick \"{u}ber alle gespeicherte Dateien in
158       jedem einzelnen Volume.
159 \item automatische Bereinigung der Datenbank (die Entfernung alter
160       Aufzeichnungen) und dadurch eine Vereinfachung der Datenbankadministration.
161 \item durch die Verwendung beliebiger SQL-Datenbanksysteme ist Bacula sehr
162       anpassungsf\"{a}hig. Derzeit werden MySQL, PostgreSQL und SQLite unterst\"{u}tzt.
163 \item durch den modularen, dabei aber einheitlichen Entwurf ist Bacula in
164       hohem Ma{\ss}e skalierbar.
165 \item da Bacula D\"{a}monen auf den Client-Rechnern benutzt, ist es
166       m\"{o}glich, dort laufende Anwendungen durch Bacula mit
167       systemeigenen Befehlen zu stoppen und nach der Sicherung die
168      entsprechenden Anwendungen wieder zu starten.  Dies alles kann aus einem
169      einzigen Bacula-Job heraus geschehen.
170 \item Bacula hat ein eingebauten Zeitplaner f\"{u}r die
171       Sicherungsjobs.
172 \item Das Format der Volumes ist dokumentiert und es gibt einfache
173       C-Programme mit denen sie gelesen und beschrieben werden k\"{o}nnen
174 \item Bacula benutzt eindeutige (bei der IANA registrierte) TCP/IP-Ports --
175       also weder RPCs noch Shared Memory.
176 \item Baculas Installation und Konfiguration ist gegen\"{u}ber anderen
177       vergleichbaren Produkten relativ einfach.
178 %\item laut einem unserer Benutzer ist Bacula genau so schnell wie die
179 %      wichtigen gro{\ss}en kommerziellen Programme.
180 \item hohe Geschwindigkeit durch das Speichern der Datei-Informationen
181       in einer SQL-Datenbank anstatt in einzelnen Dateien auf der Festplatte.
182 \item neben der grafischen Benutzeroberfl\"{a}che zur Verwaltung hat Bacula
183       eine umfassende Shell-Schnittstelle f\"{u}r die Wartungsaufgaben, wobei der
184       Administrator Werkzeuge wie z.B. ``ssh'' verwenden kann, um jeden Teil von
185       Bacula von \"{u}berall (sogar von Zuhause) zu administrieren.
186 \item Bacula hat eine Rettungs-CD f\"{u}r Linux-Systeme mit den folgenden Eigenschaften:  
187    \begin{itemize}
188    \item Sie kompilieren sie von Grund auf auf ihrem eigenen System mit einem einzigen einfachen Befehl:
189       ``make'' (...OK, Sie brauchen dann noch ``make burn''...). 
190    \item die Rettungs-CD verwendet Ihren Kernel
191    \item sie schreibt Skripte entsprechend der Parameter Ihrer Festplatte mit denen Sie diese automatisch
192         repartitionieren und formatieren k\"{o}nnen, um den Ausgangszustand wieder herzustellen.
193    \item sie hat ein Skript, das Ihr Netzwerk wieder starten wird (mit der
194          korrekten IP-Adresse)
195    \item sie hat ein Skript, mit dem Ihre Festplatten automatisch gemountet werden.
196    \item ein Bacula-Client ist statisch eingebunden  
197    \item sie k\"{o}nnen der Rettungs-CD auf einfache Weise zus\"{a}tzliche
198          Daten und Programme hinzuf\"{u}gen.
199    \end{itemize}
200 \end{itemize}
201
202 \section{Einschr\"{a}nkungen der aktuellen Implementierung}
203 \index[general]{Einschr\"{a}nkungen der aktuellen Implementierung }
204 \index[general]{aktuelle Implementierung! Einschr\"{a}nkungen der}
205
206 \begin{itemize}
207 \item Sollten Sie mehr als 4 Milliarden Dateieintr\"{a}ge in Ihrer
208       Datenbank gespeichert haben, wird die FileID der Datenbank vermutlich
209       \"{u}berlaufen.  Dies w\"{a}re eine ziemlich gro{\ss}e Datenbank, aber
210       immerhin ist sie denkbar.  Allerdings k\"{o}nnen Sie die FileID auf 64 Bit
211       erweitern (ab Bacula-Version 1.39) und das Problem ist gel\"{o}st,
212       dies muss aber von Hand geschehen.
213 \item Dateien, die nach einer Vollsicherung gel\"{o}scht wurden, werden bei
214       einer Wiederherstellung eingeschlossen. Es wird momentan daran gearbeitet,
215       dies zu verhindern.
216 \item differentielle und inkrementelle Sicherungen basieren auf den Zeitstempeln
217       der Dateien. Das bedeutet, dass falls Sie nach einen vollst\"{a}ndigen Sicherung
218       Verzeichnisse oder Dateien auf dem Client in das FileSet verschieben,
219       diese beim n\"{a}chsten inkrementellen Backup nicht gesichert werden.
220       Um das Sichern der Daten zu erzwingen, m\"{u}ssen Sie nach dem verschieben
221       die Timestamps der Daten aktualisieren, damit Bacula sie als neu erkennt.
222 \item Datei-System-Module fehlen (dies w\"{a}ren konfigurierbare Routinen,
223       um spezielle Dateien zu sichern/wiederherzustellen, das kann aber \"{u}ber RunScripts gel\"{o}st werden).
224 \item Bacula kann zwei verschiedene Jobs nicht im selben Restore wiederherstellen,
225       wenn diese Backup-Jobs gleichzeitig gelaufen sind. Die Ausnahme ist, dass Sie
226       Spooling aktiviert haben und die Jobs nach dem spoolen nacheinander auf das
227       Volume geschrieben wurden. Es ist also nicht m\"{o}glich, die verschachtelten
228       Bl\"{o}cke auf dem Volume in einem Job zu trennen.
229 \item generell kann Bacula jedes Backup von jedem Client auch auf einem anderen
230       Client wiederherstellen. Allerdings gibt es, wenn die Architektur der Rechner
231       unterschiedlich ist (z.B. 32Bit zu 64Bit oder Windows zu Unix)
232       einige Einschr\"{a}nkungen. Zum Beispiel kennt Linux/Unix keine Solaris door-Dateien.
233       Zudem gibt es Hinweise, dass sich Zlib-Kompremierte Dateien von 64Bit-Systemen
234       nicht immer korrekt auf 32Bit-Systemen entpacken lassen.
235    \end{itemize}
236
237 \section{Grenzen und Beschr\"{a}nkungen des Software Design}
238 \index[general]{Restrictions!Design Limitations or }
239 \index[general]{Design Limitations or Restrictions }
240
241 \begin{itemize}
242 \item Namen (Resource-Namen, Volume-Names und
243       \"{a}hnliche) in Baculas Konfigurationsdateien sind auf eine bestimmte
244       L\"{a}nge beschr\"{a}nkt .  Momentan liegt die Grenze bei 127 Zeichen.
245       Beachten Sie bitte, dass diese Einschr\"{a}nkungen nicht die Dateinamen
246       betrifft, die beliebig lang sein k\"{o}nnen.
247
248 \end{itemize}