From: Kern Sibbald Date: Thu, 13 Dec 2007 14:43:16 +0000 (+0000) Subject: Update German manual X-Git-Tag: Release-2.2.7~15 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=75603e049e988ea6c2a632a1e22911308c988fd7;p=bacula%2Fdocs Update German manual --- diff --git a/docs/manual-de/console.tex b/docs/manual-de/console.tex index d451f7c2..57b235ff 100644 --- a/docs/manual-de/console.tex +++ b/docs/manual-de/console.tex @@ -1,87 +1,93 @@ %% %% -\section*{Bacula Console} +\chapter{Bacula Console} \label{_ConsoleChapter} -\index[general]{Console!Bacula } -\index[general]{Bacula Console } -\index[console]{Console!Bacula } -\index[console]{Bacula Console } -\addcontentsline{toc}{section}{Bacula Console} - -\subsection*{General} -\index[general]{General} -\addcontentsline{toc}{subsection}{General} - -The {\bf Bacula Console} (sometimes called the User Agent) is a program that -allows the user or the System Administrator, to interact with the Bacula -Director daemon while the daemon is running. - -The current Bacula Console comes in two versions: a shell interface (TTY -style), and a GNOME GUI interface. Both permit the administrator or authorized -users to interact with Bacula. You can determine the status of a particular -job, examine the contents of the Catalog as well as perform certain tape -manipulations with the Console program. - -In addition, there is a wx-console built with wxWidgets that allows a graphic -restore of files. As of version 1.34.1 it is in an early stage of development, -but it already is quite useful. - -Since the Console program interacts with the Director through the network, your -Console and Director programs do not necessarily need to run on the same -machine. - -In fact, a certain minimal knowledge of the Console program is needed in order -for Bacula to be able to write on more than one tape, because when Bacula -requests a new tape, it waits until the user, via the Console program, -indicates that the new tape is mounted. - -\subsection*{Console Configuration} -\index[general]{Console Configuration} -\index[general]{Configuration!Console} -\index[console]{Console Configuration} -\index[console]{Configuration!Console} -\addcontentsline{toc}{subsection}{Console Configuration} - -When the Console starts, it reads a standard Bacula configuration file named -{\bf bconsole.conf} or {\bf gnome-console.conf} in the case of the GNOME -Console version. This file allows default configuration of the Console, and at -the current time, the only Resource Record defined is the Director resource, -which gives the Console the name and address of the Director. For more -information on configuration of the Console program, please see the -\ilink{Console Configuration File}{_ChapterStart36} Chapter of -this document. - -\subsection*{Running the Console Program} -\index[general]{Running the Console Program } -\index[general]{Program!Running the Console } -\index[console]{Running the Console Program } -\index[console]{Program!Running the Console } -\addcontentsline{toc}{subsection}{Running the Console Program} - -After launching the Console program (bconsole), it will prompt you for the -next command with an asterisk (*). (Note, in the GNOME version, the prompt is -not present; you simply enter the commands you want in the command text box at -the bottom of the screen.) Generally, for all commands, you can simply enter -the command name and the Console program will prompt you for the necessary -arguments. Alternatively, in most cases, you may enter the command followed by -arguments. The general format is: +\index[general]{Console!Bacula} +\index[general]{Bacula Console} +\index[general]{Console!Bacula} +\index[general]{Bacula Console} + +Die {\bf Bacula Console} (manchmal auch das BenutzerInterface genannt) +ist ein Programm, dass es dem Anwender oder System Aministrator erlaub, +den Bacula-Director-Dienst im laufenden Betrieb zu kontrollieren. + +Momentan gibt es zwei Versionen des Console-Programms: eine Shell- (TTY) +und eine GNOME GUI-Version. Beide erlauben es dem Administrator oder +autorisierten Benutzern Bacula zu steuern. Sie k\"{o}nnen sich den Status +eines bestimmten Jobs bzw. den Inhalt des Katalogs anzeigen lassen, +oder bestimmte Aktionen mit Tapes und Autochangern durchf\"{u}hren. + +Zus\"{a}tzlich gibt es noch die bwx-Console, die auf wxWidgets aufbaut, +und eine M\"{o}glichkeit bietet, den Wiederherstellungsproze{\ss} graphisch zu steuern. +Die bwx-Console befindet sich in einem fr\"{u}hen Entwicklungsstadium und +wurde leider seit einiger Zeit nicht weiterentwickelt. (Trotzdem kann sie sehr hilfreich sein.) + +Da sich alle Bacula-Consolen \"{u}ber das Netzwerk mit dem Director-Dienst verbinden, +ist es nicht notwendig sie auf dem selben Computer laufen zu lassen. + +Ein gewisses, minimales Grundwissen \"{u}ber die Console ist schon dann notwendig, +wenn Bacula auf mehr als einem Tape schreiben soll. Bacula wird n\"{a}mlich nach einem +leeren Band fragen, falls keines mehr verf\"{u}gbar ist, und erst nach dem mounten +eines neuen Tapes mittels der Console, wird Bacula weiterarbeiten k\"{o}nnen. + +\section{Console Konfiguration} +\index[general]{Console Konfiguration} +\index[general]{Konfiguration!Console} +\index[general]{Console Konfiguration} +\index[general]{Konfiguration!Console} + +Wenn Sie die Bacula-Console starten, liest sie ihre Standard-Konfigurations-Datei +namens {\bf bconsole.conf}, bzw. {\bf bgnome-console.conf} f\"{u}r die GNOME-Console, ein. +Im einfachsten Fall enth\"{a}llt diese Datei nur den Namen und die Adresse des Director-Dienstes +sowie das Passwort, dass f\"{u}r die Verbindung zum Director-Dienst ben\"{o}tigt wird. +F\"{u}r weitere Informationen zu dieser Datei, lesen Sie bitte das Kapitel \"{u}ber die \ilink{Console-Konfiguration-Datei}{ConsoleConfChapter} in diesem Handbuch. + +\section{Benutzung des Console-Programms} +\index[general]{Benutzung des Console-Programms} +\index[general]{Programm!Benutzung des Console-} +\index[general]{Benutzung des Console-Programms} +\index[general]{Programm!Benutzungs des Console-} + +Das Console-Programm kann mit den folgenden Optionen gestartet werden: +\footnotesize +\begin{verbatim} +Usage: bconsole [-s] [-c Konfigurations-Datei] [-d Debug-Level] + -c gibt die zu verwendene Konfigurations-Datei an + -dnn setzt den Debug-Lavel auf nn + -n kein conio + -s keine Signale (*) + -t test - list die Konfigurations-Datei und beendet sich dann + -? gibt diese Hilfe aus. +\end{verbatim} +\normalsize + +(*) \elink{Signale}{http://de.wikipedia.org/wiki/Signal\_\%28Computer\%29} + +Nach dem Start des Console-Programms zeigt es durch sein Prompt (*) an, +dass es auf Benutzereingaben wartet. (in der GNOME-Console gibt es kein Prompt, +geben Sie die Befehle bitte einfach in der Textbox unten im Fenster ein.) +Sie k\"{o}nnen in jeder Console einfach nur das Kommando eingeben, wenn weitere Parameter +erforderlich sind, wird das Programm Sie danach fragen. Alternativ k\"{o}nnen Sie +nat\"{u}rlich auch das komplette Kommando mit allen ben\"{o}tigten Parametern eingeben +und ausf\"{u}hren. Das normale Befehlsformat ist dieses: \footnotesize \begin{verbatim} - [=] [=] ... + [=] [=] ... \end{verbatim} \normalsize -where {\bf command} is one of the commands listed below; {\bf keyword} is one -of the keywords listed below (usually followed by an argument); and {\bf -argument} is the value. The command may be abbreviated to the shortest unique -form. If two commands have the same starting letters, the one that will be -selected is the one that appears first in the {\bf help} listing. If you want -the second command, simply spell out the full command. None of the keywords -following the command may be abbreviated. +wobei {\bf Kommando} einer der unten aufgef\"{u}hrten Console-Befehle +und {\bf Parameter} eines der unten aufgelisteten Schl\"{u}sselw\"{o}rter ist, +dem dann meistens ein {\bf Argument} folgt. Alle Befehle k\"{o}nnen in der +k\"{u}rzesten eindeutigen Form eingegeben werden. Falls zwei Befehle mit identischen +Buchstaben anfangen, wird der ausgef\"{u}hrt, der in der Ausgabe des {\bf help}-Kommandos +am weitesten oben steht. Wenn Sie das andere Kommando ausf\"{u}hren m\"{o}chten m\"{u}ssen Sie +dementsprechend mehr Buchstaben eingeben, um es eindeutig anzugeben. Keiner der +Parameter darf abgek\"{u}rzt werden. -For example: +Ein Beispiel: \footnotesize \begin{verbatim} @@ -89,7 +95,7 @@ list files jobid=23 \end{verbatim} \normalsize -will list all files saved for JobId 23. Or: +zeigt alle gesicherten Dateien mit der JobID 23 an. \footnotesize \begin{verbatim} @@ -97,171 +103,366 @@ show pools \end{verbatim} \normalsize -will display all the Pool resource records. - -\subsection*{Stopping the Console Program} -\index[general]{Program!Stopping the Console } -\index[general]{Stopping the Console Program } -\index[console]{Program!Stopping the Console } -\index[console]{Stopping the Console Program } -\addcontentsline{toc}{subsection}{Stopping the Console Program} - -Normally, you simply enter {\bf quit} or {\bf exit} and the Console program -will terminate. However, it waits until the Director acknowledges the command. -If the Director is already doing a lengthy command (e.g. prune), it may take -some time. If you want to immediately terminate the Console program, enter the -{\bf .quit} command. - -There is currently no way to interrupt a Console command once issued (i.e. -Ctrl-C does not work). However, if you are at a prompt that is asking you to -select one of several possibilities and you would like to abort the command, -you can enter a period ({\bf .}), and in most cases, you will either be -returned to the main command prompt or if appropriate the previous prompt (in -the case of nested prompts). In a few places such as where it is asking for a -Volume name, the period will be taken to be the Volume name. In that case, you -will most likely be able to cancel at the next prompt. -\label{list} +zeigt alle Pool-Konfigurations-Eintr\"{a}ge an. + +Die maximale L\"{a}nge der eingegebenen Befehle, mit Parametern, ist 511 Zeichen. +Falls Sie die Console \"{u}ber ein Script ansprechen, denken Sie bitte daran, +dass Sie dieses Limit nicht \"{u}berschreiten. + +\section{Beenden des Console-Programs} +\index[general]{Programm!Beenden des Console-} +\index[general]{Beenden des Console-Programms} +\index[general]{Programm!Beenden des Console-} +\index[general]{Beenden des Console-Programms} + +Normalerweise beenden Sie das Console-Programm durch die Eingabe von {\bf quit} oder {\bf exit}. +Allerdings wartet die Console bis der Director-Dienst das Kommando best\"{a}tigt. Wenn der +Director bereits ein l\"{a}nger laufendes Kommando ausf\"{u}hrt, kann es sein, dass das Beenden +der Console einen Moment dauert. Falls Sie die Console sofort verlassen wollen, k\"{o}nnen Sie +in dem Fall das Kommando {\bf .quit} verwenden. + +Momentan gibt es keinen Weg ein laufendes Kommando nach dem Starten abzubrechen (z.B. mit STRG+C). +Allerdings k\"{o}nnen Sie jederzeit, wenn die Console Sie nach einer weiteren Eingabe fragt, +das aktuelle Kommmando beenden, indem Sie einen Punkt {\bf .} eingeben. Nach der Eingabe des Punktes, +werden Sie automatisch zum Hauptprompt oder bei verschachtelten Abfragen zum passenden letzten Prompt +zur\"{u}ckgeleitet. Bei einigen Eingaben, wie zum Beispiel der Frage nach einem Volume-Namen, wird +der Punkt als Eingabe gewertet und Sie haben beim n\"{a}chsten Prompt die M\"{o}glichkeit, +das Kommando abzubrechen. + +\label{keywords} +\section{Alphabetische Liste der Console-Schl\"{u}sselw\"{o}rter} +\index[general]{Schl\"{u}sselw\"{o}rter!Alphabetische Liste der Console} +\index[general]{Alphabetische Liste der Console-Schl\"{u}sselw\"{o}rter} +\index[general]{Schl\"{u}sselw\"{o}rter!Alphabetische Liste der Console} +\index[general]{Alphabetische Liste der Console-Schl\"{u}sselw\"{o}rter} +Wenn es nicht anders angegeben ist, ben\"{o}tigt jedes der folgenden Schl\"{u}sselw\"{o}rter +(Parameter der Console-Befehle) ein Argument, welches dem Schl\"{u}sselwort, +getrennt durch ein Gleichheitszeichen, folgt. +Ein Beispiel: +\begin{verbatim} +jobid=536 +\end{verbatim} -\subsection*{Alphabetic List of Console Commands} -\index[general]{Commands!Alphabetic List of Console } -\index[general]{Alphabetic List of Console Commands } -\index[console]{Commands!Alphabetic List of Console } -\index[console]{Alphabetic List of Console Commands } -\addcontentsline{toc}{subsection}{Alphabetic List of Console Commands} +Bitte beachten Sie, dass diese Liste durch die st\"{a}ndig weitergehende +Entwicklung eventuell weder komplett, noch in der Richtigen alphabetischen +Reihenfolge sein kann. -The following commands are currently implemented: +\begin{description} +\item [restart] + Parameter des python-Kommandos, + dadurch wird der python-Interpreter neu gestartet. Ben\"{o}tigt keine Argumente. +\item [all] + Parameter des status und show-Kommandos, + dadurch werden alle Komponenten oder Eintr\"{a}ge ausgew\"{a}hlt +\item [allfrompool] + Parameter des update-Kommandos, + gibt an das alle Volumes des (im Parameter pool angegebenen) Pools + aktualisiert werden sollen. +\item [allfrompools] + Parameter des update-Kommandos, + gibt an das alle Volumes aller Pools aktualisiert werden sollen. +\item [before] + Parameter des restore-Kommandos. +\item [bootstrap] + Parameter des restore-Kommandos. +\item [catalog] + im use-Kommando erlaubt, + um den zu benutzenden Katalog auszuw\"{a}hlen +\item [catalogs] + Parameter des show-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [client | fd] +\item [clients] + Parameter des show, list und llist-Kommandos, + bezeichnet alle Clients. Ben\"{o}tigt keine Argumente. +\item [counters] + im show-Kommando erlaubt. + Ben\"{o}tigt keine Argumente. +\item [current] + Parameter des restore-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [days] + definiert die Anzahl der Tage, die das "list nextvol"-Kommando + in Betracht ziehen soll. Der Parameter days kann auch im Kommando + "status director" verwendet werden, um die geplanten Jobs f\"{u}r die + angegebene Anzahl Tage zu zeigen. +\item [devices] + Parameter des show-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [dir | director] +\item [directors] + Parameter des show-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [directory] + Parameter des restore-Kommandos. + Das Argument gibt das wiederherzustellende Verzeichnis an. +\item [enabled] + Dieser Parameter kann bei den Kommandos "update volumes" und "update slots" + verwendet werden. Das Argument kann yes, true, no, false, archived, 0,1 oder 2 sein. + 0 ist identisch mit no oder false, 1 mit yes oder true und 2 mit archived. + Archived Volumes werden weder benutzt noch automatisch aus dem Katalog gel\"{o}scht. + Volumes die nicht enabled sind, werden nicht f\"{u}r das Backup oder die Wiederherstellung benutzt. +\item [done] + wird im restore-Kommando benutzt. + Ben\"{o}tigt keine Argumente. +\item [file] + Parameter des restore-Kommandos. +\item [files] + Parameter des list und llist-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [fileset] +\item [filesets] + Parameter des show-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [help] + Parameter des show-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [jobs] + Parameter des show, list und llist-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [jobmedia] + Parameter des list und llist-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [jobtotals] + Parameter des list und llist-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [jobid] + Parameter des list und llist-Kommandos. + Die jobid ist die numerische Jobid, die im Job-Report angezeigt wird. + Sie ist der Index f\"{u}r die Datenbankeintr\"{a}ge des entsprechenden Jobs. + Da sie f\"{u}r alle in der Datenbank existierenden Jobs einzigartig ist, + kann sie erst wiederverwendet werden, wenn der vorherige Job mit dieser Jobid + aus der Datenbank gel\"{o}scht wurde. +\item [job | jobname] + Parameter des list und llist-Kommandos. + Der Job oder JobName entspricht dem Namen den Sie im Job-Eintr\"{a}g + angegeben haben, somit bezieht er sich auf alle Jobs dieses Namens, + die jemals gelaufen sind und deren Eintr\"{a}ge noch im Katalog existieren. +\item [level] +\item [listing] + Parameter des estimate-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [limit] +\item [messages] + Parameter des show-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [media] + Parameter des list und llist-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [nextvol | nextvolume] + Parameter des list und llist-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [on] + Ben\"{o}tigt keine Argumente. +\item [off] + Ben\"{o}tigt keine Argumente. +\item [pool] +\item [pools] + Parameter des show, list und llist-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [select] + Parameter des restore-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [storages] + Parameter des show-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [schedules] + Parameter des show-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [sd | store | storage] +\item [ujobid] + Parameter des list-Kommandos. + Die ujobid ist eine M\"{o}glichkeit einen Job eindeutig zu identifizieren. + Momentan besteht die ujobid aus dem JobNamen und der Uhrzeit wann der Job gelaufen ist. +\item [volume] +\item [volumes] + Parameter des list und llist-Kommandos. + Ben\"{o}tigt keine Argumente. +\item [where] + Parameter des restore-Kommandos. +\item [yes] + Parameter des restore-Kommandos. + Ben\"{o}tigt keine Argumente. +\end{description} + +\label{list} +\section{Alphabetische Liste der Console-Kommandos} +\index[general]{Kommandos!Alphabetische Liste der Console-} +\index[general]{Alphabetische Liste der Console-Kommandos} +\index[general]{Kommandos!Alphabetische Liste der Console-} +\index[general]{Alphabetische Liste der Console-Kommandos} + +Die folgenden Kommandos sind derzeit verf\"{u}gbar: \begin{description} \item [{add [pool=\lt{}pool-name\gt{} storage=\lt{}storage\gt{} jobid=\lt{}JobId\gt{}]} ] - \index[console]{add} -This command is used to add Volumes to an existing Pool. The Volume names -entered are placed in the Catalog and thus become available for backup -operations. Normally, the {\bf label} command is used rather than this -command because the {\bf label} command labels the physical media (tape) and -does the equivalent of the {\bf add} command. This command affects only the -Catalog and not the physical media (data on Volumes). The physical media must -exist and be labeled before use (usually with the {\bf label} command). This -command can, however, be useful if you wish to add a number of Volumes to the -Pool that will be physically labeled at a later time. It can also be useful -if you are importing a tape from another site. Please see the {\bf label} -command below for the list of legal characters in a Volume name. + \index[general]{add} + Das add-Kommando wird benutzt um Volumes zu einem bestehenden Pool + hinzuzuf\"{u}gen. Dazu wird der Volume-Eintrag in der Datenbank erzeugt + und das Volume dem Pool zugeordnet. Dabei erfolgt kein physikalischer Zugriff + auf das Volume. Nach dem hinzuf\"{u}gen zu einem Pool, geht Bacula davon + aus, dass das Volume wirklich existiert und auch bereits gelabelt ist. + Dises Kommando wird normalerweise nicht benutzt, da Bacula die Volumes + automatisch beim labeln einem Pool hinzuf\"{u}gt. Allerdings ist es hilfreich, + falls Sie ein Volume aus dem Katalog gel\"{o}scht haben und es sp\"{a}ter wieder + hinzuf\"{u}gen wollen. + + Typischerweise wird das label-Kommando anstelle des add-Kommandos benutzt, da + es au{\ss}er dem labeln des physikalischen Volumes, die identischen Schritte + wie das add-Kommando ausf\"{u}hrt. Das add-Kommando \"{a}ndert nur die Katalog-Eintr\"{a}ge + und nicht die physikalischen Volumes. Die physikalischen Volumes m\"{u}ssen + vorhanden und gelabelt sein (normalerweise mit dem label-Kommando). Trotzdem + kann das add-Kommando sinnvoll sein, wenn Sie zum Beispiel eine bestimmte Anzahl + von Volumes einem Pool hinzuf\"{u}gen wollen, wobei die Volumes erst zu einem + sp\"{a}teren Zeitpunkt gelabelt werden. Auch um ein Volume eines anderen Bacula-Systems + (bzw. anderen Director-Dienstes) zu importieren, kann das add-Kommando benutzt werden. + Die erlaubten Zeichen f\"{u}r einen Volume-Namen finden Sie weiter unten + in der Beschreibung des label-Kommandos. \item [autodisplay on/off] - \index[console]{autodisplay on/off} - This command accepts {\bf on} or {\bf off} as an argument, and turns - auto-display of messages on or off respectively. The default for the - console program is {\bf off}, which means that you will be notified when - there are console messages pending, but they will not automatically be - displayed. The default for the gnome-console program is {\bf on}, which - means that messages will be displayed when they are received (usually - within 5 seconds of them being generated). - - When autodisplay is turned off, you must explicitly retrieve the - messages with the {\bf messages} command. When autodisplay is turned - on, the messages will be displayed on the console as they are received. + \index[general]{autodisplay on/off} + Das autodisplay-Kommando kennt zwei Parameter: {\bf on} und {\bf off}, + wodurch die automatische Anzeige von Nachrichten in der Console entsprechend + ein- oder ausgeschaltet wird. Der Standardwert ist {\bf off}, was bedeutet, dass + Sie \"{u}ber neue Meldungen benachrichtigt werden, sie aber nicht automatisch + angezeigt werden. In der GNOME-Console ist das automatische Anzeigen dagegen + standardm\"{a}{\ss}ig aktiviert, d.h. neue Meldungen werden automatisch + ausgegeben, wenn sie vom Director-Dienst empfangen wurden (typischerweise innerhalb von + ca. 5 Sekunden nachdem sie generiert wurden). + + Wenn autodisplay auf off steht, m\"{u}ssen Sie neu Nachrichten mit dem + {\bf messages}-Kommando abrufen, um sie sich anzeigen zu lassen. + Wenn autodiplay auf on steht, werden die Nachrichten angezeigt, sobald die Console sie + empfangen hat. \item [automount on/off] - \index[console]{automount on/off} - This command accepts {\bf on} or {\bf off} as the argument, and turns - auto-mounting of the tape after a {\bf label} command on or off - respectively. The default is {\bf on}. If {\bf automount} is turned - off, you must explicitly {\bf mount} the tape after a label command to - use it. - -\item [{cancel [jobid=\lt{}number\gt{} job=\lt{}job-name\gt{}]}] - \index[console]{cancel jobid} - This command is used to cancel a job and accepts {\bf jobid=nnn} or {\bf - job=xxx} as an argument where nnn is replaced by the JobId and xxx is - replaced by the job name. If you do not specify a keyword, the Console - program will prompt you with the names of all the active jobs allowing - you to choose one. - - Once a Job is marked to be canceled, it may take a bit of time - (generally within a minute) before it actually terminates, depending on - what operations it is doing. - -\item [{ create [pool=\lt{}pool-name\gt{}]}] - \index[console]{create pool} - This command is used to create a Pool record in the database using the - Pool resource record defined in the Director's configuration file. So - in a sense, this command simply transfers the information from the Pool - resource in the configuration file into the Catalog. Normally this - command is done automatically for you when the Director starts providing - the Pool is referenced within a Job resource. If you use this command - on an existing Pool, it will automatically update the Catalog to have - the same information as the Pool resource. After creating a Pool, you - will most likely use the {\bf label} command to label one or more - volumes and add their names to the Media database. - - When starting a Job, if Bacula determines that there is no Pool record - in the database, but there is a Pool resource of the appropriate name, - it will create it for you. If you want the Pool record to appear in the - database immediately, simply use this command to force it to be created. - -\item [{ delete [volume=\lt{}vol-name\gt{} pool=\lt{}pool-name\gt{} job - jobid=\lt{}id\gt{}] }] - \index[console]{delete} - The delete command is used to delete a Volume, Pool or Job record from - the Catalog as well as all associated catalog Volume records that were - created. This command operates only on the Catalog database and has no - effect on the actual data written to a Volume. This command can be - dangerous and we strongly recommend that you do not use it unless you - know what you are doing. - - If the keyword {\bf Volume} appears on the command line, the named - Volume will be deleted from the catalog, if the keyword {\bf Pool} - appears on the command line, a Pool will be deleted, and if the keyword - {\bf Job} appears on the command line, a Job and all its associated - records (File and JobMedia) will be deleted from the catalog. The full - form of this command is: - -delete pool=\lt{}pool-name\gt{} - - or - -delete volume=\lt{}volume-name\gt{} pool=\lt{}pool-name\gt{} or - -delete JobId=\lt{}job-id\gt{} JobId=\lt{}job-id2\gt{} ... or - -delete Job JobId=n,m,o-r,t ... - - The first form deletes a Pool record from the catalog database. The - second form deletes a Volume record from the specified pool in the - catalog database. The third form deletes the specified Job record from - the catalog database. The last form deletes JobId records for JobIds - n,m,o,p, q,r, and t. Where each one of the n,m,... is, of course, a - number. + \index[general]{automount on/off} + Das automount-Kommando kennt zwei Parameter: {\bf on} und {\bf off}, + die entsprechend das automatische mounten nach dem labeln ({\bf label}-Kommando) + an- oder ausschalten. Der Standardwert ist on. Wenn automount ausgeschaltet ist, + m\"{u}ssen Sie nach dem labeln eines Volumes dieses explizit mounten ({\bf mount}-Kommando), + um es benutzen zu k\"{o}nnen. + +\item [{cancel [jobid=\lt{}number\gt{} job=\lt{}job-name\gt{} ujobid=\lt{}unique-jobid\gt{}]}] + \index[general]{cancel jobid} + Das cancel-Kommande wird benutzt um einen Job abzubrechen und kennt die + Parameter {\bf jobid=nnn} or {\bf job=xxx}, wober jobid die numerische JobID ist + und job der Job-Name. Wenn Sie weder job noch jobid angeben, listet die Console + alle in Frage kommenden Jobs auf und erlaubt Ihnen aus dieser Liste den abzubrechenden + Job auszuw\"{a}hlen. + + Wenn ein Job als abzubrechen gekennzeichnet wurde, kann es einige Zeit dauern, + bis er tats\"{a}chlich beendet wird (normalerweise innerhalb einer Minute). + Dise Zeit ist aber abh\"{a}ngig davon, was der Job gerade tut. + +\item [{create [pool=\lt{}pool-name\gt{}]}] + \index[general]{create pool} + Das create-Kommando wird normalerweise nicht benutzt, da die Pool-Eintr\"{a}ge + im Katalog automatisch angelegt werden, wenn der Director-Dienst startet und + er seine Pool-Konfiguration aus den Konfigurations-Dateien einliest. Falls ben\"{o}tigt, + kann mit diesem Kommando ein Pool-Eintrag in der Katalog-Datenbank erstellt werden, + der auf einem Pool-Konfigurations-Eintrag basiert, der in der Director-Dienst-Konfiguration + enthalten ist. Einfach gesagt \"{u}bernimmt dieses Kommando nur den Pool-Eintrag aus der + Konfiguration in die Datenbank. Normalerweise wird diese Kommando automatisch ausgef\"{u}hrt, + wenn der Pool zum ersten mal in einem Job-Eintrag benutzt wird. Wenn Sie dieses Kommando + auf einem bestehenden Pool ausf\"{u}hren, wird der Katalog sofort aktualisiert und enth\"{a}lt + dann die identische Pool-Konfiguration, wie die Konfigurations-Dateien. Nach dem Erstellen + eines Pool in den Konfigurations-Dateien werden Sie allerdings h\"{o}chstwahrscheinlich + das {\bf label}-Kommando benutzen, um ein oder mehrere Volumes dem neuen Pool hinzuzuf\"{u}gen + und die entsprechenden Eintr\"{a}ge im Katalog zu erzeugen, anstatt des create-Kommandos. + + Wenn ein Job gestartet wird und Bacula bemerkt, dass keine passender Pool-Eintrag im Katalog ist + aber in den Konfigurations-Dateien, dann wird der Pool im Katalog automatisch angelegt. + Wenn Sie m\"{o}chten, dass der Pool-Eintrag sofort (ohne das ein Job mit diesem Pool gestartet wurde) + im Katalog erscheint, k\"{o}nnen Sie einfach diese Kommando ausf\"{u}hren, um diesen Vorgang + zu erzwingen. + +\item [{delete [volume=\lt{}vol-name\gt{} pool=\lt{}pool-name\gt{} job + jobid=\lt{}id\gt{}]}] + \index[general]{delete} + Das delete-Kommando wird benutzt um ein Volume, einen Pool oder einen Job-Eintrag, + sowie jeweils alle dazugeh\"{o}rigen Datenbank-Eintr\"{a}ge, aus dem Katalog zu + entfernen. Das Kommando \"{a}ndert nur die Katalog-Datenbank, es hat keine + Auswirkungen auf die Konfigurations-Dateien oder die Daten auf den Volumes. + Wir empfehlen Ihnen dieses Kommando nur zu benutzen, wenn Sie wirklich wissen was Sie tun. + + Wenn der Parameter {\bf Volume} angegeben wird, wird das entsprechende Volume aus dem Katalog + gel\"{o}scht, wenn ein {\bf Pool} angeben wird, der entsprechende Pool und bei Angabe des Parameters + {\bf Job} der entsprechende Job, sowie alle zu diesem Job geh\"{o}hrenden JobMedia- und Datei-Eintr\"{a}ge. + Das delete-Kommando kann folgenderma{\ss}en aufgerufen werden: + +\begin{verbatim} +delete pool= oder +\end{verbatim} + +\begin{verbatim} +delete volume=>volume-name> pool=>pool-name> oder +\end{verbatim} + +\begin{verbatim} +delete JobId=>job-id> JobId=>job-id2> ... oder +\end{verbatim} + +\begin{verbatim} +delete Job JobId=n,m,o-r,t ... +\end{verbatim} + + Das erste Beispiel l\"{o}scht einen Pool-Eintrag aus der Katalog-Datenbank. + Das zweite l\"{o}scht einen Volume-Eintrag aus dem angegebenen Pool + und das dritte Beispiel l\"{o}scht die genannten JobID-Eintr\"{a}ge aus + dem Katalog. Es werden die JobIDs n, m, o, p, q, r und t gel\"{o}scht, + wobei die JobID's n, m, o ... nat\"{u}rlich Zahlen entsprechen m\"{u}ssen. + Wie Sie sehen kann das delete-Kommando Listen von JobIDs und auch Bereiche + (z.B. o-r) verarbeiten. + +\item [disable job\lt{}job-name\gt{}] + \index[general]{disable} + Das disable-Kommando erlaubt es Ihnen, zu verhindern das ein Job + automatisch durch den Director-Dienst ausgef\"{u}hrt wird. Wenn Sie den Director-Dienst + neu starten, wird der Status des Jobs wieder auf den Wert gesetzt, der + im Job-Eintrag der Director-Konfiguration eingetragen ist. + +\item [enable job\lt{}job-name\gt{}] + \index[general]{enable} + Das enable-Kommando erlaubt es Ihnen, einen Job der durch das + disable-Kommando aus der automatischen Job-Planung entfernt wurde, + wieder zu aktivieren. Wenn Sie den Director-Dienst neu starten, + wird der Status des Jobs wieder auf den Wert gesetzt, der im + Job-Eintrag der Director-Konfiguration eingetragen ist. \label{estimate} \item [estimate] - \index[console]{estimate} - Using this command, you can get an idea how many files will be backed - up, or if you are unsure about your Include statements in your FileSet, - you can test them without doing an actual backup. The default is to - assume a Full backup. However, you can override this by specifying a - {\bf level=Incremental} or {\bf level=Differential} on the command line. - A Job name must be specified or you will be prompted for one, and - optionally a Client and FileSet may be specified on the command line. - It then contacts the client which computes the number of files and bytes - that would be backed up. Please note that this is an estimate - calculated from the number of blocks in the file rather than by reading - the actual bytes. As such, the estimated backup size will generally be - larger than an actual backup. - - Optionally you may specify the keyword {\bf listing} in which case, all the - files to be backed up will be listed. Note, it could take quite some time to - display them if the backup is large. The full form is: - -estimate job=\lt{}job-name\gt{} listing client=\lt{}client-name\gt{} -fileset=\lt{}fileset-name\gt{} level=\lt{}level-name\gt{} - - Specification of the {\bf job} is sufficient, but you can also override - the client, fileset and/or level by specifying them on the estimate - command line. - + \index[general]{estimate} + Mit dem estimate-Kommando k\"{o}nnen Sie sich anzeigen lassen, welche + Dateien durch einen bestimmten Job gesichert werden, ohne diesen Job + ausf\"{u}hren zu m\"{u}ssen. Standardm\"{a}{\ss}ig wird dabei ein Voll-Backup + angenommen. Sie k\"{o}nnen das aber durch den Parameter level entsprechend anpassen, + indem Sie zum Beispiel {\bf level=Incremental} oder {\bf level=Differential} an das + estimate-Kommando mit \"{u}bergeben. Wenn Sie im Aufruf des Kommandos keinen Job-Name + angegeben, wird die Console Ihnen ein Auswahlliste der m\"{o}glichen Jobs anzeigen. + Zus\"{a}tzlich k\"{o}nnen Sie noch die Parameter Client und FileSet angeben. Nach dem + Starten des Kommandos wird der Director-Dienst den Client kontaktieren der daraufhin + eine Liste der zu sichernden Dateien mit ihrer Gr\"{o}{\ss}e zur\"{u}ckgibt. Bitte beachten + Sie, dass das estimate-Kommando nur die Anzahl der von der Datei belegten Bl\"{o}cke zur + Bestimmung der Dateigr\"{o}{\ss}e einbezieht, so dass die Datenmenge die das estimate-Kommando + anzeigt immer etwas gr\"{o}{\ss}er sein wird, als das echte Backup. + + Wahlweise k\"{o}nnen Sie noch den Parameter {\bf listing} mit \"{u}bergeben, + dann wird eine Liste aller zu sichernden Dateien ausgegeben. Abh\"{a}ngig vom FileSet + kann diese Liste sehr lang sein und es daher einige Zeit dauern, alle Dateien anzuzeigen. + Das estimate-Kommando kann folgenderma{\ss}en aufgerufen werden: + + +\begin{verbatim} +estimate job= listing client= + fileset= level= +\end{verbatim} -As an example, you might do: + die Angabe des Jobs ist ausreichend, aber Sie k\"{o}nnen durch Angabe + des Clients, FileSets und/oder des Backup-Levels die entsprechenden Werte \"{u}berschreiben. + +Zum Beispiel k\"{o}nnen Sie folgendes eingeben: \footnotesize \begin{verbatim} @@ -271,42 +472,60 @@ As an example, you might do: \end{verbatim} \normalsize -which will do a full listing of all files to be backed up for the Job {\bf -NightlySave} during an Incremental save and put it in the file {\bf -/tmp/listing}. + durch das erste Kommando wird die Ausgabe der Console in die Datei + {\bf /tmp/listing} umgeleitet. Dann wird durch das estimate-Kommando + eine Liste aller Dateien erstellt, die beim n\"{a}chsten inkrementellen + Backup des Jobs {\bf NightlySave} gesichert werden. Die Console gibt dabei keine + Meldungen aus, da die Ausgabe ja auf die Datei /tmp/listing zeigt. Durch + das dritte Kommando @output wird die Umleitung der Ausgabe wieder aufgehoben. + Beachten Sie bitte, dass die angezeigten Bytes in der Ausgabe des estimate-Kommandos + \"{u}ber die Angabe der Dateigr\"{o}{\ss}e im Verzeichnis-Eintrag bestimmt wird. + Das kann zu gro{\ss}en Abweichungen bei der ermittelten Backup-Gr\"{o}{\ss}e f\"{u}hren, + falls im FileSet \elink{sparse}{http://de.wikipedia.org/wiki/Sparse-Datei}-Dateien + vorhanden sind. sparse-Dateien finden sich oft auf 64-Bit-Maschinen, wo sie f\"{u}r + bestimmte Systemdateien benutzt werden. Die angezeigten Bytes sind die Gesammtgr\"{o}{\ss}e + der gesicherten Dateien, wenn die FileSet-Option "sparse" nicht gesetzt ist. + Momentan gibt es keinen Weg, um mit dem estimate-Kommando die echte Backup-Gr\"{o}{\ss}e + f\"{u}r ein FileSet anzuzeigen, bei dem die sparse-Option gesetzt ist. \item [help] - \index[console]{help} - This command displays the list of commands available. + \index[general]{help} + Das help-Kommando zeigt alle verf\"{u}gbaren Kommandos mit einer kurzen Beschreibung an. \item [label] - \index[console]{label} - \index[console]{relabel} \index[general]{label} \index[general]{relabel} - This command is used to label physical volumes. The full form of this command - is: - -label storage=\lt{}storage-name\gt{} volume=\lt{}volume-name\gt{} -slot=\lt{}slot\gt{} - - If you leave out any part, you will be prompted for it. The media type - is automatically taken from the Storage resource definition that you - supply. Once the necessary information is obtained, the Console program - contacts the specified Storage daemon and requests that the tape be - labeled. If the tape labeling is successful, the Console program will - create a Volume record in the appropriate Pool. - - The Volume name is restricted to letters, numbers, and the special - characters hyphen ({\bf -}), underscore ({\bf \_}), colon ({\bf :}), and - period ({\bf .}). All other characters including a space are illegal. - This restriction is to ensure good readability of Volume names to reduce - operator errors. - - Please note, when labeling a blank tape, Bacula will get {\bf read I/O - error} when it attempts to ensure that the tape is already labeled. If - you wish to avoid getting these messages, please write an EOF mark on - your tape before attempting to label it: + \index[general]{label} + \index[general]{relabel} + Das label-Kommando wird benutzt um physikalische Volumes zu labeln. + Das label-Kommando kann folgenderma{\ss}en aufgerufen werden: + +\begin{verbatim} +label storage=>storage-name> volume=>volume-name> slot=>slot> +\end{verbatim} + + Wenn Sie einen der Parameter storage, volume oder slot nicht angeben, + werden Sie von der Console danach gefragt. Der Media-Typ wird automatisch + anhand des Storage-Eintrags in der Director-Konfiguration gesetzt. + Wenn alle ben\"{o}tigten Informationen vorliegen, kontaktiert die + Console den angegebenen Storage-Dienst und sendet das label-Kommando. + Wenn das labeln erfolgreich war, wird ein entsprechender Volume-Eintrag + im passenden Pool erzeugt. + + Im Volume-Name d\"{u}rfen Buchstaben, Zahlen und folgende Sonderzeichen + verwendet werden: Binde- ({\bf -}) und Unterstrich ({\bf \_}), + Doppelpunkt ({\bf :}) und Punkt ({\bf .}). Alle anderen Zeichen, + einschlie{\ss}lich des Leerzeichens, sind nicht erlaubt. + Durch diese Einschr\"{a}nkung soll sichergestellt werden, dass + die Volume-Namen gut lesbar sind und es nicht zu Benutzerfehlern + aufgrund von Sonderzeichen im Namen kommt. + + Bitte beachten Sie, dass Bacula einen Ein-/Ausgabefehler meldet, + wenn ein neues bzw. komplett leeres Volume gelabelt wird. Bacula + versucht den ersten Block des Volumes zu lesen, um ein eventuell schon + vorhandenes label nicht zu \"{u}berschreiben, dieser Versuch erzeugt + den oben genannten Fehler. Um diesen Fehler zu vermeiden, k\"{o}nnen Sie + mit den folgenden Shell-Kommandos ein EOF am den Anfang des Volumes schreiben: \footnotesize \begin{verbatim} @@ -316,89 +535,106 @@ slot=\lt{}slot\gt{} \end{verbatim} \normalsize -The label command can fail for a number of reasons: +Das label-Kommando kann aufgrund verschiedener Gr\"{u}nde fehlschlagen: \begin{enumerate} -\item The Volume name you specify is already in the Volume database. -\item The Storage daemon has a tape already mounted on the device, in which - case you must {\bf unmount} the device, insert a blank tape, then do the - {\bf label} command. -\item The tape in the device is already a Bacula labeled tape. (Bacula will - never relabel a Bacula labeled tape unless it is recycled and you use the - {\bf relabel} command). -\item There is no tape in the drive. +\item Der angegebene Volume-Name existiert schon in der Katalog-Datenbank + +\item Der Storage-Dienst hat schon ein Tape oder anderes Volume in dem + ben\"{o}tigten Ger\"{a}t gemountet. In diesem Fall m\"{u}ssen Sie + das Ger\"{a}t erst mit dem {\bf unmount}-Kommando freigeben und dann + ein leeres Volume zum labeln einlegen. + +\item Das Volume ist bereits gelabelt. Bacula wird niemals ein bestehendes label + \"{u}berschreiben, solange das Volume nicht abgelaufen ist und Sie das + {\bf relabel}-Kommando verwenden. + +\item Es ist kein Volume im Ger\"{a}t. \end{enumerate} -There are two ways to relabel a volume that already has a Bacula label. The -brute force method is to write an end of file mark on the tape using the -system {\bf mt} program, something like the following: +Es gibt zwei M\"{o}glichkeiten ein bestehendes Bacula-label zu \"{u}berschreiben. +Die brutale Methode ist es, einfach ein EOF an den Anfang des Volumes zu schreiben +(dabei wird das bestehende label durch das EOF \"{u}berschrieben). +Mit dem Programm {\bf mt} k\"{o}nnen Sie das zum Beispiel so tun: \footnotesize \begin{verbatim} - mt -f /dev/st0 rewind - mt -f /dev/st0 weof + [user@host]$ mt -f /dev/st0 rewind + [user@host]$ mt -f /dev/st0 weof \end{verbatim} \normalsize -Then you use the {\bf label} command to add a new label. However, this could -leave traces of the old volume in the catalog. - -The preferable method to relabel a tape is to first {\bf purge} the volume, -either automatically, or explicitly with the {\bf purge} command, then use -the {\bf relabel} command described below. - -If your autochanger has barcode labels, you can label all the Volumes in your -autochanger one after another by using the {\bf label barcodes} command. For -each tape in the changer containing a barcode, Bacula will mount the tape and -then label it with the same name as the barcode. An appropriate Media record -will also be created in the catalog. Any barcode that begins with the same -characters as specified on the "CleaningPrefix=xxx" directive in the -Director's Pool resource, will be -treated as a cleaning tape, and will not be labeled. However, -an entry for the cleaning tape will be created in -the catalog. For example with: - +Ein Festplatten-Volume k\"{o}nnen Sie auch manuell l\"{o}schen. + +Danach benutzten Sie das label-Kommando, um ein neues label zu erzeugen. +Allerdings kann diese Vorgehensweise Spuren des alten Volumes in der +Katalog-Datenbank hinterlassen. + +Die bevorzugte Methode ein Volume neu zu labeln sollte es sein, +zuerst das Volume als bereinigt (purged) zu markieren. Das passiert entweder automatisch, +wenn die Aufbewahrungszeit (Volume-Retention) f\"{u}r das Volume abl\"{a}uft, +oder kann aber auch mit dem {\bf purge}-Kommando erzwungen werden. +Danach k\"{o}nnen Sie das {\bf relabel}-Kommando, wie weiter unten beschrieben, verwenden. + +Falls Ihr Autochanger Barcode-Labels unterst\"{u}tzt, k\"{o}nnen Sie +alle Volumes im Autochanger, eins nach dem anderen, mit dem Kommando +{\bf label barcodes} labeln. Dabei wird jedes Tape mit Barcode nacheinander +im Laufwerk gemountet und mit der auf dem Barcode enthaltenen Zeichenfolge +als Namen gelabelt. Ein entsprechender Katalog-Eintrag wird automatisch +mit erzeugt. Jedes Volume mit einem Barcode der mit den Zeichen beginnt, +die im Pool-Eintrag als CleaningPrefix konfiguriert sind, wird wie ein +Reinigungsband behandelt und nicht gelabelt. Allerdings wird dabei auch +ein Katalog-Eintrag f\"{u}r das Reinigungsband erstellt. + +Als Beispiel, mit dem Eintrag: \footnotesize \begin{verbatim} Pool { Name ... Cleaning Prefix = "CLN" - } - + } \end{verbatim} \normalsize -Any slot containing a barcode of CLNxxxx will be treated as a cleaning tape -and will not be mounted. Note, the full form of the command is: +wird jedes Tape, dessen Barcode mit CLN beginnt, als Reinigungsband betrachtet +und nicht automatisch gemountet. +Das label-Kommando kann folgenderma{\ss}en aufgerufen werden: \footnotesize \begin{verbatim} -update storage=xxx pool=yyy slots=1-5,10 barcodes +label storage=xxx pool=yyy slots=1-5,10 barcodes \end{verbatim} \normalsize \item [list] - \index[console]{list} - The list command lists the requested contents of the Catalog. The - various fields of each record are listed on a single line. The various - forms of the list command are: + \index[general]{list} + Das list-Kommando zeigt den angegebenen Inhalt der Katalog-Datenbank an. + Die verschiedenen Felder jedes Eintrags werden in einer Zeile ausgegeben. + Die verschiedenen M\"{o}glichkeiten sind: \footnotesize \begin{verbatim} list jobs - list jobid=\lt{}id\gt{} + list jobid= (zeigt jobid an) + + list ujobid (zeigt den job mit dem Namen an) - list job=\lt{}job-name\gt{} + list job= (zeigt alle Jobs mit dem Namen an) + + list jobname= (identisch mit dem oberen) + + Im oberen Beispiel k\"{o}nnen Sie auch den Parameter limit=nn + hinzuf\"{u}gen, um die Ausgabe des Kommandos auf nn Jobs zu begrenzen list jobmedia - list jobmedia jobid=\lt{}id\gt{} + list jobmedia jobid= - list jobmedia job=\lt{}job-name\gt{} + list jobmedia job= - list files jobid=\lt{}id\gt{} + list files jobid= - list files job=\lt{}job-name\gt{} + list files job= list pools @@ -408,52 +644,56 @@ update storage=xxx pool=yyy slots=1-5,10 barcodes list volumes - list volumes jobid=\lt{}id\gt{} + list volumes jobid= - list volumes pool=\lt{}pool-name\gt{} + list volumes pool= - list volumes job=\lt{}job-name\gt{} + list volumes job= - list volume=\lt{}volume-name\gt{} + list volume= - list nextvolume job=\lt{}job-name\gt{} + list nextvolume job= - list nextvol job=\lt{}job-name\gt{} - - list nextvol job=\lt{}job-name\gt{} days=nnn - + list nextvol job= + list nextvol job= days=nnn \end{verbatim} \normalsize - What most of the above commands do should be more or less obvious. In - general if you do not specify all the command line arguments, the - command will prompt you for what is needed. - - The {\bf list nextvol} command will print the Volume name to be used by - the specified job. You should be aware that exactly what Volume will be - used depends on a lot of factors including the time and what a prior job - will do. It may fill a tape that is not full when you issue this - command. As a consequence, this command will give you a good estimate - of what Volume will be used but not a definitive answer. In addition, - this command may have certain side effect because it runs through the - same algorithm as a job, which means it may automatically purge or - recycle a Volume. By default, the job specified must run within the - next two days or no volume will be found. You can, however, use the - {\bf days=nnn} specification to specify up to 50 days. For example, - if on Friday, you want to see what Volume will be needed on Monday, - for job MyJob, you would use {\bf list nextvol job=MyJob days=3}. - - If you wish to add specialized commands that list the contents of the - catalog, you can do so by adding them to the {\bf query.sql} file. - However, this takes some knowledge of programming SQL. Please see the - {\bf query} command below for additional information. See below for - listing the full contents of a catalog record with the {\bf llist} - command. - - As an example, the command {\bf list pools} might produce the following - output: + Die meisten der oben genannten Parameter sollten selbsterkl\"{a}rend sein. + \"{U}blicherweise werden Sie, falls Sie nicht gen\"{u}gend Parameter angeben, + von der Console nach den fehlenden Informationen gefragt. + + Das {\bf list nextvol}-Kommando gibt den Volume-Namen aus, der von dem angegebenen Job + beim n\"{a}chsten Backup benutzt werden wird. Allerdings sollten Sie beachten, dass + das tats\"{a}chlich benutzte Volume von einer Reihe von Faktoren, wie zum Beispiel + von den vorher laufenden Jobs oder der Zeit wann der Job l\"{a}uft, abh\"{a}ngen kann. + Eventuell wird ein Tape schon voll sein, das aber noch freien Platz hatte, als Sie + das Kommando ausf\"{u}hrten. Dieses Kommando gibt Ihnen also nur einen Hinweis darauf, + welches Tape benutzt werden k\"{o}nnte, aber es kann keine definitive Aussage dar\"{u}ber treffen. + Zus\"{a}tzlich kann dieses Kommando mehrere Seiteneffekte haben, da es den selben + Algorithmus durchl\"{a}uft, wie ein echter Backup-Job. Das bedeutet, dass es dazu f\"{u}hren kann, + dass aufgrund dieses Kommandos Volumes automatisch recycled oder gelöscht (purged) werden. + Standardm\"{a}{\ss}ig muss der angegebene Job innerhalb der n\"{a}chsten zwei Tage laufen, + ansonsten wird kein Volume f\"{u}r den Job gefunden. Allerdings k\"{o}nnen Sie durch Angabe des Parameters + {\bf days=nnn} bis zu 50 Tage in die Zukunft angeben, die das Kommando in die Berechnung + mit einbeziehen soll. Falls Sie, zum Beispiel, Freitags sehen wollen, welches Volume am Montag + vorrausssichtlich benutzt wird, k\"{o}nnen Sie folgendes Kommando benutzen: + {\bf list nextvol job=MyJob days=3}. + + Wenn Sie bestimmte, von Ihnen \"{o}fter ben\"{o}tigte, eigene Kommandos anlegen wollen + um sich bestimmte Inhalte der Katalog-Datenbank anzeigen zu lassen, + k\"{o}nnen Sie diese der Datei {\bf query.sql} hinzu\"{u}gen. Allerdings + erfordert das einiges an Wissen \"{u}ber SQL-Kommandos. Lesen Sie dazu bitte + den Abschnitt \"{u}ber das {\bf query}-Kommando in diesem Kapitel. + + Weiter unten finden Sie auch eine Beispiel-Ausgabe des {\bf llist}-Kommandos, + das Ihnen den kompletten Inhalt des Katalogs zu einem bestimmten Konfigurations-Eintrag + anzeigt. + + Als ein Beispiel, kann Ihnen der Aufruf des Kommandos {\bf list pools} die folgenden + Ausgaben anzeigen: \footnotesize \begin{verbatim} @@ -482,7 +722,7 @@ update storage=xxx pool=yyy slots=1-5,10 barcodes file, you use the Console command {\bf show clients}. \item [llist] - \index[console]{llist} + \index[general]{llist} The llist or "long list" command takes all the same arguments that the list command described above does. The difference is that the llist command list the full contents of each database record selected. It @@ -510,6 +750,7 @@ update storage=xxx pool=yyy slots=1-5,10 barcodes Recycle: 1 PoolType: Backup LabelFormat: * + PoolId: 2 Name: Recycle NumVols: 0 @@ -530,22 +771,24 @@ update storage=xxx pool=yyy slots=1-5,10 barcodes \normalsize \item [messages] - \index[console]{messages} + \index[general]{messages} This command causes any pending console messages to be immediately displayed. \item [mount] - \index[console]{mount} + \index[general]{mount} The mount command is used to get Bacula to read a volume on a physical device. It is a way to tell Bacula that you have mounted a tape and - that Bacula should examine the tape. This command is used only after - there was no Volume in a drive and Bacula requests you to mount a new + that Bacula should examine the tape. This command is normally + used only after there was no Volume in a drive and Bacula requests you to mount a new Volume or when you have specifically unmounted a Volume with the {\bf unmount} console command, which causes Bacula to close the drive. If you have an autoloader, the mount command will not cause Bacula to - operate the autoloader. The various forms of the mount command are: + operate the autoloader unless you specify a {\bf slot} and possibly a + {\bf drive}. The various forms of the mount command are: -mount storage=\lt{}storage-name\gt{} +mount storage=\lt{}storage-name\gt{} [ slot=\lt{}num\gt{} ] [ + drive=\lt{}num\gt{} ] mount [ jobid=\lt{}id\gt{} | job=\lt{}job-name\gt{} ] @@ -555,7 +798,7 @@ mount [ jobid=\lt{}id\gt{} | job=\lt{}job-name\gt{} ] program. \item[python] - \index[console]{python} + \index[general]{python} The python command takes a single argument {\bf restart}: python restart @@ -565,11 +808,11 @@ python restart Python interpreter is initialized, there is no other way to make it accept any changes to the startup script {\bf DirStartUp.py}. For more details on Python scripting, please see the \ilink{Python - Scripting}{_ChapterStart60} chapter of this manual. + Scripting}{PythonChapter} chapter of this manual. \label{ManualPruning} \item [prune] - \index[console]{prune} + \index[general]{prune} The Prune command allows you to safely remove expired database records from Jobs and Volumes. This command works only on the Catalog database and does not affect data written to Volumes. In all cases, the Prune @@ -585,7 +828,7 @@ volume=\lt{}volume-name\gt{} Append, otherwise the pruning will not take place. \item [purge] - \index[console]{purge} + \index[general]{purge} The Purge command will delete associated Catalog database records from Jobs and Volumes without considering the retention period. {\bf Purge} works only on the Catalog database and does not affect data written to @@ -606,7 +849,7 @@ For the {\bf purge} command to work on Volume Catalog database records the The actual data written to the Volume will be unaffected by this command. \item [relabel] - \index[console]{relabel} + \index[general]{relabel} \index[general]{relabel} This command is used to label physical volumes. The full form of this command is: @@ -624,7 +867,7 @@ relabel storage=\lt{}storage-name\gt{} oldvolume=\lt{}old-volume-name\gt{} on the Volume is lost and cannot be recovered. \item [release] - \index[console]{release} + \index[general]{release} This command is used to cause the Storage daemon to rewind (release) the current tape in the drive, and to re-read the Volume label the next time the tape is used. @@ -641,7 +884,7 @@ release storage=\lt{}storage-name\gt{} command to cause Bacula to completely release (close) the device. \item [reload] - \index[console]{reload} + \index[general]{reload} The reload command causes the Director to re-read its configuration file and apply the new values. The new values will take effect immediately for all new jobs. However, if you change schedules, @@ -654,7 +897,7 @@ release storage=\lt{}storage-name\gt{} will queued until all jobs that were running before issuing the reload terminate, at which time the old config values will be released from memory. The Directory permits keeping up to - 10 prior set of configurations before it will refuse a reload + ten prior set of configurations before it will refuse a reload command. Once at least one old set of config values has been released it will again accept new reload commands. @@ -664,9 +907,9 @@ release storage=\lt{}storage-name\gt{} configuration while Bacula is running, it is advisable to restart the Director at the next convenient opportunity. - +\label{restore_command} \item [restore] - \index[console]{restore} + \index[general]{restore} The restore command allows you to select one or more Jobs (JobIds) to be restored using various methods. Once the JobIds are selected, the File records for those Jobs are placed in an internal Bacula directory tree, @@ -675,8 +918,9 @@ release storage=\lt{}storage-name\gt{} to be restored. This mode is somewhat similar to the standard Unix {\bf restore} program's interactive file selection mode. -restore storage=\lt{}storage-name\gt{} client=\lt{}client-name\gt{} +restore storage=\lt{}storage-name\gt{} client=\lt{}backup-client-name\gt{} where=\lt{}path\gt{} pool=\lt{}pool-name\gt{} fileset=\lt{}fileset-name\gt{} + restoreclient=\lt{}restore-client-name\gt{} select current all done Where {\bf current}, if specified, tells the restore command to @@ -684,11 +928,16 @@ restore storage=\lt{}storage-name\gt{} client=\lt{}client-name\gt{} specified, you will be prompted. The {\bf all} specification tells the restore command to restore all files. If it is not specified, you will be prompted for the files to restore. For details of the {\bf restore} - command, please see the \ilink{Restore Chapter}{_ChapterStart13} of this + command, please see the \ilink{Restore Chapter}{RestoreChapter} of this manual. + The client keyword initially specifies the client from which the backup + was made and the client to which the restore will be make. However, + if the restoreclient keyword is specified, then the restore is written + to that client. + \item [run] - \index[console]{run} + \index[general]{run} This command allows you to schedule jobs to be run immediately. The full form of the command is: @@ -763,33 +1012,40 @@ time. Use the {\bf mod} option and select {\bf When} (no. 6). Then enter the desired start time in YYYY-MM-DD HH:MM:SS format. \item [setdebug] - \index[dir]{setdebug} + \index[general]{setdebug} + \index[general]{setdebug} + \index[general]{debugging} + \index[general]{debugging Win32} + \index[general]{Windows!debugging} This command is used to set the debug level in each daemon. The form of this command is: setdebug level=nn [trace=0/1 client=\lt{}client-name\gt{} | dir | director | storage=\lt{}storage-name\gt{} | all] - If trace=1 is set, then the tracing will be enabled, and the daemon - where the setdebug applies will be placed in trace mode, and all debug - output will go to the file {\bf bacula.trace} in the current directory - of the daemon. Normally, tracing is used only for Win32 clients where - the debug output cannot be written to a terminal or redirected to a - file. When tracing, each debug output message is appended to the trace - file. You must explicitly delete the file when you are done. + If trace=1 is set, then tracing will be enabled, and the daemon will be + placed in trace mode, which means that all debug output as set by the + debug level will be directed to the file {\bf bacula.trace} in the + current directory of the daemon. Normally, tracing is needed only for + Win32 clients where the debug output cannot be written to a terminal or + redirected to a file. When tracing, each debug output message is + appended to the trace file. You must explicitly delete the file when + you are done. \item [show] - \index[console]{show} + \index[general]{show} + \index[general]{show} The show command will list the Director's resource records as defined in the Director's configuration file (normally {\bf bacula-dir.conf}). - This command is used mainly for debugging purposes by developers. The - following keywords are accepted on the show command line: directors, - clients, counters, jobs, storages, catalogs, schedules, filesets, - groups, pools, messages, all, help. Please don't confuse this command + This command is used mainly for debugging purposes by developers. + The following keywords are accepted on the + show command line: catalogs, clients, counters, devices, directors, + filesets, jobs, messages, pools, schedules, storages, all, help. + Please don't confuse this command with the {\bf list}, which displays the contents of the catalog. \item [sqlquery] - \index[dir]{sqlquery} + \index[general]{sqlquery} The sqlquery command puts the Console program into SQL query mode where each line you enter is concatenated to the previous line until a semicolon (;) is seen. The semicolon terminates the command, which is @@ -809,9 +1065,9 @@ setdebug level=nn [trace=0/1 client=\lt{}client-name\gt{} | dir | director | SQLite documentation. \item [status] - \index[dir]{status} + \index[general]{status} This command will display the status of the next jobs that are scheduled - during the next twenty-four hours as well as the status of currently + during the next 24 hours as well as the status of currently running jobs. The full form of this command is: status [all | dir=\lt{}dir-name\gt{} | director | @@ -820,12 +1076,12 @@ status [all | dir=\lt{}dir-name\gt{} | director | If you do a {\bf status dir}, the console will list any currently running jobs, a summary of all jobs scheduled to be run in the next 24 - hours, and a listing of the last 10 terminated jobs with their statuses. + hours, and a listing of the last ten terminated jobs with their statuses. The scheduled jobs summary will include the Volume name to be used. You - should be aware of two things: 1. to obtain the volume name, the code - goes through the same code that will be used when the job runs, which - means that it may prune or recycle a Volume; 2. The Volume listed is - only a best guess. The Volume actually used may be different because of + should be aware of two things: 1. to obtain the volume name, the code + goes through the same code that will be used when the job runs, but it + does not do pruning nor recycling of Volumes; 2. The Volume listed is + at best a guess. The Volume actually used may be different because of the time difference (more durations may expire when the job runs) and another job could completely fill the Volume requiring a new one. @@ -851,27 +1107,119 @@ status [all | dir=\lt{}dir-name\gt{} | director | JobId 2508 (MatouVerify) is waiting because only one job can run at a time, hence it is simply "waiting execution" - If you do a {\bf status dir}, it will by default list all jobs - that are scheduled in the next two days. If you wish to see - the jobs that are scheduled in the next 3 days (e.g. on Friday - you want to see wat tapes are scheduled to be used on Monday), you - can add the {\bf days=3} option. + If you do a {\bf status dir}, it will by default list the first + occurrence of all jobs that are scheduled today and tomorrow. If you + wish to see the jobs that are scheduled in the next three days (e.g. on + Friday you want to see the first occurrence of what tapes are scheduled + to be used on Friday, the weekend, and Monday), you can add the {\bf + days=3} option. Note, a {\bf days=0} shows the first occurrence of jobs + scheduled today only. If you have multiple run statements, the first + occurrence of each run statement for the job will be displayed for the + period specified. + + If your job seems to be blocked, you can get a general idea of the + problem by doing a {\bf status dir}, but you can most often get a + much more specific indication of the problem by doing a + {\bf status storage=xxx}. For example, on an idle test system, when + I do {\bf status storage=File}, I get: +\footnotesize +\begin{verbatim} +status storage=File +Connecting to Storage daemon File at 192.168.68.112:8103 + +rufus-sd Version: 1.39.6 (24 March 2006) i686-pc-linux-gnu redhat (Stentz) +Daemon started 26-Mar-06 11:06, 0 Jobs run since started. + +Running Jobs: +No Jobs running. +==== + +Jobs waiting to reserve a drive: +==== + +Terminated Jobs: + JobId Level Files Bytes Status Finished Name +====================================================================== + 59 Full 234 4,417,599 OK 15-Jan-06 11:54 kernsave +==== + +Device status: +utochanger "DDS-4-changer" with devices: + "DDS-4" (/dev/nst0) +Device "DDS-4" (/dev/nst0) is mounted with Volume="TestVolume002" +Pool="*unknown*" + Slot 2 is loaded in drive 0. + Total Bytes Read=0 Blocks Read=0 Bytes/block=0 + Positioned at File=0 Block=0 +Device "Dummy" is not open or does not exist. +No DEVICE structure. + +Device "DVD-Writer" (/dev/hdc) is not open. +Device "File" (/tmp) is not open. +==== + +In Use Volume status: +==== +\end{verbatim} +\normalsize + +Now, what this tells me is that no jobs are running and that none of +the devices are in use. Now, if I {\bf unmount} the autochanger, which +will not be used in this example, and then start a Job that uses the +File device, the job will block. When I re-issue the status storage +command, I get for the Device status: + +\footnotesize +\begin{verbatim} +status storage=File +... +Device status: +Autochanger "DDS-4-changer" with devices: + "DDS-4" (/dev/nst0) +Device "DDS-4" (/dev/nst0) is not open. + Device is BLOCKED. User unmounted. + Drive 0 is not loaded. +Device "Dummy" is not open or does not exist. +No DEVICE structure. + +Device "DVD-Writer" (/dev/hdc) is not open. +Device "File" (/tmp) is not open. + Device is BLOCKED waiting for media. +==== +... +\end{verbatim} +\normalsize + +Now, here it should be clear that if a job were running that wanted +to use the Autochanger (with two devices), it would block because +the user unmounted the device. The real problem for the Job I started +using the "File" device is that the device is blocked waiting for +media -- that is Bacula needs you to label a Volume. \item [unmount] - \index[console]{unmount} + \index[general]{unmount} This command causes the indicated Bacula Storage daemon to unmount the specified device. The forms of the command are the same as the mount command: \footnotesize \begin{verbatim} -unmount storage=\lt{}storage-name\gt{} +unmount storage= [ drive= ] -unmount [ jobid=\lt{}id\gt{} | job=\lt{}job-name\gt{} ] +unmount [ jobid= | job= ] \end{verbatim} \normalsize + Once you unmount a storage device, Bacula will no longer be able to use + it until you issue a mount command for that device. If Bacula needs to + access that device, it will block and issue mount requests periodically + to the operator. + + If the device you are unmounting is an autochanger, it will unload + the drive you have specified on the command line. If no drive is + specified, it will assume drive 1. + \label{UpdateCommand} \item [update] - \index[console]{update} + \index[general]{update} This command will update the catalog for either a specific Pool record, a Volume record, or the Slots in an autochanger with barcode capability. In the case of updating a Pool record, the new information will be automatically taken @@ -897,12 +1245,14 @@ wish to change. The following Volume parameters may be changed: Maximum Volume Files Maximum Volume Bytes Recycle Flag + Recycle Pool Slot InChanger Flag Pool Volume Files Volume from Pool All Volumes from Pool + All Volumes from all Pools \end{verbatim} \normalsize @@ -914,7 +1264,8 @@ wish to change. The following Volume parameters may be changed: cassettes in the magazine, or if you have removed the magazine and inserted a different one. As the slot of each Volume is updated, the InChanger flag for that Volume will also be set, and any other Volumes - in the Pool will have their InChanger flag turned off. This permits + in the Pool that were last mounted on the same Storage device + will have their InChanger flag turned off. This permits Bacula to know what magazine (tape holder) is currently in the autochanger. @@ -926,9 +1277,11 @@ wish to change. The following Volume parameters may be changed: For Pool {\bf update pool}, Bacula will move the Volume record from its existing pool to the pool specified. - For {\bf Volume from Pool} and {\bf All Volumes from Pool}, the - following values are updated from the Pool record: Recycle, - VolRetention, VolUseDuration, MaxVolJobs, MaxVolFiles, and MaxVolBytes. + For {\bf Volume from Pool}, {\bf All Volumes from Pool} and {\bf All Volumes + from all Pools}, the following values are updated from the Pool record: + Recycle, RecyclePool, VolRetention, VolUseDuration, MaxVolJobs, MaxVolFiles, + and MaxVolBytes. (RecyclePool feature is available with bacula 2.1.4 or + higher.) The full form of the update command with all command line arguments is: @@ -936,13 +1289,13 @@ wish to change. The following Volume parameters may be changed: \begin{verbatim} update volume=xxx pool=yyy slots volstatus=xxx VolRetention=ddd VolUse=ddd MaxVolJobs=nnn MaxVolBytes=nnn Recycle=yes|no - slot=nnn + slot=nnn enabled=n recyclepool=zzz \end{verbatim} \normalsize \item [use] - \index[console]{use } + \index[general]{use} This command allows you to specify which Catalog database to use. Normally, you will be using only one database so this will be done automatically. In the case that you are using more than one database, you can use this command @@ -952,7 +1305,7 @@ use \lt{}database-name\gt{} \item [var] \label{var} - \index[console]{var name } + \index[general]{var name} This command takes a string or quoted string and does variable expansion on it the same way variable expansion is done on the {\bf LabelFormat} string. Thus, for the most part, you can test your LabelFormat strings. The @@ -962,19 +1315,19 @@ use \lt{}database-name\gt{} good idea of what is going to happen in the real case. \item [version] - \index[console]{version } + \index[general]{version} The command prints the Director's version. \item [quit] - \index[console]{quit } + \index[general]{quit} This command terminates the console program. The console program sends the -{\bf quit} request to the Director and waits for acknowledgment. If the -Director is busy doing a previous command for you that has not terminated, it -may take some time. You may quit immediately by issuing the {\bf .quit} -command (i.e. quit preceded by a period). + {\bf quit} request to the Director and waits for acknowledgment. If the + Director is busy doing a previous command for you that has not terminated, it + may take some time. You may quit immediately by issuing the {\bf .quit} + command (i.e. quit preceded by a period). \item [query] - \index[console]{query } + \index[general]{query} This command reads a predefined SQL query from the query file (the name and location of the query file is defined with the QueryFile resource record in the Director's configuration file). You are prompted to select a query from @@ -1001,23 +1354,29 @@ Choose a query (1-9): \normalsize \item [exit] - \index[console]{exit } + \index[general]{exit} This command terminates the console program. \item [wait] - \index[console]{wait } + \index[general]{wait} The wait command causes the Director to pause until there are no jobs -running. This command is useful in a batch situation such as regression -testing where you wish to start a job and wait until that job completes -before continuing. + running. This command is useful in a batch situation such as regression + testing where you wish to start a job and wait until that job completes + before continuing. This command now has the following options: +\footnotesize +\begin{verbatim} + wait [jobid=nn] [jobuid=unique id] [job=job name] +\end{verbatim} +\normalsize + If specified with a specific JobId, ... the wait command will wait + for that particular job to terminate before continuing. + \end{description} \label{dotcommands} - -\subsection*{Special dot Commands} -\index[general]{Commands!Special dot } -\index[general]{Special dot Commands } -\addcontentsline{toc}{subsection}{Special dot Commands} +\section{Special dot Commands} +\index[general]{Commands!Special dot} +\index[general]{Special dot Commands} There is a list of commands that are prefixed with a period (.). These commands are intended to be used either by batch programs or graphical user @@ -1028,31 +1387,31 @@ is the list of dot commands: \footnotesize \begin{verbatim} .backups job=xxx list backups for specified job +.clients list all client names .defaults client=xxx fileset=yyy list defaults for specified client .die cause the Director to segment fault (for debugging) .dir when in tree mode prints the equivalent to the dir command, but with fields separated by commas rather than spaces. +.exit quit +.filesets list all fileset names +.help help command output .jobs list all job names .levels list all levels -.filesets list all fileset names -.clients list all client names -.pools list all pool names -.types list job types -.msgs return any queued messages .messages get quick messages -.help help command output +.msgs return any queued messages +.pools list all pool names .quit quit .status get status output -.exit quit +.storage return storage resource names +.types list job types \end{verbatim} \normalsize \label{atcommands} -\subsection*{Special At (@) Commands} -\index[general]{Commands!Special At @ } -\index[general]{Special At (@) Commands } -\addcontentsline{toc}{subsection}{Special At (@) Commands} +\section{Special At (@) Commands} +\index[general]{Commands!Special At @} +\index[general]{Special At (@) Commands} Normally, all commands entered to the Console program are immediately forwarded to the Director, which may be on another machine, to be executed. @@ -1064,11 +1423,11 @@ the tty console program and not in the GNOME Console. These commands are: \begin{description} \item [@input \lt{}filename\gt{}] - \index[console]{@input \lt{}filename\gt{} } + \index[general]{@input \lt{}filename\gt{}} Read and execute the commands contained in the file specified. \item [@output \lt{}filename\gt{} w/a] - \index[console]{@output \lt{}filename\gt{} w/a } + \index[general]{@output \lt{}filename\gt{} w/a} Send all following output to the filename specified either overwriting the file (w) or appending to the file (a). To redirect the output to the terminal, simply enter {\bf @output} without a filename specification. @@ -1085,42 +1444,40 @@ regression test might be: \normalsize \item [@tee \lt{}filename\gt{} w/a] - \index[console]{@tee \lt{}filename\gt{} w/a } + \index[general]{@tee \lt{}filename\gt{} w/a} Send all subsequent output to both the specified file and the terminal. It is turned off by specifying {\bf @tee} or {\bf @output} without a filename. \item [@sleep \lt{}seconds\gt{}] - \index[console]{@sleep \lt{}seconds\gt{} } + \index[general]{@sleep \lt{}seconds\gt{}} Sleep the specified number of seconds. \item [@time] - \index[console]{@time } + \index[general]{@time} Print the current time and date. \item [@version] - \index[console]{@version } + \index[general]{@version} Print the console's version. \item [@quit] - \index[console]{@quit } + \index[general]{@quit} quit \item [@exit] - \index[console]{@exit } + \index[general]{@exit} quit \item [@\# anything] - \index[console]{anything } + \index[general]{anything} Comment \end{description} \label{scripting} -\subsection*{Running the Console Program from a Shell Script} -\index[general]{Script!Running the Console Program from a Shell } -\index[general]{Running the Console Program from a Shell Script } -\addcontentsline{toc}{subsection}{Running the Console Program from a Shell -Script} +\section{Running the Console from a Shell Script} +\index[general]{Script!Running the Console Program from a Shell} +\index[general]{Running the Console Program from a Shell Script} You can automate many Console tasks by running the console program from a shell script. For example, if you have created a file containing the following @@ -1191,10 +1548,9 @@ restorestat=$? \end{verbatim} \normalsize -\subsection*{Adding Volumes to a Pool} -\index[general]{Adding Volumes to a Pool } -\index[general]{Pool!Adding Volumes to a } -\addcontentsline{toc}{subsection}{Adding Volumes to a Pool} +\section{Adding Volumes to a Pool} +\index[general]{Adding Volumes to a Pool} +\index[general]{Pool!Adding Volumes to a} If you have used the {\bf label} command to label a Volume, it will be automatically added to the Pool, and you will not need to add any media to the diff --git a/docs/manual-de/version.tex b/docs/manual-de/version.tex index a73b3c8b..82d910aa 100644 --- a/docs/manual-de/version.tex +++ b/docs/manual-de/version.tex @@ -1 +1 @@ -2.2.7 (04 December 2007) +2.3.6 (04 November 2007)