]> git.sur5r.net Git - bacula/docs/blob - docs/manual-de/autochangers.tex
first german translation
[bacula/docs] / docs / manual-de / autochangers.tex
1 %%
2 %%
3
4 \chapter{Autochanger Unterst\"{u}tzung}
5 \label{AutochangersChapter}
6 \index[general]{Unterst\"{u}tzung!Autochanger }
7 \index[general]{Autochanger Unterst\"{u}tzung }
8
9 Bacula unterst\"{u}tzt Autochanger zum Lesen und Schreiben von Tapes.
10 Damit Bacula mit einem Autochanger arbeiten kann, m\"{u}ssen einige Voraussetzungen erf\"{u}llt sein,
11 die Details werden im folgenden gekl\"{a}rt.
12
13 \begin{itemize}
14 \item Ein Script das den Autochanger, gem\"{a}{\ss} den von Bacula gesendeten Kommandos, steuert.
15    Bacula stellt solch ein Script in der {\bf depkgs} Distribution zur Verf\"{u}gung.
16   ==obsolete== This script works only with single drive autochangers.  
17
18 \item Jedes Volume (Tape) das benutzt wird, muss sowohl im Katalog definiert sein,
19    als auch eine Slotnummer zugeteilt sein, nur so kann Bacula wissen, welches Volume
20    aktuell im Autochanger verf\"{u}gbar ist.
21    Normalerweise wird das mittels des {\bf label} Kommandos erreicht,
22    weiter unten wird genauer darauf eingegangen.
23    Volumes m\"{u}ssen manuell gelabelt werden, bevor sie benutzt werden k\"{o}nnen.
24
25 \item Die Konfigurationsdateien des Storage-Dienstes m\"{u}ssen angepasst werden,
26    damit Device-Eintr\"{a}ge Autochangern zugeordnet werden k\"{o}nnen,
27    sowie einige Parameter mehr. 
28
29 \item Sie sollten auch die Storage-Definitionen in der Director-Dienst-Konfiguration anpassen,
30    so dass automatisch nachgefragt wird, welcher Slot genutzt werden soll, wenn ein Volume gelabelt wird.
31
32 \item Sie m\"{u}ssen sicherstellen, dass der Storage-Dienst (wenn er nicht als root ausgef\"{u}hrt wird)
33    Zugriffsrechte auf die Laufwerks- und auf das Autochanger-Kontroll-Device hat.
34
35 \item Sie m\"{u}ssen {\bf Autochanger = yes} in der Storage-Definitionen des Director-Dienstes setzen,
36    damit nach dem Slot gefragt wird wenn Sie Volumes labeln.
37 \end{itemize}
38
39 In Version 1.37 und sp\"{a}ter, gibt es eine neue \ilink{Autochanger-Konfiguration}{AutochangerRes}
40 die erlaubt, bestimmte Device-Eintr\"{a}ge zu gruppieren um einen Autochanger mit mehreren Laufwerken
41 zu konfigurieren. Diese Konfiguration m\"{u}ssen Sie benutzen, wenn Sie einen Autochanger verwenden wollen.
42
43 Bacula benutzt sein eigenes {\bf mtx-changer} Script als Interface zu dem Programm,
44 dass die Steuerung des Autochangers \"{u}bernimmt. {\bf mtx-changer} kann im Prinzip so angepasst werden,
45 dass es mit jedem Steuerungsprogramm f\"{u}r beliebige Autochanger funktioniert.
46 Die derzeitige Version von {\bf mtx-changer} arbeitet mit {\bf mtx}.
47 FreeBSD-Benutzer haben ein Script zur Verf\"{u}gung gestellt (im Verzeichnis {\bf examples/autochangers}),
48 dass Bacula {\bf chio} benutzen l\"{a}sst.
49
50 Bacula unterst\"{u}tzt Autochanger mir Barcode-Lesern,
51 dieses beinhaltet zwei Consolen-Kommandos: {\bf label barcodes} und {\bf update slots}.
52 Im Abschnitt "Barcode Unterst\"{u}tzung" (siehe unten) erfolgt eine detaillierte Beschreibung dieser Kommandos.
53
54 Momentan beinhaltet die Autochanger-Unterst\"{u}tzung keine Stacker und Silos,
55 und auch keine Laufwerks-Reinigung (Cleaning).
56 Unter Umst\"{a}nden schaffen Sie es vielleicht, einen Stacker (GravityFeed o. \"{a}.)
57 mit Bacula zum laufen zu bringen.
58 Die Unterst\"{u}tzung f\"{u}r Autochanger mit mehreren Laufwerken erfordert eine
59 Konfiguration wie in \ilink{Autochanger resource}{AutochangerRes} beschrieben.
60 Diese Konfiguration ist aber auch f\"{u}r Autochanger mit nur einem Laufwerk zu benutzen.
61
62 Wenn {\bf mtx} korrekt mit Ihrem Autochanger zusammenarbeitet,
63 dann ist es nur eine Frage der Anpassung des {\bf mtx-changer} Scripts (falls n\"{o}tig)
64 um den Autochanger mit Bacula zu benutzen.
65 Eine Liste mit von {\bf mtx} unterst\"{u}zten Autochangern, finden Sie unter folgendem Link:
66 \elink{http://mtx.opensource-sw.net/compatibility.php}{http://mtx.opensource-sw.net/compatibility.php}.
67 Die Homepage des {\bf mtx} Projekts ist:
68 \elink{http://mtx.opensource-sw.net/}{http://mtx.opensource-sw.net/}.
69
70 Wenn Sie Probleme haben, benutzen Sie bitte das {\bf auto} Kommando im {\bf btape} Programm,
71 um die Funktionalit\"{a}t des Autochangers mit Bacula zu testen.
72 Bitte bedenken Sie, dass bei vielen Distributionen (z.B. FreeBSD, Debian, ...) der Storage-Dienst
73 nicht als Benutzer und Gruppe {\bf root} l\"{a}ft, sonder als Benutzer {\bf bacula} und Gruppe {\bf tape}.
74 In diesem Fall m\"{u}ssen Sie sicherstellen, das der Benutzer oder die Gruppe entsprechende Rechte hat,
75 um auf den Autochanger und die Laufwerke zuzugreifen.
76
77 \label{SCSI devices}
78 \section{Zuordnung der SCSI Ger\"{a}te}
79 \index[general]{Zuordnung der SCSI Ger\"{a}te}
80 \index[general]{SCSI Ger\"{a}te}
81 \index[general]{Ger\"{a}te!SCSI}
82
83 Unter Linux k\"{o}nnen Sie:
84 \footnotesize
85 \begin{verbatim}
86 cat /proc/scsi/scsi
87 \end{verbatim}
88 \normalsize
89
90 ausf\"{u}hren, um zu sehen welche SCSI-Ger\"{a}te Sie haben.
91 Zudem k\"{o}nnen Sie:
92 \footnotesize
93 \begin{verbatim}
94 cat /proc/scsi/sg/device_hdr /proc/scsi/sg/devices
95 \end{verbatim}
96 \normalsize
97
98 benutzen, um herauszufinden, welches das Autochanger-Kontroll-Device ist,
99 ({\bf /dev/sg0} f\"{u}r die erste Zeile, {\bf /dev/sg1} f\"{u}r die zweite, ...)
100 das Sie in der Konfiguration unter {\bf Changer Device = } angeben m\"{u}ssen.
101
102 F\"{u}r weiterf\"{u}hrende Information \"{u}ber SCSI-Ger\"{a}te, schauen Sie bitte in den Abschnitt
103 \ilink{Linux SCSI Tricks}{SCSITricks} aus dem Tape-Testing-Kapitel des Handbuchs.
104
105 Unter FreeBSD k\"{o}nnen Sie: 
106
107 \footnotesize
108 \begin{verbatim}
109 camcontrol devlist
110 \end{verbatim}
111 \normalsize
112
113 benutzen, um SCSI-Ger\"{a}te und die Kontroll-Devices {\bf /dev/passn} des Autochangers anzuzeigen,
114 die Sie in der Konfiguration unter {\bf Changer Device = } angeben m\"{u}ssen.
115
116 Bitte stellen Sie sicher, dass der Storage-Dienst auf diese Ger\"{a}te zugreifen darf.
117
118 Der folgende Tipp f\"{u}r FreeBSD-Benutzer kommt von Danny Butroyd:
119 beim Neustart des Computers hat Bacula keine Berechtigung auf das Autochanger-Kontroll-Device
120 (z.B. /dev/pass0) zuzugreifen,
121 Um dies zu umgehen, editieren Sie die Datei /etc/devfs.conf und f\"{u}gen unten diese Zeilen hinzu:
122
123 \footnotesize
124 \begin{verbatim}
125 own     pass0   root:bacula
126 perm    pass0   0666
127 own     nsa0.0  root:bacula
128 perm    nsa0.0    0666
129 \end{verbatim}
130 \normalsize
131
132 Das gibt der Gruppe bacula, nur um sicher zu gehen, auch die Schreib-Berechtigung f\"{u}r das Ger\"{a}t nsa0.0.
133 Damit die neue Konfiguration wirksam wird, m\"{u}ssen Sie:
134
135 /etc/rc.d/devfs restart
136
137 ausf\"{u}hren.
138 Danach brauchen Sie nie wieder die Berechtigungen von Hand zu setzen, wenn der Computer neu gestartet wurde.
139
140 \label{scripts}
141 \section{Beispiel Scripte}
142 \index[general]{Scripte!Beispiel }
143 \index[general]{Beispiel Scripte }
144
145 Lesen Sie bitte den nachfolgenden Abschnitt, damit Sie verstehen wie Bacula mit Autochangern arbeitet.
146 Auch wenn Bacula ein standard {\bf mtx-changer} Script installiert, ben\"{o}tigen Sie f\"{u}r Ihren Autochanger
147 eventuell einige Anpassungen. Falls Sie Beispiele sehen wollen, schauen Sie bitte in das Verzeichnis
148 {\bf\lt{}bacula-src\gt{}/examples/devices}, wo Sie eine {\bf HP-autoloader.conf} Bacula-Ger\"{a}te-Konfiguration,
149 sowie mehrere {\bf mtx-changer} Scripte finden werden, die schon f\"{u}r unterschiedliche Autochanger angepasst sind.
150
151 \label{Slots}
152
153 \section{Slots}
154 \index[general]{Slots }
155
156 Um den Autochanger richtig ansteuern zu k\"{o}nnen, muss Bacula wissen
157 welches Volume in welchem Slot des Autochangers ist. In den Slots werden die Tapes aufbewahrt,
158 die nicht in einem Laufwerk geladen sind. Bacula nummeriert diese Slots von eins bis zur Anzahl der
159 vorhandenen Tapes im Autochanger.
160
161 Bacula benutzt niemals ein Volume im Autochanger, dass nicht gelabelt ist, dem keine Slotnummer im Katalog
162 zugewiesen ist oder wenn das Volume nicht als InChanger im Katalog markiert ist.
163 Jedem Volume im Autochanger muss \"{u}ber das Console-Programm eine Slot-Nummer zugewiesen werden.
164 Diese Information wird im Katalog, zusammen mit anderen Informationen \"{u}ber das Volume, gespeichert.
165 Wenn kein Slot angegeben, oder der Slot auf Null gesetzt ist, wird Bacula das Volume nicht benutzen,
166 auch wenn alle anderen ben\"{o}tigten Konfigurationsparameter richtig gesetzt sind.
167
168 Sie k\"{o}nnen die Slot-Nummer und die InChanger-Markierung \"{u}berpr\"{u}fen, indem Sie:
169 \begin{verbatim}
170 list Volumes
171 \end{verbatim}
172 im Consolen-Programm ausf\"{u}hren.
173
174 \label{mult}
175 \section{mehrere Laufwerke}
176 \index[general]{Laufwerke!mehrere }
177 \index[general]{mehrere Laufwerke }
178
179 Einige Autochanger haben mehr als ein Laufwerk. Die in Version 1.37 vorgestellte \ilink{Autochanger-Konfiguration}{AutochangerRes}, erlaubt Ihnen mehrere Ger\"{a}te-Konfigurationen,
180 die jeweils einem Laufwerk entsprechen, zu einem Autochanger zu gruppieren. Der Director-Dienst k\"{o}nnte trotzdem
181 die Laufwerke direkt ansprechen, aber dies zu erlauben, w\"{u}rde die einwandfreie Zusammenarbeit der Laufwerke
182 einschr\"{a}nken. Anstelle dessen sollte dem Director-Dienst, in der Director-Storage-Konfiguration, eine Autochanger-Konfiguration zugewiesen werden. Dieses erlaubt dem Storage-Dienst sicherzustellen, dass nur auf
183 ein Laufwerk zur Zeit vom {\bf mtx-changer} Script zugegriffen wird und nicht beide Laufwerke auf dasselbe Volume verweisen.
184
185 Mehrere Laufwerke erfordern das Setzen des {\bf Drive Index} in den Ger\"{a}te-Eintr\"{a}gen der
186 Storage-Dienst-Konfiguration.
187 Laufwerks-Nummern bzw. der {\bf Drive Index} beginnen standardm\"{a}{\ss}ig bei Null.
188 Um mit dem zweiten Laufwerk im Autochanger arbeiten zu k\"{o}nnen, muss ein weiterer Ger\"{a}te-Eintrag
189 erstellt werden, wobei der {\bf Drive Index} dann Eins ist.
190 Normalerweise wird das zweite Laufwerk dasselbe {\bf Changer Device} verwenden,
191 aber ein anderes {\bf Archive Device}.
192
193 Bacula Jobs werden bevorzugt auf das Volume geschrieben, dass schon in einem Laufwerk geladen ist.
194 Wenn Sie mehrere Laufwerke haben und Bacula auf mehreren Laufwerke gleichzeitig Jobs,
195 die denselben Pool verwenden, schreiben soll, muss der Parameter \ilink{Prefer Mounted Volumes} {PreferMountedVolumes}
196 in der Director-Dienst-Konfiguration in den entsprechenden Job-Eintr\"{a}gen auf "no" gesetzt werden.
197 Der Storage-Dienst wird daraufhin so viele Volumes wie m\"{o}glich in die Laufwerke laden.
198
199 \label{ConfigRecords}
200 \section{Ger\"{a}te-Konfigurations-Parameter}
201 \index[general]{Parameter!Ger\"{a}te-Konfiguration }
202 \index[general]{Ger\"{a}te-Konfigurations-Parameter }
203
204 Bacula's Autochanger-Konfiguration wird in den Ger\"{a}te-Eintr\"{a}gen des Storage-Dienstes festgelegt.
205 Vier Parameter: {\bf Autochanger}, {\bf Changer Device},{\bf Changer Command}, und {\bf Maximum Changer Wait}
206 steuern wie Bacula den Autochanger benutzt.
207
208 Diese vier Parameter der {\bf Device}-Konfiguration, sind unten detailiert beschrieben.
209 {\bf Changer Device} und {\bf Changer Command} werden in der Gr\"{a}te-Konfiguration nicht ben\"{o}tigt,
210 wenn sie in der {\bf Autochanger}-Konfiguration stehen.
211
212 \begin{description}
213
214 \item [Autochanger = {\it Yes|No} ]
215    \index[sd]{Autochanger  }
216    Der {\bf Autochanger}-Parameter gibt an, ob der Ger\"{a}te-Eintrag einen Autochanger beschreibt oder nicht.
217    Der Standardwert ist Autochanger = No.
218
219 \item [Changer Device = \lt{}device-name\gt{}]
220    \index[sd]{Changer Device  }
221    Zus\"{a}tzlich zu dem Archive Device Eintrag, muss das {\bf Changer Device} angegeben werden.
222 Das ist notwendig, weil die meisten Autochanger \"{u}ber ein anderes Ger\"{a}t gesteuert werden,
223 als f\"{u}r das Schreiben und Lesen der Volumes verwendet wird.
224 Ein Beispiel: unter Linux wird normalerweise das generische SCSI-Interface zum Steuern des Autochangers verwendet,
225 w\"{a}rend das standard SCSI-Interface f\"{u}r Lese- und Schreibvorg\"{a}ge genutzt wird.
226 F\"{u}r das {\bf Archive Device = /dev/nst0} hat man dann typischerweise das {\bf Changer Device = /dev/sg0}.
227 Gr\"{o}{\ss}ere Autochanger, mit mehreren Laufwerken und vielen Slots, k\"{o}nnen das Kontroll-Device
228 auch auf z.B. {\bf Changer Device = /dev/sg2} haben.
229
230 Unter FreeBSD liegt das Kontroll-Device zwischen {\bf /dev/pass0} und {\bf /dev/passn}.
231
232 Unter Solaris finden Sie das Kontroll-Device im Verzeichnis {\bf /dev/rdsk}.
233
234 Stellen Sie bitte sicher, dass der Storage-Dienst die notwendigen Rechte besitzt,
235 um auf die entsprechenden Ger\"{a}te zugreifen zu d\"{u}rfen.
236
237 \item [Changer Command = \lt{}command\gt{}]
238    \index[sd]{Changer Command  }
239    Dieser Parameter gibt an, welches externe Kommando und mit welchen Argumenten,
240 aufgerufen wird, um den Autochanger zu steuern.
241 Es wird vorausgesetzt, dass dieses Kommando ein normales Programm oder Shell-Script ist,
242 das vom betriebssystem ausgef\"{u}hrt werden kann.
243 Dieses Kommando wird jedesmal augerufen, wenn Bacula das Autochanger-Kontroll-Device ansprechen m\"{o}chte.
244 Die folgenden Ersetzungen werden durchgef\"{u}hrt, bevor das {\bf command} dem Betriebssystem zur
245 Ausf\"{u}hrung \"{u}bergeben wird:
246
247 \footnotesize
248 \begin{verbatim}
249       %% = %
250       %a = archive device name
251       %c = changer device name
252       %d = changer drive index base 0
253       %f = Client's name
254       %j = Job name
255       %o = command  (loaded, load, or unload)
256       %s = Slot base 0
257       %S = Slot base 1
258       %v = Volume name
259 \end{verbatim}
260 \normalsize
261
262 Hier ist ein Beispiel f\"[{u}r die Benutzung von {\bf mtx} mit dem {\bf mtx-changer} Script,
263 dass in der Bacula-Distribution enthalten ist:
264
265 \footnotesize
266 \begin{verbatim}
267 Changer Command = "/etc/bacula/mtx-changer %c %o %S %a %d"
268 \end{verbatim}
269 \normalsize
270
271 Falls das {\bf mtx-changer} Script nicht in {\bf /etc/bacula} liegt,
272 m\"{u}ssen Sie den Pfad entsprechend anpassen,
273 Einzelheiten zu den drei von Bacula benutzten Kommandos (loaded, load, unload),
274 sowie zu den von Bacula erwarteten Ausgaben des {\bf mtx-changer} Scripts,
275 werden weiter unten im Abschnitt {\bf Bacula Autochanger Schnittstelle} beschrieben..
276
277 \item [Maximum Changer Wait = \lt{}time\gt{}]
278    \index[sd]{Maximum Changer Wait  }
279    Dieser Parameter gibt an, wie lange Bacula maximal warten soll,
280 bis der Autochanger auf ein Kommando (z.B. load) reagiert.
281 Der Standardwert betr\"{a}gt 120 Sekunden. Wenn Sie einen langsamen Autochanger haben,
282 m\"{u}ssen Sie hier eventuell eine l\"{ä}ngere Zeit konfigurieren.
283
284 Wenn der Autochanger nicht innerhalb der {\bf Maximum Changer Wait} Zeit antwortet,
285 wird das Kommando abgebrochen und Bacula wird das Eingreifen des Bedieners verlangen.
286
287 \item [Drive Index = \lt{}number\gt{}]
288    \index[sd]{Drive Index  }
289    Dieser Parameter gibt die Nummer des Laufwerks innerhalb des Autochangers an.
290 Da die Nummerierung bei Null beginnt, wird das zweite Laufwerk mit folgendem Eintrag angegeben:
291
292 \footnotesize
293 \begin{verbatim}
294 Device Index = 1
295       
296 \end{verbatim}
297 \normalsize
298
299 Um das zweite Laufwerk nutzen zu k\"{o}nnen, muss ein zweiter Device-Eintrag in der Konfigurationsdatei des
300 Storage-Dienstes erstellt werden. Einzelheiten dazu stehen, weiter oben in diesem Kapitel, in dem Abschnitt
301 {\bf mehrere Laufwerke} 
302 \end{description}
303
304 Damit der Autochanger zuverl\"{a}{\ss}ig funktioniert, muss zus\"[a}tzlich ein Autochanger-Eintrag erstellt werden.
305 \input{autochangerres}
306
307 \label{example}
308 \section{eine Beispiel-Konfigurationsdatei}
309 \index[general]{Beispiel-Konfigurationsdatei}
310 \index[general]{Datei!Beispiel Konfiguration }
311
312 Die folgenden beiden Konfigurations-Eintr\"{a}ge realisieren einen Autochanger:
313
314 \footnotesize
315 \begin{verbatim}
316 Autochanger {
317   Name = "Autochanger"
318   Device = DDS-4
319   Changer Device = /dev/sg0
320   Changer Command = "/etc/bacula/mtx-changer %c %o %S %a %d"
321 }
322
323 Device {
324   Name = DDS-4
325   Media Type = DDS-4
326   Archive Device = /dev/nst0    # Normal archive device
327   Autochanger = yes
328   LabelMedia = no;
329   AutomaticMount = yes;
330   AlwaysOpen = yes;
331 }
332 \end{verbatim}
333 \normalsize
334
335 Wobei Sie {\bf Archive Device}, {\bf Changer Device} und den Pfad zum
336 {\bf Changer Command} Ihrem System entsprechend anpassen m\"{u}ssen.
337
338 \section{eine Beispiel-Konfigurationsdatei f\"{u}r mehrere Laufwerke}
339 \index[general]{Beispiel-Konfigurationsdatei f\"{u}r mehrere Laufwerke}
340
341 Die folgenden Konfigurations-Eintr\"{a}ge realisieren einen Autochanger mit mehreren Laufwerken:
342
343 \footnotesize
344 \begin{verbatim}
345 Autochanger {
346   Name = "Autochanger"
347   Device = Drive-1, Drive-2
348   Changer Device = /dev/sg0
349   Changer Command = "/etc/bacula/mtx-changer %c %o %S %a %d"
350 }
351
352 Device {
353   Name = Drive-1
354   Drive Index = 0
355   Media Type = DDS-4
356   Archive Device = /dev/nst0    # Normal archive device
357   Autochanger = yes
358   LabelMedia = no;
359   AutomaticMount = yes;
360   AlwaysOpen = yes;
361 }
362
363 Device {
364   Name = Drive-2
365   Drive Index = 1
366   Media Type = DDS-4
367   Archive Device = /dev/nst1    # Normal archive device
368   Autochanger = yes
369   LabelMedia = no;
370   AutomaticMount = yes;
371   AlwaysOpen = yes;
372 }
373
374 \end{verbatim}
375 \normalsize
376
377 Wobei Sie {\bf Archive Device}, {\bf Changer Device} und den Pfad zum
378 {\bf Changer Command} Ihrem System entsprechend anpassen m\"{u}ssen.
379
380 \label{SpecifyingSlots}
381 \section{Festlegen der Slots beim Labeln}
382 \index[general]{Festlegen der Slots beim Labeln }
383 \index[general]{Labeln!Festlegen der Slots }
384
385 Wenn Sie einen {\bf Autochanger = yes} Eintrag in Ihrer Storage-Konfiguration des
386 Director-Dienstes hinzugef\"{u}gt haben, wird die Bacula Console Sie bei diesen beiden Kommandos
387 {\bf add} und {\bf label} automatisch nach einem Slot f\"{u}r die jeweilige Aktion fragen.
388 Beim {\bf label} Kommando wird Bacula automatisch das richtige Volume in ein Laufwerk laden.
389   
390 Au{\ss}erdem muss, wie oben beschrieben, der Parameter {\bf Autochanger = yes} in der Ger\"{a}te-Konfiguration
391 des Storage-Dienstes vorhanden sein, damit der Autochanger benutzt werden kann.
392 N\"{a}here Informationen zu diesen Parametern finden Sie in der \ilink{Storage Konfiguration}{Autochanger1}
393 des Director-Kapitels und in \ilink{Device Konfiguration}{Autochanger} des Storage-Kapitels.
394
395 Somit k\"{o}nnen alle Aktionen mit dem Autochanger komplett automatisiert werden.
396 Zudem ist es m\"{o}glich mit dem Men\"{u}punkt {\bf Volume Parameters} des Consolen-Kommandos {\bf update} den Slot
397 zu setzen und zu \"{a}ndern.
398
399 Selbst wenn alle oben genannten Konfigurationen und Parameter richtig angegeben sind,
400 wird Bacula nur dann korrekt mit den Volumes im Autochanger arbeiten, wenn
401 den Volume-Eintr\"{a}ge im Katalog, die den Tapes im Autochanger entsprechenden,
402 auch eine {\bf slot}-Nummer zugewiesen ist.
403
404 Wenn Ihr Autochanger Barcodes unterst\"{u}tzt, k\"{o}nnen Sie alle Volumes im Autochanger,
405 eins nach dem anderen, labeln indem Sie das Console-Kommando {\bf label barcodes} verwenden.
406 Jedes Tape mit Barcode, wird von Bacula in ein Laufwerk geladen und dann mit dem selben Namen gelabelt,
407 der auch auf dem Barcode steht. Gleichzeitig wird ein Katalog-Eintrag f\"{u}r das Volume angelegt.
408 Wenn der Barcode mit der Zeichenkette beginnt, die als {\bf CleaningPrefix= } konfiguriert ist,
409 wird Bacula das Tape f\"{u}r ein Reinigungsband halten und es wird nicht versucht das Tape zu labeln.
410 Ein Beispiel:
411
412 \footnotesize
413 \begin{verbatim}
414 Pool {
415   Name ...
416   Cleaning Prefix = "CLN"
417 }
418 \end{verbatim}
419 \normalsize
420
421 Jedes Volume mit einem Barcode wie CLNxxxxx wird als Reinigungsband behandelt und nicht gelabelt.
422
423 Bitte bedenken Sie, dass jedes Volume, dass der Autochanger automatisch benutzen soll, bereits vor-gelabelt sein muss.
424 Wenn Sie keinen Barcode-Leser haben, muss das von Hand geschehen (oder durch ein Script).
425
426 \section{Tape-Wechsel}
427 \index[general]{Tapewechsel }
428 Wenn Sie Tapes dem Autochanger entnehmen oder hinzuf\"{u}gen wollen,
429 oder das {\bf mtx} Kommando von Hand aufrufen wollen,
430 m\"{u}ssen Sie Bacula den Autochanger freigeben lassen,
431 indem Sie folgendes Console-Kommando ausf\"{u}hren:
432
433 \footnotesize
434 \begin{verbatim}
435 unmount
436 (wechseln der Tapes und/oder mtx ausf\"{u}hren
437 mount
438 \end{verbatim}
439 \normalsize
440
441 Wenn Sie den Autochanger nicht freigeben, weiss Bacula
442 nach dem Tapewechsel nicht mehr, welches Volume in welchen Slot des Autochanger ist
443 und wird nicht mehr korrekt mit dem Autochenger arbeiten k\"{o}nnen.
444 Bacula geht immer davon aus, dass es exklusiven Zugriff auf den Autochanger hat,
445 solange ein Laufwerk gemountet ist.
446
447
448 \label{Magazines}
449 \section{Arbeiten mit mehreren Magazinen}
450 \index[general]{Arbeiten mit mehreren Magazinen }
451 \index[general]{Magazine!Arbeiten mit mehreren }
452
453 Wenn Sie mehrere Magazine haben, oder wenn Sie Tapes in den Magazinen tauschen,
454 m\"{u}ssen Sie Bacula dar\"{u}ber informieren. Bacula wird immer die Tapes im Autochanger
455 bevorzugt vor anderen Tapes benutzen, somit werden Bedienereingriffe minimiert.
456
457 Wenn Ihr Autochanger mit Barcodes (maschinenlesbare Tape Labels) arbeitet,
458 ist der Schritt, Bacula \"{u}ber die im Autochanger verf\" {u}gbaren Tapes zu informieren, sehr einfach.
459 Jedesmal wenn Sie ein Magazin wechseln, oder Tapes aus dem Magazine entfernen bzw. hinzuf\"{u}gen,
460 f\"{u}hren Sie einfach:
461
462 \footnotesize
463 \begin{verbatim}
464 unmount
465 (Magazin/Tapes wechseln)
466 update slots
467 mount
468 \end{verbatim}
469 \normalsize
470
471 im Console-Programm aus. Daraufhin wird Bacula den Autochanger nach einer aktuellen Liste
472 der in den Magazinen verf\"{u}gbaren Tapes fragen. Bei diesem Vorgang werden keine Tapes gelesen,
473 diese Informationen werden vom Autochanger w\"{a}hrend des Inventory ermittelt.
474 Bacula aktualisiert die Volume-Eintr\"{a}ge im Katalog, so dass bei allen in den Magazinen vorhandenen Tapes
475 das {\bf InChanger} Flag und auch die Slot-Nummern richtig gesetzt werden.
476
477 Falls Sie keinen Barcode-Leser im Autochanger haben, gibt es mehrere andere M\"{o}glichkeiten.
478
479 \begin{enumerate}
480 \item Sie k\"{o}nnen den Slot und das {\bf InChanger} Flag manuell setzen, indem Sie das {\bf update volume}
481 Consolen-Kommando verwenden (sehr umst\"{a}ndlich).
482
483 \item Sie k\"{o}nnen das
484
485 \footnotesize
486 \begin{verbatim}
487 update slots scan
488 \end{verbatim}
489 \normalsize
490
491    Consolen-Kommando ausf\"{u}hren. Daraufhin wird Bacula jedes Tape nacheinander in ein Laufwerk laden,
492    das Tape Label lesen und den Katalog (Slot, InChanger-Flag) aktualisieren.
493    Dieses Vorgehen ist zwar wirkungsvoll, aber auch sehr langsam.
494
495 \item Sie k\"{o}nnen das {\bf mtx-changer} Script anpassen, damit es die Barcodes im Autochanger simuliert (siehe unten).
496 \end{enumerate}
497
498 \label{simulating}
499 \section{Simulieren von Barcodes im Autochanger}
500 \index[general]{Autochanger!Simulieren von Barcodes im }
501 \index[general]{Simulieren von Barcodes im Autochanger }
502
503 Sie k\"{o}nnen die Barcodes im Autochanger simulieren, indem Sie das {\bf mtx-changer} Script so anpassen,
504 dass es die selben Informationen zur\"{u}ckgibt, die ein Autochanger mit Barcodes liefert.
505 Dazu wird die folgende Zeile im {\bf mtx-changer} Script:
506
507 \footnotesize
508 \begin{verbatim}
509   ${MTX} -f $ctl status |
510              grep " *Storage Element [0-9]*:.*Full" |
511                    awk "{print \$3 \$4}" | sed "s/Full *\(:VolumeTag=\)*//"
512 \end{verbatim}
513 \normalsize
514 (Der Zeilenumbruch dient hier nur der Darstellung, im {\bf mtx-changer} Script ist es eine Zeile)
515
516 durch ein \# auskommentiert oder einfach gel\"{o}scht (Zeilennummer ist ungef\"{a}hr 99).
517 An ihrer Stelle wird eine neue Zeile erstellt, die den Inhalt einer Datei ausgibt.
518 Zum Beispiel:
519
520 \footnotesize
521 \begin{verbatim}
522 cat /etc/bacula/changer.volumes
523 \end{verbatim}
524 \normalsize
525
526 Stellen Sie sicher, dass Sie den kompletten Pfad zur Datei angeben, Ort und Name der Datei sind egal.
527 Die Inhalt der Datei muss folgenden Beispiel entsprechen:
528
529 \footnotesize
530 \begin{verbatim}
531 1:Volume1
532 2:Volume2
533 3:Volume3
534 ...
535 \end{verbatim}
536 \normalsize
537
538 Wobei die 1, 2 und 3 die Slot-Nummern und Volume1, Volume2 und Volume3 die Namen (bzw. Barcodes) sind.
539 Sie k\"{o}]nnen mehrere Datei erstellen, die den Tapes in verschiedenen Magazinen entsprechen und beim Wechsel
540 der Magazine einfach die f\"{u}r das Magazine g\"{u}ltige Datei in die {\bf /etc/bacula/changer.volumes} kopieren.
541 Sie brauchen Bacula nicht neu zu starten, wenn Sie Magazine wechseln, nur die Datei muss den richtigen Inhalt haben.
542 Wenn Sie dann das Console-Kommando {\bf update slots} ausf\"{u}hren, wird Ihr Autochanger f\"{u}r Bacula so erscheinen,
543 als ob er Barcodes unterst\"{u}tzen w\"{u}rde.
544
545
546 \label{updateslots}
547 \section{Alle Parameter des Update Slots Kommandos}
548 \index[general]{Alle Parameter des Update Slots Kommandos }
549 \index[general]{Kommandos!alle Parameter des Update Slots }
550
551 Wenn Sie ncht alle Slots \"{u}berpr\"{u}fen lassen wollen, nur weil Sie ein Tape im Magazin getauscht haben,
552 k\"{o}nnen Sie das Consolen-Kommando {\bf update slots}, genauso wie das Kommando {\bf update slots scan},
553 mit zus\"{a}tzlichen Parametern aufrufen:
554
555 \footnotesize
556 \begin{verbatim}
557 update slots=n1,n2,n3-n4, ...
558 \end{verbatim}
559 \normalsize
560
561 wobei der Parameter {\bf scan} optional ist. Die Parameter n1, n2, n3-n7... geben die Slots an,
562 wobei n1, n2 f\"{u}r einzelne Slots und n3-n7 f\"{u}r einen Bereich von Slots steht (n3 bis n7).
563
564 Diese Parameter sind n\"{u}tzlich, wenn Sie {\bf update slots scan} (sehr langsam) ausf\"{u}hren und dabei
565 die Slots auf die mit gewechselten Tapes begrenzen k\"{o}nnen.
566
567 Als Beispiel, das Console-Kommando :
568
569 \footnotesize
570 \begin{verbatim}
571 update slots=1,6 scan
572 \end{verbatim}
573 \normalsize
574
575 veranlasst Bacula, das Tape im ersten Slot des Autochangers in ein Laufwerk zu laden, das Label zu lesen und den
576 Katalog entsprechend zu aktualisieren.
577 Danach passiert dasselbe mit dem Tape im sechsten Slot.
578 Das Console-Kommando:
579
580 \footnotesize
581 \begin{verbatim}
582 update slots=1-3,6
583 \end{verbatim}
584 \normalsize
585
586 liest die Barcodes der Tapes in den Slots 1, 2, 3 und 6 und aktualisiert den Katalog.
587 Wenn Ihr Autochanger keinen Barcode-Leser hat und Sie das {\bf mtx changer} Script nicht, wie oben beschrieben,
588 angepasst haben, wird dieses Console-Kommando keine Tapes finden und folglich nichts tun.
589
590 \label{FreeBSD}
591 \section{FreeBSD Belange}
592 \index[general]{Belange!FreeBSD }
593 \index[general]{FreeBSD Belange }
594
595 Falls unter FreeBSD Probleme auftreten, wenn Bacula versucht auf ein Laufwerk zuzugreifen 
596 und folgende Fehlermeldung erscheint: {\bf Device not configured},
597 passiert dass weil FreeBSD den Ger\"{a}te-Eintrag {\bf /dev/nsa1} entfernt, wenn kein Tape im Laufwerk ist.
598 Das hat zur Folge, dass Bacula das Ger\"{a}t nicht \"{o}ffnen kann. Die L\"{o}sung f\"{u}r dieses Problem ist es,
599 sicherzustellen, dass immer ein Tape im Laufwerk ist, wenn Bacula gestartet wird.
600 Diese Problem ist in den Bacula-Versionen 1.32f-5 und sp\"{a}ter behoben.
601
602 Beachten Sie bitte das Kapitel \ilink{Laufwerk-Tests}{FreeBSDTapes} bevor Sie den Autochanger testen,
603 dort finden Sie weitere {\bf wichtige} Informationen die Laufwerke betreffend.
604
605 \label{AutochangerTesting}
606 \section{Autochanger-Test und Anpassung des mtx-changer Scripts}
607 \index[general]{Autochanger-Test }
608 \index[general]{Anpassung des mtx-changer Scripts}
609
610
611 Bevor Sie den Autochanger gleich mit Bacula ausprobieren, ist es vorzuziehen, zuerst von Hand
612 zu testen ob er richtig funktioniert.
613 Um das zu tun, empfehlen wir, dass Sie die folgenden Kommandos ausf\"{u}hren (wobei angenommen wird,
614 dass das {\bf mtx-changer} Script unter {\bf /etc/bacula/mtx-changer} liegt):
615
616 \begin{description}
617
618 \item [Stellen Sie sicher, dass Bacula nicht l\"{a}uft.]
619
620 \item [/etc/bacula/mtx-changer \ /dev/sg0 \ list \ 0 \ /dev/nst0 \ 0]
621 \index[sd]{mtx-changer list}
622
623 Das Kommando sollte diese Ausgabe erzeugen:
624
625 \footnotesize
626 \begin{verbatim}
627    1:
628    2:
629    3:
630    ...
631    
632 \end{verbatim}
633 \normalsize
634
635 eine oder mehrere Zeilen f\"{u}r jeden belegten Slot im Autochanger,
636 wobei hinter jeder Zahl ein Doppelpunkt ({\bf :}) stehen muss.
637 Wenn Ihr Autochanger Barcodes unterst\"{u}tzt, steht hinter dem Doppelpunkt der Barcode.
638 Falls ein Fehler autritt, muss die Ursache gefunden werden
639 (versuchen Sie z.B. ein anderes Kontroll-Device zu verwenden, falls {\bf /dev/sg0} falsch ist).
640 Unter FreeBSD z.B. liegt das Kontroll-Device gew\"{o}hnlich auf {\bf /dev/pass2}.
641
642 \item [/etc/bacula/mtx-changer \ /dev/sg0 \ slots ]
643 \index[sd]{mtx-changer slots}
644
645 Das Kommando sollte die Anzahl der Slots im Autochanger anzeigen.
646
647 \item [/etc/bacula/mtx-changer \ /dev/sg0 \ unload \ 1 \ /dev/nst0 \ 0 ]
648 \index[sd]{mtx-changer unload}
649
650    Falls das Tape aus Slot 1 in einem Laufwerk geladen ist, sollte es jetzt entladen werden.
651
652 \item [/etc/bacula/mtx-changer \ /dev/sg0 \ load \ 3 \ /dev/nst0 \ 0 ]
653 \index[sd]{mtx-changer load}
654
655 Angenommen in Slot 3 ist ein Tape, dann wird es jetzt in das erste Laufwerk geladen (\bf Drive Index = 0)
656
657 \item [/etc/bacula/mtx-changer \ /dev/sg0 \ loaded \ 0 \ /dev/nst0 \ 0]
658 \index[sd]{mtx-changer loaded}
659
660 Dieses Kommando sollte jetzt 3 ausgeben (Die Slot-Nummer des in Laufwerk 0 geladenen Tapes.).
661 Beachten Sie, dass wir im Kommando eine ung\"{u}ltige Slotnummer 0 verwendet haben.
662 In diesem Fall, wird sie einfach ignoriert, weil sie nicht ben\"{o}tigt wird.
663 Allerdings musste eine Slot-Nummer angegeben werden, weil der Laufwerksparameter
664 am Ende des Kommandos erforderlich war, um das richtige Laufwerk zu w\"{a}hlen.
665
666 \item [/etc/bacula/mtx-changer \ /dev/sg0 \ unload \ 3 /dev/nst0 \ 0]
667
668 wird das Laufwerk mit {\bf Drive Index = 0} in Slot 3 entladen.
669
670 \end{description}
671
672 Nachdem alle oben genannten Kommandos funktionieren und in der
673 Storage-Dienst-Konfiguration auch das richtige {\bf Changer Command} angegeben ist,
674 sollte Bacula jetzt mit Ihrem Autochanger arbeiten k\"{o}nnen.
675 Das letzte verbleibende Problem ist, dass der Autochanger einige Zeit ben\"{o}tigt,
676 das Tape zu laden, nachdem das entsprechende Kommando abgesetzt wurde.
677 Wenn sich das {\bf mtx-changer} Script nach dem load-Kommando beendet,
678 wird Bacula sofort versuchen das Tape zur\"{u}ckzuspulen und zu lesen.
679 Wenn Bacula Ein-/Ausgabe-Fehler nach dem Laden des Tapes meldet, werden Sie eventuell eine
680 Verz\"{o}gerungszeit (z.B. {\bf sleep 20}) im {\bf mtx changer} Script nach dem {\bf mtx} Kommando
681 einf\"{u}gen m\"{u}ssen. Bitte bedenken Sie, dass egal was Sie dem {\bf mtx changer} Script an Kommandos
682 hinzuf\"{u}gen, sich das Script immer mit {\bf exit 0} beendet.
683 Bacula \"{u}berpr\"{u}ft den R\"{u}ckgabewert des Script nach jedem Aufruf und er muss immer 0 sein,
684 wenn alles geklappt hat.
685
686 Ob Sie eine {\bf sleep}-Zeit im Script angeben m\"{u}ssen, k\"{o}nnen Sie mit folgenden
687 Kommandos \"{u}berpr\"{u}fen, indem Sie sie in ein Script schreiben und ausf\"{u}hren.
688
689 \footnotesize
690 \begin{verbatim}
691 #!/bin/sh
692 /etc/bacula/mtx-changer /dev/sg0 unload 1 /dev/nst0 0
693 /etc/bacula/mtx-changer /dev/sg0 load 3 /dev/nst0 0
694 mt -f /dev/st0 rewind
695 mt -f /dev/st0 weof
696 \end{verbatim}
697 \normalsize
698
699 Wenn das Script funktioniert, haben Sie wahrscheinlich keine zeitlichen Probleme.
700 Wenn es nicht funktioniert, tragen Sie, direkt hinter dem mtx-changer load Kommando,
701 {\bf sleep 30} oder auch {\bf sleep 60} ein. Wenn es damit funktioniert,
702 \"{u}bernehmen Sie den passenden {\bf sleep}-Eintrag in das {\bf mtx-changer} Script,
703 so wird diese Verz\"{o}gerungszeit jedesmal angewendet, wenn Bacula das Script aufruft.
704
705 Ein zweites Problem, dass einige Autochanger betrifft, ist dass die Laufwerke diese Autochanger das Tape
706 auswerfen m\"{u}ssen, bevor es aus dem Laufwerk entfernt werden kann. Falls das zutrifft, wird das Kommando
707 {\bf load 3} niemals erfolgreich beendet werden, egal wie lange Sie warten.
708 In diesem Fall, k\"{o}nnen Sie ein Auswurf-Kommando direkt hinter das {\bf unload} setzen,
709 so dass das Script dann so aussieht:
710
711 \footnotesize
712 \begin{verbatim}
713 #!/bin/sh
714 /etc/bacula/mtx-changer /dev/sg0 unload 1 /dev/nst0 0
715 mt -f /dev/st0 offline
716 /etc/bacula/mtx-changer /dev/sg0 load 3 /dev/nst0 0
717 mt -f /dev/st0 rewind
718 mt -f /dev/st0 weof
719 \end{verbatim}
720 \normalsize
721
722 Nat\"{u}rlich m\"{u}ssen Sie das {\bf offline} Kommando in das {\bf mtx changer} Script \"{u}bernehmen,
723 falls es das Problem behebt. Da Bacula den R\"{u}ckgabewert des {\bf mtx changer} Scripts \"{u}berpr\"{u}ft,
724 stellen sie wiederum sicher, dass er immer 0 ist, bzw. das der R\"{u}ckgabewert des {\bf mtx} Kommandos an
725 Bacula \"{u}bergeben wird.
726
727 Wie vorher schon angemerkt, sind im Verzeichnis {\bf \lt{}bacula-source\gt{}/examples/devices} mehrere
728 Scripte, die die oben genannten Kommandos bereits enthalten. Sie k\"{o}nnen eine Hilfe sein, um Ihr Script
729 zum laufen zu bringen.
730
731 Wenn Bacula den Fehler {\bf Rewind error on /dev/nst0. ERR=Input/output error.} ausgibt,
732 werden Sie in den meisten F\"{a}llen eine l\"{a}ngere {\bf sleep}-Zeit in Ihrem {\bf mtx-changer} Script
733 hinzuf\"{u}gen m\"{u}ssen, bevor es nach dem {\bf load} Kommando beendet wird.
734
735 \label{using}
736 \section{Arbeiten mit dem Autochanger}
737 \index[general]{Arbeiten mit dem Autochanger }
738 \index[general]{Autochanger!Arbeiten mit dem  }
739
740 Angenommen, Sie haben alle notwendigen Storage-Dienst-Device-Eintr\"{a}ge richtig konfiguriert
741 und Sie haben einen {\bf Autochanger = yes} Eintrag zu der Storage-Konfiguration im Director-Dienst
742 hinzuge\"{u}gt.
743
744 Jetzt f\"{u}llen Sie Ihren Autochanger mit, zum Beispiel, 6 leeren Tapes.
745
746 Was muss passieren, damit Bacula auf diese Tapes zugreifen kann?
747
748 Eine M\"{o}glichkeit ist, dass jedes Tape vorgelabelt wird. Starten Sie Bacula und
749 f\"{u}hren Sie das Console-Programm aus, innerhalb des Console-Programms verwenden Sie das Kommando {\bf label}:
750
751 \footnotesize
752 \begin{verbatim}
753 ./bconsole
754 Connecting to Director rufus:8101
755 1000 OK: rufus-dir Version: 1.26 (4 October 2002)
756 *label
757 \end{verbatim}
758 \normalsize
759
760 wird etwas \"{a}hnliches wie hier ausgeben:
761
762 \footnotesize
763 \begin{verbatim}
764 Using default Catalog name=BackupDB DB=bacula
765 The defined Storage resources are:
766      1: Autochanger
767      2: File
768 Select Storage resource (1-2): 1
769 \end{verbatim}
770 \normalsize
771
772 W\"{a}hlen Sie den Autochanger und es erscheint:
773
774 \footnotesize
775 \begin{verbatim}
776 Enter new Volume name: TestVolume1
777 Enter slot (0 for none): 1
778 \end{verbatim}
779 \normalsize
780
781 geben Sie {\bf Testvolume1} f\"{u}r den Tape-Namen ein und {\bf 1} f\"{u}r den Slot.
782 Bacula fragt:
783
784 \footnotesize
785 \begin{verbatim}
786 Defined Pools:
787      1: Default
788      2: File
789 Select the Pool (1-2): 1
790 \end{verbatim}
791 \normalsize
792
793 W\"{a}hlen Sie den Default Pool. Das wird automatisch gemacht, wenn Sie nur einen Pool haben.
794 Nun wird Bacula damit beginnen, das ben\"{o}tigte Laufwerk zu entladen und 
795 das Tape aus Slot 1 in das Laufwerk zu laden und als Testvolume1 zu labeln.
796 In diesem Beispiel war kein Tape im Laufwerk, die Ausgabe sieht dann so aus:
797
798 \footnotesize
799 \begin{verbatim}
800 Connecting to Storage daemon Autochanger at localhost:9103 ...
801 Sending label command ...
802 3903 Issuing autochanger "load slot 1" command.
803 3000 OK label. Volume=TestVolume1 Device=/dev/nst0
804 Media record for Volume=TestVolume1 successfully created.
805 Requesting mount Autochanger ...
806 3001 Device /dev/nst0 is mounted with Volume TestVolume1
807 You have messages.
808 *
809 \end{verbatim}
810 \normalsize
811
812 Sie k\"{o}nnen dann damit fortfahren, die andern Tapes zu labeln.
813 Die Ausgaben werden etwas anders aussehen, weil Bacula dann erst das
814 vorherige, gerade gelabelte Tape, aus dem Laufwerk entladen muss,
815 bevor das neue Tape geladen werden kann.
816
817 Wenn Sie alle Tapes gelabelt haben, wird Bacula sie automatisch verwenden, wenn sie ben\"{o}tigt werden.
818
819 Um nachzusehen, wie die Tapes gelabelt sind, geben Sie einfach das Console-Kommando {\bf list volumes} ein,
820 das wird eine Liste, wie die folgende ausgeben:
821
822 \footnotesize
823 \begin{verbatim}
824 *{\bf list volumes}
825 Using default Catalog name=BackupDB DB=bacula
826 Defined Pools:
827      1: Default
828      2: File
829 Select the Pool (1-2): 1
830 +-------+----------+--------+---------+-------+--------+----------+-------+------+
831 | MedId | VolName  | MedTyp | VolStat | Bites | LstWrt | VolReten | Recyc | Slot |
832 +-------+----------+--------+---------+-------+--------+----------+-------+------+
833 | 1     | TestVol1 | DDS-4  | Append  | 0     | 0      | 30672000 | 0     | 1    |
834 | 2     | TestVol2 | DDS-4  | Append  | 0     | 0      | 30672000 | 0     | 2    |
835 | 3     | TestVol3 | DDS-4  | Append  | 0     | 0      | 30672000 | 0     | 3    |
836 | ...                                                                            |
837 +-------+----------+--------+---------+-------+--------+----------+-------+------+
838 \end{verbatim}
839 \normalsize
840
841 \label{Barcodes}
842 \section{Barcode Unterst\"{u}tzung}
843 \index[general]{Unterst\"{u}tzung!Barcode }
844 \index[general]{Barcode Unterst\"{u}tzung }
845
846 Bacula unterst\"{u}tzt Barcodes mit zwei Console-Kommandos:
847 {\bf label barcodes} und {\bf update slots}.
848
849 Das Kommando {\bf label barcodes} bewirkt, dass Bacula mittels des {\bf mtx-changer} {\bf list}
850 Kommandos die Barcodes der Tapes in allen Slots einliest. Danach wird jedes Tape, eins nach dem anderen,
851 mit dem Namen gelabelt, den der Barcode enth\"{a}lt.
852
853 Das {\bf update slots} Kommando holt, \"{u}ber das {\bf mtx-changer} Script, zuerst eine Liste aller Tapes und deren Barcodes. Dann versucht es im Katalog die entsprechenden Tapes zu finden und aktualisiert
854 den {\bf Slot} und das {\bf InChanger} Flag. Falls das Tape nicht im Katalog gelistet ist, passiert nichts.
855 Diese Kommando wird ben\"{o}tigt, um die Volume-Eintr\"{a}ge im Katalog mit den tats\"{a}chlich im Autochanger
856 zur Verf\"{u}gung stehenden Tapes abzugleichen, nachdem Tapes gewechselt oder in andere Slots verschoben wurden.
857
858 Die Angabe des {\bf Cleaning Prefix} kann in der Pool-Konfiguration benutzt werden, um anzugeben welche
859 Tapes (Barcodes) im Katalog mit dem {\bf VolStatus} {\bf Cleaning} gekennzeichnet werden sollen.
860 Das verhindert, dass Bacula versucht auf dem Tape zu schreiben.
861
862 \label{interface}
863 \section{Bacula Autochanger Schnittstelle}
864 \index[general]{Schnittstelle!Bacula Autochanger }
865 \index[general]{Bacula Autochanger Schnittstelle }
866
867 Bacula ruft das Autochanger-Script auf, dass Sie als  {\bf Changer Command} angegeben haben.
868 Normalerweise ist es das von Bacula mitgelieferte {\bf mtx-changer} Script,
869 aber tats\"{a}chlich kann es auch jedes andere Programm sein.
870 Die einzige Anforderung ist, dass es die Kommandos die Bacula benutzt,
871 {\bf loaded}, {\bf load}, {\bf unload}, {\bf list} und {\bf slots}, unterst\"{u}tzt.
872 Ausserdem muss jedes dieser Kommandos genau diese R\"{u}ckgabewerte liefern:
873
874 \footnotesize
875 \begin{verbatim}
876 - Die momentan benutzten Autochanger-Kommandos sind:
877     loaded -- gibt, ab 1 beginnet, die Nummer des im Laufwerk geladenen Slot zur\"{u}ck,
878               bzw. 0 wenn das Laufwerk leer ist.
879     load   -- l\"{a}dt das Tape aus dem angegebenen Slot in das Laufwerk (einige Autochanger
880               ben\"{o}tigen eine 30-sek\"{u}ndige Pause nach diesem Kommando)
881     unload -- entl\"{a}dt das Tape aus dem Laufwerk zur\"{u}ck in den Slot
882     list   -- gibt eine Zeile pro Tape im Autochanger aus.
883               Das Format ist: <Slot>:<Barcode>. Wobei
884               der {\bf Slot} eine Zahl (nicht null) ist, die der Slot-Nummer entspricht,
885               und {\bf Barcode} ist, falls vorhanden, der Barcode des Tapes,
886               ansonsten ist {\bf Barcode} leer.
887      slots -- gibt die absolute Anzahl der Slots im Autochanger zur\"{u}ck.
888 \end{verbatim}
889 \normalsize
890
891 Bacula \"{u}berpr\"{u}ft den R\"{u}ckgabewert des aufgerufenen Programms,
892 wenn er Null ist, werden die gelieferten Daten akzeptiert.
893 Wenn der R\"{u}ckgabewert nicht Null ist, werden alle Daten verworfen und
894 Bacula behandelt das Laufwerk so, als wenn es kein Autochanger ist.
895