]> git.sur5r.net Git - bacula/docs/commitdiff
Doc updates -- new GUI chapter
authorKern Sibbald <kern@sibbald.com>
Fri, 1 Jul 2005 12:39:52 +0000 (12:39 +0000)
committerKern Sibbald <kern@sibbald.com>
Fri, 1 Jul 2005 12:39:52 +0000 (12:39 +0000)
21 files changed:
docs/manual-fr/tls.tex [new file with mode: 0644]
docs/manual/autochangers.tex
docs/manual/console.tex
docs/manual/consoleconf.tex
docs/manual/dirdconf.tex
docs/manual/dvd.tex
docs/manual/general.tex
docs/manual/gpl.tex
docs/manual/install.tex
docs/manual/lesser.tex
docs/manual/monitorconf.tex
docs/manual/mysql.tex
docs/manual/postgresql.tex
docs/manual/progs.tex
docs/manual/python.tex
docs/manual/quickstart.tex
docs/manual/security.tex
docs/manual/sqlite.tex
docs/manual/tips.tex
docs/manual/tutorial.tex
docs/manual/win32.tex

diff --git a/docs/manual-fr/tls.tex b/docs/manual-fr/tls.tex
new file mode 100644 (file)
index 0000000..6cd14e9
--- /dev/null
@@ -0,0 +1,143 @@
+
+\section*{Bacula TLS}
+\label{_ChapterStart61}
+\index[general]{Bacula TLS}
+\index[general]{TLS}
+\addcontentsline{toc}{section}{Bacula TLS}
+
+Bacula TLS (Transport Layer Security) is built-in network
+encryption code to provide secure network transport similar to
+that offered by {\bf stunnel} or {\bs ssh}. The Bacula code was
+written by Landon Fuller.
+
+Supported features of this code include: 
+\begin{itemize} 
+\item Client/Server TLS Requirement Negotiation 
+\item TLSv1 Connections with Server and Client Certificate
+Validation 
+\item Forward Secrecy Support via Diffie-Hellman Ephemeral Keying 
+\end{itemize}
+
+This document will refer to both ``server'' and ``client'' contexts.  These
+terms refer to the accepting and initiating peer, respectively.
+
+Diffie-Hellman anonymous ciphers are not supported by this code.  The
+use of DH anonymous ciphers increases the code complexity and places
+explicit trust upon the two-way CRAM-MD5 implementation.  CRAM-MD5 is
+subject to known plaintext attacks, and it should be considered
+considerably less secure than PKI certificate-based authentication.
+
+Appropriate autoconf macros have been added to detect and use OpenSSL  
+if enabled on the {\bf ./configure} line with {\bf \verb?--?enable-openssl}
+
+\subsection*{TLS Configuration Directives}
+\addcontentsline{toc}{section}{TLS Configuration Directives}
+Additional configuration directives have been added to all the daemons
+(Director, File daemon, and Storage daemon) as well as the various
+different Console programs.
+These new directives are defined as follows:
+
+\begin{description}
+\item [TLS Enable = \lt{}yes|no\gt{}]
+Enable TLS support.
+
+\item [TLS Require = \lt{}yes|no\gt{}]
+Require TLS connections.
+
+\item [TLS Certificate = \lt{}Directory\gt{}]
+Path to a PEM encoded TLS certificate.  It can be used as either a client
+or server certificate. PEM stands for Privacy Enhanced Mail, but in 
+this context refers to how the certificates are encoded. It is used
+because PEM files are base64 encoded and hence ASCII text based
+rather than binary. They may also contain encrypted information.
+
+\item [TLS Key = \lt{}Directory\gt{}]
+Path to a PEM encoded TLS private key.  It must correspond to the TLS
+certificate.
+
+\item [TLS Verify Peer = \lt{}yes|no\gt{}]
+Verify peer certificate.  Instructs server to request and verify the
+client's x509 certificate.  Any client certificate signed by a known-CA
+will be accepted unless the TLS Allowed CN configuration directive is used,
+in which case the client certificate must correspond to the Allowed
+Common Name specified. This directive is valid only for a server
+and not in a client context.
+
+\item [TLS Allowed CN = \lt{}string list\gt{}]
+Common name attribute of allowed peer certificates.  If this directive is
+specified, all client certificates will be verified against this list.
+This directive may be specified more than once. It is not valid in a client
+context.
+
+\item [TLS CA Certificate File = \lt{}Filename\gt{}]
+The full path and filename specifying a
+PEM encoded TLS CA certificate(s).  Multiple certificates are
+permitted in the file.  One of \emph{TLS CA Certificate File} or \emph{TLS
+CA Certificate Dir} are required in a server context if \emph{TLS
+Verify Peer} (see above) is also specified, and are always required in a client
+context.
+
+\item [TLS CA Certificate Dir = \lt{}Directory\gt{}]
+Full path to TLS CA certificate directory.  In the current implementation,
+certificates must be stored PEM encoded with OpenSSL-compatible hashes,
+which is the subject name's hash and an extension of {bf .0}.
+One of \emph{TLS CA Certificate File} or \emph{TLS CA Certificate Dir} are
+required in a server context if \emph{TLS Verify Peer} is also specified,
+and are always required in a client context.
+
+\item [TLS DH File = \lt{}Directory\gt{}]
+Path to PEM encoded Diffie-Hellman parameter file.  If this directive is
+specified, DH key exchange will be used for the ephemeral keying, allowing
+for forward secrecy of communications.  DH key exchange adds an additional
+level of security because the key used for encryption/decryption by the
+server and the client is computed on each end and thus is never passed over
+the network if Diffie-Hellman key exchange is used.  Even if DH key
+exchange is not used, the encryption/decryption key is always passed
+encrypted.  This directive is only valid within a server context.
+
+To generate the parameter file, you
+may use openssl:
+
+\begin{verbatim} 
+   openssl dhparam -out dh1024.pem -5 1024 
+\end{verbatim}
+
+\end{itemize}
+
+\subsection*{Creating a Self-signed Certificate}
+\index[general]{Creating a Self-signed Certificate }
+\index[general]{Certificate!Creating a Self-signed }
+\addcontentsline{toc}{subsection}{Creating a Self-signed Certificate}
+
+You may create a self-signed certificate for use with the Bacula TLS that
+will permit you to make it function, but will not allow certificate
+validation.  The .pem file containing both the certificate and the key
+valid for 10 years can be made with the following:
+
+\footnotesize
+\begin{verbatim}
+   openssl req -new -x509 -nodes -out bacula.pem -keyout bacula.pem -days 3650
+\end{verbatim}
+\normalsize
+
+The above script will ask you a number of questions. You may simply answer
+each of them by entering a return, or if you wish you may enter your own data.
+
+
+\subsection*{Getting a CA Signed Certificate}
+\index[general]{Certificate!Getting a CA Signed }
+\index[general]{Getting a CA Signed Certificate }
+\addcontentsline{toc}{subsection}{Getting a CA Signed Certificate}
+
+The process of getting a certificate that is signed by a CA is quite a bit
+more complicated. You can purchase one from quite a number of PKI vendors, but
+that is not at all necessary for use with Bacula. To get a CA signed
+certificate, you will either need to find a friend that has setup his own CA
+or to become a CA yourself, and thus you can sign all your own certificates.
+The book OpenSSL by John Viega, Matt Mesier \& Pravir Chandra from O'Reilly
+explains how to do it, or you can read the documentation provided in the
+Open-source PKI Book project at Source Forge: 
+\elink{
+http://ospkibook.sourceforge.net/docs/OSPKI-2.4.7/OSPKI-html/ospki-book.htm}
+{http://ospkibook.sourceforge.net/docs/OSPKI-2.4.7/OSPKI-html/ospki-book.htm}.
+Note, this link may change. 
index d6d631a0d4deec3bd867887ca219a6abff298a37..4df2bff6f6414b618f45073b75ca24ed9e7ca954 100644 (file)
@@ -33,6 +33,9 @@ which is explained in more detail after this list:
    Slot when labeling a Volume. 
 \item You need to ensure that your Storage daemon (if not running as root)
    has access permissions to both the tape drive and the control device.
+\item You need to have {\bf Autochanger = yes} in your Storage resource
+   in your bacula-dir.conf file so that you will be prompted for the
+   slot number when you label Volumes.
 \end{itemize}
 
 In version 1.37, there is a new \ilink{Autochanger
index 802d1e1a55ea77e609798bc85bb5fbf3d86b8a4d..fa913c3f2b5ddc9f2fe64bafdd5703fca4345a2f 100644 (file)
@@ -2,7 +2,7 @@
 %%
 
 \section*{Bacula Console}
-\label{_ChapterStart23}
+\label{_ConsoleChapter}
 \index[general]{Console!Bacula }
 \index[general]{Bacula Console }
 \addcontentsline{toc}{section}{Bacula Console}
index 5231654d9166cc44b29c873da64781ed83e1632d..ad932a2e6dee298abcfcf20f15bbb3cd55a644e2 100644 (file)
@@ -56,7 +56,7 @@ name is not used.
    \index[dir]{DIRPort  }
    Specify the port to use to connect  to the Director. This value will most
 likely already be set to the value  you specified on the {\bf
-\verb{--{with-base-port} option of the  {\bf ./configure} command. This port must be
+\verb:--:with-base-port} option of the  {\bf ./configure} command. This port must be
 identical to the  {\bf DIRport} specified in the {\bf Director} resource of
 the 
 \ilink{Director's configuration}{_ChapterStart40} file.  The
@@ -236,7 +236,7 @@ and do with Bacula.
 \addcontentsline{toc}{subsection}{Console Commands}
 
 For more details on running the console and its commands, please see the 
-\ilink{Bacula Console}{_ChapterStart23} chapter of this manual. 
+\ilink{Bacula Console}{_ConsoleChapter} chapter of this manual. 
 
 \subsection*{Sample Console Configuration File}
 \label{SampleConfiguration2}
index 6f28738bb5dc78465dbd3515b6d0413fbf51e3c6..5479082d3449932d2d9f1a2e56d5cc450dd389d8 100644 (file)
@@ -131,6 +131,14 @@ Typically on Linux systems, you will set this to:  {\bf /var/run}. If you are
 not installing Bacula in the  system directories, you can use the {\bf Working
 Directory} as  defined above.  This directive is required.  
 
+\item [Scripts Directory = \lt{}Directory\gt{}]
+   \index[dir]{Scripts Directory  }
+   This directive is optional and, if defined, specifies a directory in which the Director 
+will look for the Python startup script {\bf DirStartup.py}. This directory
+may be shared by other Bacula daemons.  Standard shell expansion of the
+directory is done when the configuration file is read so that values such 
+as {\bf \$HOME} will be properly expanded.
+
 \item [QueryFile = \lt{}Path\gt{}]
    \index[dir]{QueryFile  }
    This directive  is mandatory and specifies a directory and file in which the
@@ -382,7 +390,7 @@ reset the access time (st\_atime), which Bacula does not use,  it will cause
 st\_ctime to change and hence Bacula will backup  the file during an
 Incremental or Differential backup. In the  case of Sophos virus scanning, you
 can prevent it from  resetting the access time (st\_atime) and hence changing 
-st\_ctime by using the {\bf \verb{--{no-reset-atime} option. For  other software,
+st\_ctime by using the {\bf \verb:--:no-reset-atime} option. For  other software,
 please see their manual.  
 
 When Bacula does an Incremental backup, all modified  files that are still on
index 2ff3391c6dfd0a5c63bb65bdc5e352be5eb87fb7..c67c87b5cb5a2835f5ff6a43f3da5c77618660a1 100644 (file)
@@ -187,6 +187,8 @@ The following directives are added to the Director's Job resource.
 \item DVD+RW supports only about 1000 overwrites, so every time you
    mount the filesystem read/write will count as one write. This can
    add up quickly, so it is best to mount your DVD+RW filesystem read-only.
+   Bacula does not need the DVD to be mounted read-write, since it uses
+   the raw device for writing.
 \item Reformating DVD+RW 10-20 time can apparently make the medium 
    unusable. Normally you should not have to format or reformat
    DVD+RW media. If it is necessary, current versions of growisofs will
@@ -195,5 +197,6 @@ The following directives are added to the Director's Job resource.
 \begin{verbatim}
   growisofs -Z /dev/xxx=/dev/zero
 \end{verbatim}
-  where you replace xxx with your DVD device name.
+  where you replace xxx with your DVD device name. However, note that this
+  blanks the whole DVD, which takes quite a long time (16 minutes on mine).
 \end{itemize}
index 9da8b9d7902e18ca315e3971b830cd73b33838ad..83d2b8e1d050ea26f474bb7fc292da3b6b125553 100644 (file)
@@ -80,7 +80,7 @@ Console. The third version is a wxWidgets GUI with an interactive file
 restore. It also has most of the capabilities of the shell console,  allows
 command completion with tabulation, and gives you instant help about the
 command you are typing. For more details see the  
-\ilink{Bacula Console Design Document}{_ChapterStart23}. 
+\ilink{Bacula Console Design Document}{_ConsoleChapter}. 
 \item 
    \label{FDDef}
    {\bf Bacula File} services (or Client program) is the software  program that
index e9a1253d52b6853338042358574dd4f3e21a8618..84dcee5974052881b19283815adbabad57e180a5 100644 (file)
@@ -72,7 +72,7 @@ of this license document, but changing it is not allowed.
 
 The licenses for most software are designed to take away your freedom to share
 and change it. By contrast, the GNU General Public License is intended to
-guarantee your freedom to share and change free software\verb{--{to make sure the
+guarantee your freedom to share and change free software\verb:--:to make sure the
 software is free for all its users. This General Public License applies to
 most of the Free Software Foundation's software and to any other program whose
 authors commit to using it. (Some other Free Software Foundation software is
@@ -389,7 +389,7 @@ for details.
 The hypothetical commands {\tt `show w'} and {\tt `show c'} should show the
 appropriate parts of the General Public License. Of course, the commands you
 use may be called something other than {\tt `show w'} and {\tt `show c'}; they
-could even be mouse-clicks or menu items\verb{--{whatever suits your program. 
+could even be mouse-clicks or menu items\verb:--:whatever suits your program. 
 
 You should also get your employer (if you work as a programmer) or your
 school, if any, to sign a ``copyright disclaimer'' for the program, if
index e7134a0faf2b915f0c93e8c5c5900b742c53641f..d45a70dee58c182dcb0198d43297ff67d9c57b12 100644 (file)
@@ -201,7 +201,7 @@ continue on.
    If you get errors while linking in the Storage daemon  directory (src/stored),
 it is probably because you have not  loaded the static libraries on your
 system. I noticed this  problem on a Solaris system. To correct it, make sure
-that you  have not added {\bf \verb{--{enable-static-tools} to the  {\bf ./configure}
+that you  have not added {\bf \verb:--:enable-static-tools} to the  {\bf ./configure}
 command. 
 \item make install  
 \item If you are new to Bacula, we {\bf strongly} recommend that you  skip the
@@ -304,7 +304,7 @@ the {\bf examples} directory. This script contains the statements that you
 would normally use, and each developer/user may modify them to suit his needs.
 You should find additional useful examples in this directory as well. 
 
-The {\bf \verb{--{enable-conio} or {\bf \verb{--{enable-readline} options are useful because
+The {\bf \verb:--:enable-conio} or {\bf \verb:--:enable-readline} options are useful because
 they provide a command line history and editing capability for the Console
 program. If you have included either option in the build, either the {\bf
 termcap} or the {\bf ncurses} package will be needed to link. On some systems,
@@ -347,7 +347,7 @@ LDFLAGS="-lssl -lcyrpto" \
 On some systems such as Mandriva, readline tends to
 gobble up prompts, which makes it totally useless. If this happens to you, use
 the disable option, or if you are using version 1.33 and above try using {\bf
-\verb{--{enable-conio} to use a built-in readline replacement. You will still need
+\verb:--:enable-conio} to use a built-in readline replacement. You will still need
 either the termcap or the ncurses library, but it is unlikely that the {\bf conio}
 package will gobble up prompts. 
 
@@ -421,18 +421,18 @@ customize your installation.
 
 \begin{description}
 
-\item [ \verb?--?sysbindir=\lt{}binary-path\gt{}]
-   \index[dir]{\verb{--{sysbindir }
+\item [ \verb:--:sysbindir=\lt{}binary-path\gt{}]
+   \index[dir]{\verb:--:sysbindir }
    Defines where the Bacula  binary (executable) files will be placed during a
    {\bf make  install} command.  
 
-\item [ \verb?--?sysconfdir=\lt{}config-path\gt{}]
-   \index[dir]{\verb{--{sysconfdir }
+\item [ \verb:--:sysconfdir=\lt{}config-path\gt{}]
+   \index[dir]{\verb:--:sysconfdir }
    Defines where the  Bacula configuration files should be placed during a {\bf
    make  install} command.  
 
-\item [ \verb?--?enable-smartalloc ]
-   \index[dir]{\verb{--{enable-smartalloc }
+\item [ \verb:--:enable-smartalloc ]
+   \index[dir]{\verb:--:enable-smartalloc }
    This enables the inclusion of the  Smartalloc orphaned buffer detection code.
    This option is highly  recommended. Because we never build without this
    option, you may  experience problems if it is not enabled. In this case,
@@ -440,14 +440,14 @@ customize your installation.
    enabled as it helps detect memory leaks. This configuration  parameter is used
    while building Bacula  
 
-\item [ \verb?--?enable-gnome ]
-   \index[dir]{\verb{--{enable-gnome }
+\item [ \verb:--:enable-gnome ]
+   \index[dir]{\verb:--:enable-gnome }
    If you have GNOME installed on your  computer and you want to use the GNOME
    GUI Console interface  to Bacula, you must specify this option. Doing so  will
    build everything in the {\bf src/gnome-console} directory.  
 
-\item [ \verb?--?enable-wx-console ]
-   \index[console]{\verb{--{enable-wx-console }
+\item [ \verb:--:enable-wx-console ]
+   \index[console]{\verb:--:enable-wx-console }
    If you have wxWidgets installed on your  computer and you want to use the
    wxWidgets GUI Console interface  to Bacula, you must specify this option.
    Doing so  will build everything in the {\bf src/wx-console} directory. This 
@@ -455,56 +455,56 @@ customize your installation.
    install Gnome, as wxWidgets can work with GTK+, Motif or even X11  libraries. 
 
 
-\item [ \verb?--?enable-tray-monitor ]
-   \index[dir]{\verb{--{enable-tray-monitor }
+\item [ \verb:--:enable-tray-monitor ]
+   \index[dir]{\verb:--:enable-tray-monitor }
    If you have GTK installed on your  computer, you run a graphical environment
    or a window manager compatible  with the FreeDesktop system tray standard
    (like KDE and GNOME)  and you want to use a GUI to monitor Bacula daemons, you
    must specify  this option. Doing so will build everything in the  {\bf
    src/tray-monitor} directory.  
 
-\item [ \verb?--?enable-static-tools]
-   \index[dir]{\verb{--{enable-static-tools }
+\item [ \verb:--:enable-static-tools]
+   \index[dir]{\verb:--:enable-static-tools }
    This option causes the linker  to link the Storage daemon utility tools ({\bf
    bls},  {\bf bextract}, and {\bf bscan}) statically. This permits using  them
    without having the shared libraries loaded. If you have  problems linking in
    the {\bf src/stored} directory, make sure  you have not enabled this option,
-   or explicitly  disable static linking by adding {\bf \verb{--{disable-static-tools}. 
+   or explicitly  disable static linking by adding {\bf \verb:--:disable-static-tools}. 
 
 
-\item [ \verb?--?enable-static-fd]
-   \index[fd]{\verb{--{enable-static-fd }
+\item [ \verb:--:enable-static-fd]
+   \index[fd]{\verb:--:enable-static-fd }
    This option causes the make process  to build a {\bf static-bacula-fd} in
    addition to the standard  File daemon. This static version will include
    statically linked  libraries and is required for the Bare Metal recovery. This
    option  is largely superseded by using {\bf make static-bacula-fd} from with 
-   in the {\bf src/filed} directory. Also, the {\bf \verb{--{enable-client-only}  option
+   in the {\bf src/filed} directory. Also, the {\bf \verb:--:enable-client-only}  option
    described below is useful for just building a client so that  all the other
    parts of the program are not compiled.  
 
-\item [ \verb?--?enable-static-sd]
-   \index[sd]{\verb{--{enable-static-sd }
+\item [ \verb:--:enable-static-sd]
+   \index[sd]{\verb:--:enable-static-sd }
    This option causes the make process  to build a {\bf static-bacula-sd} in
    addition to the standard  Storage daemon. This static version will include
    statically linked  libraries and could be useful during a Bare Metal recovery.
  
 
-\item [ \verb?--?enable-static-dir]
-   \index[dir]{\verb{--{enable-static-dir }
+\item [ \verb:--:enable-static-dir]
+   \index[dir]{\verb:--:enable-static-dir }
    This option causes the make process  to build a {\bf static-bacula-dir} in
    addition to the standard  Director. This static version will include
    statically linked  libraries and could be useful during a Bare Metal recovery.
 
 
-\item [ \verb?--?enable-static-cons]
-   \index[dir]{\verb{--{enable-static-cons }
+\item [ \verb:--:enable-static-cons]
+   \index[dir]{\verb:--:enable-static-cons }
    This option causes the make process  to build a {\bf static-console} and a
    {\bf static-gnome-console}  in addition to the standard console.  This static
    version will include statically linked  libraries and could be useful during a
    Bare Metal recovery.  
 
-\item [ \verb?--?enable-client-only]
-   \index[console]{\verb{--{enable-client-only }
+\item [ \verb:--:enable-client-only]
+   \index[console]{\verb:--:enable-client-only }
    This option causes the make process  to build only the File daemon and the
    libraries that it needs.  None of the other daemons, storage tools, nor the
    console will  be built. Likewise a {\bf make install} will then only install 
@@ -512,23 +512,23 @@ customize your installation.
    configuration without this option. This option greatly  facilitates building a
    Client on a client only machine.  
 
-\item [ \verb?--?enable-largefile]
-   \index[console]{\verb{--{enable-largefile }
+\item [ \verb:--:enable-largefile]
+   \index[console]{\verb:--:enable-largefile }
    This option (default) causes  Bacula to be built with 64 bit file address
    support if it  is available on your system. This permits Bacula to read and 
    write files greater than 2 GBytes in size. You may disable this  feature and
-   revert to 32 bit file addresses by using  {\bf \verb{--{disable-largefile}.  
+   revert to 32 bit file addresses by using  {\bf \verb:--:disable-largefile}.  
 
-\item [ \verb?--?with-sqlite=\lt{}sqlite-path\gt{}]
-   \index[fd]{\verb{--{with-sqlite }
+\item [ \verb:--:with-sqlite=\lt{}sqlite-path\gt{}]
+   \index[fd]{\verb:--:with-sqlite }
    This enables use of  the SQLite database. The {\bf sqlite-path} is not
    normally  specified as Bacula looks for the necessary components in  a
    standard location ({\bf depkgs/sqlite}). See 
    \ilink{Installing and Configuring SQLite}{_ChapterStart33} chapter of
     this manual for more details.  
 
-\item [ \verb?--?with-mysql=\lt{}mysql-path\gt{}]
-   \index[fd]{\verb{--{with-mysql }
+\item [ \verb:--:with-mysql=\lt{}mysql-path\gt{}]
+   \index[fd]{\verb:--:with-mysql }
    This enables building of the Catalog services for Bacula. It  assumes that
    MySQL is running on your system, and expects  it to be installed in the {\bf
    mysql-path} that you  specify. If this option is not present, the build will 
@@ -538,13 +538,13 @@ customize your installation.
    \ilink{Installing and Configuring MySQL}{_ChapterStart} chapter
    before proceeding with the configuration.  
 
-\item [ \verb?--?with-postgresql=\lt{}path\gt{}]
-   \index[fd]{\verb{--{with-postgresql }
+\item [ \verb:--:with-postgresql=\lt{}path\gt{}]
+   \index[fd]{\verb:--:with-postgresql }
    This provides an explicit  path to the PostgreSQL libraries if Bacula cannot
    find it by  default.  
 
-\item [ \verb?--?with-python=\lt{}path\gt{}]
-   \index[fd]{\verb{--{with-python }
+\item [ \verb:--:with-python=\lt{}path\gt{}]
+   \index[fd]{\verb:--:with-python }
    This option enables Bacula support for Python. If no path is 
    supplied, configure will search the     
    standard library locations for Python 2.2, 2.3, or 2.4. If it cannot
@@ -553,29 +553,29 @@ customize your installation.
    \ilink{Python chapter}{_ChapterStart60} for the details of using
    Python scripting.
 
-\item [ \verb?--?enable-conio]
-   \index[fd]{\verb{--{enable-conio }
+\item [ \verb:--:enable-conio]
+   \index[fd]{\verb:--:enable-conio }
    Tells Bacula to enable building the  small, light weight readline replacement
    routine. It is generally  much easier to configure than readline, although,
    like readline,  it needs either the termcap or ncurses library.  
 
-\item [ \verb?--?with-readline=\lt{}readline-path\gt{}]
-   \index[fd]{\verb{--{with-readline }
+\item [ \verb:--:with-readline=\lt{}readline-path\gt{}]
+   \index[fd]{\verb:--:with-readline }
    Tells Bacula  where {\bf readline} is installed. Normally, Bacula will  find
    readline if it is in a standard library. If it is not found  and no
-   \verb{--{with-readline is specified, readline will be disabled.  This option affects
+   \verb:--:with-readline is specified, readline will be disabled.  This option affects
    the Bacula build. Readline provides  the Console program with a command line
    history and editing  capability and is no longer supported, so you are on your
    own  if you have problems. 
 
-\item [ \verb?--?enable-readline]
-   \index[fd]{\verb{--{enable-readline }
+\item [ \verb:--:enable-readline]
+   \index[fd]{\verb:--:enable-readline }
    Tells Bacula to enable readline support.  It is normally disabled due to the
    large number of configuration  problems and the fact that the package seems to
    change in incompatible  ways from version to version.  
 
-\item [ \verb?--?with-tcp-wrappers=\lt{}path\gt{}]
-   \index[fd]{\verb{--{with-tcp-wrappers }
+\item [ \verb:--:with-tcp-wrappers=\lt{}path\gt{}]
+   \index[fd]{\verb:--:with-tcp-wrappers }
    This specifies that you  want TCP wrappers (man hosts\_access(5)) compiled in.
    The path is optional since  Bacula will normally find the libraries in the
    standard locations.  This option affects the Bacula build.  In specifying your
@@ -590,8 +590,8 @@ customize your installation.
    \ilink{Configuring and Testing TCP Wrappers}{wrappers}  section
    in the Security Chapter.  
 
-\item [ \verb?--?with-working-dir=\lt{}working-directory-path\gt{} ]
-   \index[dir]{\verb{--{with-working-dir }
+\item [ \verb:--:with-working-dir=\lt{}working-directory-path\gt{} ]
+   \index[dir]{\verb:--:with-working-dir }
    This option is mandatory and specifies a directory  into which Bacula may
    safely place files that  will remain between Bacula executions. For example, 
    if the internal database is used, Bacula will keep  those files in this
@@ -600,11 +600,11 @@ customize your installation.
    The working directory  is not automatically created by the install process, so
    you  must ensure that it exists before using Bacula for the  first time. 
 
-\item [ \verb?--?with-base-port=\lt{}port=number\gt{}]
-   \index[dir]{\verb{--{with-base-port }
+\item [ \verb:--:with-base-port=\lt{}port=number\gt{}]
+   \index[dir]{\verb:--:with-base-port }
    In order to run,  Bacula needs three TCP/IP ports (one for the Bacula 
    Console, one for the Storage daemon, and one for the File daemon).  The {\bf
-   \verb{--{with-baseport} option will automatically assign three  ports beginning at
+   \verb:--:with-baseport} option will automatically assign three  ports beginning at
    the base port address specified. You may  also change the port number in the
    resulting configuration  files. However, you need to take care that the
    numbers  correspond correctly in each of the three daemon configuration 
@@ -613,20 +613,20 @@ customize your installation.
    IANA.  This option is only used  to modify the daemon configuration files. You
    may also accomplish  the same thing by directly editing them later. 
 
-\item [ \verb?--?with-dump-email=\lt{}email-address\gt{}]
-   \index[dir]{\verb{--{with-dump-email }
+\item [ \verb:--:with-dump-email=\lt{}email-address\gt{}]
+   \index[dir]{\verb:--:with-dump-email }
    This option specifies  the email address where any core dumps should be set.
    This option  is normally only used by developers.  
 
-\item [ \verb?--?with-pid-dir=\lt{}PATH\gt{}  ]
-   \index[dir]{\verb{--{with-pid-dir }
+\item [ \verb:--:with-pid-dir=\lt{}PATH\gt{}  ]
+   \index[dir]{\verb:--:with-pid-dir }
    This specifies where Bacula should place the process id  file during
    execution. The default is: {\bf /var/run}.  This directory is not created by
    the install process, so  you must ensure that it exists before using Bacula
    the  first time.  
 
-\item [ \verb?--?with-subsys-dir=\lt{}PATH\gt{}]
-   \index[dir]{\verb{--{with-subsys-dir }
+\item [ \verb:--:with-subsys-dir=\lt{}PATH\gt{}]
+   \index[dir]{\verb:--:with-subsys-dir }
    This specifies where Bacula should place the subsystem lock  file during
    execution. The default is {\bf /var/run/subsys}.  Please make sure that you do
    not specify the same directory  for this directory and for the {\bf sbindir}
@@ -634,40 +634,40 @@ customize your installation.
    subsys directory is not created by the Bacula install,  so you must be sure to
    create it before using Bacula. 
 
-\item [ \verb?--?with-dir-password=\lt{}Password\gt{}]
-   \index[dir]{\verb{--{with-dir-password }
+\item [ \verb:--:with-dir-password=\lt{}Password\gt{}]
+   \index[dir]{\verb:--:with-dir-password }
    This option allows you to specify the password used to  access the Directory
    (normally from the Console program).  If it is not specified, configure will
    automatically create a random  password.  
 
-\item [ \verb?--?with-fd-password=\lt{}Password\gt{} ]
-   \index[fd]{\verb{--{with-fd-password }
+\item [ \verb:--:with-fd-password=\lt{}Password\gt{} ]
+   \index[fd]{\verb:--:with-fd-password }
    This option allows you to specify the password used to  access the File daemon
    (normally called from the Director).  If it is not specified, configure will
    automatically create a random  password.  
 
-\item [ \verb?--?with-sd-password=\lt{}Password\gt{} ]
-   \index[sd]{\verb{--{with-sd-password }
+\item [ \verb:--:with-sd-password=\lt{}Password\gt{} ]
+   \index[sd]{\verb:--:with-sd-password }
    This option allows you to specify the password used to  access the Directory
    (normally called from the Director).  If it is not specified, configure will
    automatically create a random  password.  
 
-\item [ \verb?--?with-dir-user=\lt{}User\gt{} ]
-   \index[dir]{\verb{--{with-dir-user }
+\item [ \verb:--:with-dir-user=\lt{}User\gt{} ]
+   \index[dir]{\verb:--:with-dir-user }
    This option allows you to specify the Userid used to  run the Director. The
    Director must be started as root, but  doesn't need to run as root, and  after
    doing preliminary initializations, it can ``drop''  to the UserId specified on
    this option. 
 
-\item [ \verb?--?with-dir-group=\lt{}Group\gt{} ]
-   \index[dir]{\verb{--{with-dir-group }
+\item [ \verb:--:with-dir-group=\lt{}Group\gt{} ]
+   \index[dir]{\verb:--:with-dir-group }
    This option allows you to specify the GroupId used to  run the Director. The
    Director must be started as root, but  doesn't need to run as root, and  after
    doing preliminary initializations, it can ``drop''  to the GroupId specified
    on this option. 
 
-\item [ \verb?--?with-sd-user=\lt{}User\gt{} ]
-   \index[sd]{\verb{--{with-sd-user }
+\item [ \verb:--:with-sd-user=\lt{}User\gt{} ]
+   \index[sd]{\verb:--:with-sd-user }
    This option allows you to specify the Userid used to  run the Storage daemon.
    The Storage daemon must be started as root, but  doesn't need to run as root,
    and  after doing preliminary initializations, it can ``drop''  to the UserId
@@ -675,23 +675,23 @@ customize your installation.
    that the Storage daemon has access  to all the devices (tape drives, ...) that
    it needs. 
 
-\item [ \verb?--?with-sd-group=\lt{}Group\gt{} ]
-   \index[sd]{\verb{--{with-sd-group }
+\item [ \verb:--:with-sd-group=\lt{}Group\gt{} ]
+   \index[sd]{\verb:--:with-sd-group }
    This option allows you to specify the GroupId used to  run the Storage daemon.
    The Storage daemon must be started as root, but  doesn't need to run as root,
    and  after doing preliminary initializations, it can ``drop''  to the GroupId
    specified on this option. 
 
-\item [ \verb?--?with-fd-user=\lt{}User\gt{} ]
-   \index[fd]{\verb{--{with-fd-user }
+\item [ \verb:--:with-fd-user=\lt{}User\gt{} ]
+   \index[fd]{\verb:--:with-fd-user }
    This option allows you to specify the Userid used to  run the File daemon. The
    File daemon must be started as root,  and in most cases, it needs to run as
    root, so this option is  used only in very special cases,  after doing
    preliminary initializations, it can ``drop''  to the UserId specified on this
    option. 
 
-\item [ \verb?--?with-fd-group=\lt{}Group\gt{} ]
-   \index[fd]{\verb{--{with-fd-group }
+\item [ \verb:--:with-fd-group=\lt{}Group\gt{} ]
+   \index[fd]{\verb:--:with-fd-group }
    This option allows you to specify the GroupId used to  run the File daemon.
    The File daemon must be started as root, and  in most cases, it must be run as
    root, however,  after doing preliminary initializations, it can ``drop''  to
@@ -699,7 +699,7 @@ customize your installation.
 
 \end{description}
 
-Note, many other options are presented when you do a {\bf ./configure \verb{--{help},
+Note, many other options are presented when you do a {\bf ./configure \verb:--:help},
 but they are not implemented. 
 
 \subsection*{Recommended Options for most Systems}
@@ -724,7 +724,7 @@ For most systems, we recommend starting with the following options:
 
 If you want to install Bacula in an installation directory rather than run it
 out of the build directory (as developers will do most of the time), you
-should also include the \verb{--{sbindir and \verb{--{sysconfdir options with appropriate
+should also include the \verb:--:sbindir and \verb:--:sysconfdir options with appropriate
 paths. Neither are necessary if you do not use ``make install'' as is the case
 for most development work. The install process will create the sbindir and
 sysconfdir if they do not exist, but it will not automatically create the
@@ -902,7 +902,7 @@ port 9101 for the Director console, port 9102 for the File daemons, and port
 because they have been officially assigned to Bacula by IANA (Internet
 Assigned Numbers Authority). We strongly recommend that you use only these
 ports to prevent any conflicts with other programs. This is in fact the
-default if you do not specify a {\bf \verb{--{with-baseport} option. 
+default if you do not specify a {\bf \verb:--:with-baseport} option. 
 
 You may also want to put the following entries in your {\bf /etc/services}
 file as it will make viewing the connections made by Bacula easier to
@@ -956,8 +956,8 @@ fresh copy of the source tree, or using {\bf make\ distclean} before the {\bf
 ./configure}. 
 
 Since the File daemon does not access the Catalog database, you can remove the
-{\bf \verb{--{with-mysql} or {\bf \verb{--{with-sqlite} options, then add {\bf
-\verb{--{enable-client-only}. This will compile only the necessary libraries and the
+{\bf \verb:--:with-mysql} or {\bf \verb:--:with-sqlite} options, then add {\bf
+\verb:--:enable-client-only}. This will compile only the necessary libraries and the
 client programs and thus avoids the necessity of installing one or another of
 those database programs to build the File daemon. With the above option, you
 simply enter {\bf make} and just the client will be built. 
@@ -1119,7 +1119,7 @@ wx-console.conf
 \addcontentsline{toc}{subsection}{Installing Tray Monitor}
 
 The Tray Monitor is already installed if you used the {\bf
-\verb{--{enable-tray-monitor} configure option and ran {\bf make install}.
+\verb:--:enable-tray-monitor} configure option and ran {\bf make install}.
 
 As you don't run your graphical environment as root (if you do, you should
 change that bad habit), don't forget to allow your user to read {\bf
index 792d8c9668ace7015d89148e39a5e5aaa7bece29..f38ce9ade29da5f1ea877b12db7dbb866fdda85a 100644 (file)
@@ -90,11 +90,11 @@ of this license document, but changing it is not allowed.
 
 The licenses for most software are designed to take away your freedom to share
 and change it. By contrast, the GNU General Public Licenses are intended to
-guarantee your freedom to share and change free software\verb{--{to make sure the
+guarantee your freedom to share and change free software\verb:--:to make sure the
 software is free for all its users. 
 
 This license, the Lesser General Public License, applies to some specially
-designated software packages\verb{--{typically libraries\verb{--{of the Free Software
+designated software packages\verb:--:typically libraries\verb:--:of the Free Software
 Foundation and other authors who decide to use it. You can use it too, but we
 suggest you first think carefully about whether this license or the ordinary
 General Public License is the better strategy to use in any particular case,
index 0b2084a14e6fd04bdcd68d78c0071fe5115bcf75..0d12b23f04322b62fc2a49c23e0028d05c151af9 100644 (file)
@@ -2,7 +2,7 @@
 %%
 
 \section*{Monitor Configuration}
-\label{_ChapterStart35}
+\label{_MonitorChapter}
 \index[general]{Monitor Configuration }
 \index[general]{Configuration!Monitor }
 \addcontentsline{toc}{section}{Monitor Configuration}
@@ -108,7 +108,7 @@ configuration file.  This record is required.
    \index[fd]{DIRPort  }
    Specify the port to use to connect  to the Director. This value will most
 likely already be set to the value  you specified on the {\bf
-\verb{--{with-base-port} option of the  {\bf ./configure} command. This port must be
+\verb:--:with-base-port} option of the  {\bf ./configure} command. This port must be
 identical to the  {\bf DIRport} specified in the {\bf Director} resource of
 the 
 \ilink{Director's configuration}{_ChapterStart40} file.  The
index 06d05b2ad8eacba94cb5aee5b7d2f3f781110088..fd9d67979556f2b5e58623bce971defca5ef3c17 100644 (file)
@@ -12,7 +12,7 @@
 \index[general]{Phase I!Installing and Configuring MySQL -- }
 \addcontentsline{toc}{subsection}{Installing and Configuring MySQL -- Phase I}
 
-If you use the ./configure \verb{--{with-mysql=mysql-directory statement for
+If you use the ./configure \verb:--:with-mysql=mysql-directory statement for
 configuring {\bf Bacula}, you will need MySQL version 3.23.53 or later
 installed in the {\bf mysql-directory}.
 Bacula has been tested on MySQL version 4.1.12 and works providing
@@ -21,7 +21,7 @@ with MySQL 3.23.x.  If you are using one of the new modes such
 as ANSI/ISO compatibility, you may experience problems.
 
 If MySQL is installed in the standard system location, you need only enter
-{\bf \verb{--{with-mysql} since the configure program will search all the
+{\bf \verb:--:with-mysql} since the configure program will search all the
 standard locations.  If you install MySQL in your home directory or some
 other non-standard directory, you will need to provide the full path to it.
 
@@ -33,7 +33,7 @@ users on your system.
 
 Beginning with Bacula version 1.31, the thread safe version of the
 MySQL client library is used, and hence you must add the {\bf
-\verb{--{enable-thread-safe-client} option to the {\bf ./configure} as shown below: 
+\verb:--:enable-thread-safe-client} option to the {\bf ./configure} as shown below: 
 
 \begin{enumerate}
 \item Download MySQL source code from 
@@ -55,7 +55,7 @@ command such as:
    where you replace {\bf mysql-source-directory} with the  directory name where
    you put the MySQL source code.  
 
-\item ./configure \verb{--{enable-thread-safe-client \verb{--{prefix=mysql-directory
+\item ./configure \verb:--:enable-thread-safe-client \verb:--:prefix=mysql-directory
 
    where you replace {\bf mysql-directory} with the directory  name where you
    want to install mysql. Normally for system  wide use this is /usr/local/mysql.
@@ -102,7 +102,7 @@ running MySQL, and you should have configured, built and installed {\bf
 Bacula}. If not, please complete these items before proceeding. 
 
 Please note that the {\bf ./configure} used to build {\bf Bacula} will need to
-include {\bf \verb{--{with-mysql=mysql-directory}, where {\bf mysql-directory} is the
+include {\bf \verb:--:with-mysql=mysql-directory}, where {\bf mysql-directory} is the
 directory name that you specified on the ./configure command for configuring
 MySQL. This is needed so that Bacula can find the necessary include headers
 and library files for interfacing to MySQL. 
@@ -139,7 +139,7 @@ Now you will create the Bacula MySQL database and the tables that Bacula uses.
    This script creates the MySQL {\bf bacula} database.  The databases you create
 as well as the access databases  will be located in \lt{}install-dir\gt{}/var/
 in a subdirectory  with the name of the database, where \lt{}install-dir\gt{}
-is the  directory name that you specified on the {\bf \verb{--{prefix} option. This 
+is the  directory name that you specified on the {\bf \verb:--:prefix} option. This 
 can be important to know if you want to make a special backup  of the Bacula
 database or to check its size.  
 
@@ -203,11 +203,11 @@ device name for your machine.
 
 After configuring Bacula with 
 
-./configure \verb{--{enable-thread-safe-client \verb{--{prefix=\lt{}mysql-directory\gt{}
+./configure \verb:--:enable-thread-safe-client \verb:--:prefix=\lt{}mysql-directory\gt{}
 where \lt{}mysql-directory\gt{} is in my case {\bf /home/kern/mysql}, you may
 have to configure the loader so that it can find the MySQL shared libraries.
 If you have previously followed this procedure and later add the {\bf
-\verb{--{enable-thread-safe-client} options, you will need to rerun the {\bf
+\verb:--:enable-thread-safe-client} options, you will need to rerun the {\bf
 ldconfig} program shown below. If you put MySQL in a standard place such as
 {\bf /usr/lib} or {\bf /usr/local/lib} this will not be necessary, but in my
 case it is. The description that follows is Linux specific. For other
@@ -250,4 +250,3 @@ Bacula otherwise you are likely to get bizarre failures.  If you
 install from rpms and you upgrade MySQL, you must also rebuild Bacula.
 You can do so by rebuilding from the source rpm. To do so, you may need
 eo modify the bacula.spec file to account for the new MySQL version.
-
index e8af3fea23e3444adc776925e0e2e370d8b2b912..f31ea06d0a57314874dd22b5e78a40caf80e0313 100644 (file)
 \addcontentsline{toc}{subsection}{Installing and Configuring PostgreSQL --
 Phase I}
 
-If you use the {\bf ./configure \verb{--{with-postgresql=PostgreSQL-Directory}
+If you use the {\bf ./configure \verb:--:with-postgresql=PostgreSQL-Directory}
 statement for configuring {\bf Bacula}, you will need PostgreSQL version 7.3
 or later installed. NOTE! PostgreSQL versions earlier than 7.3 do not work
 with Bacula. If PostgreSQL is installed in the standard system location, you
-need only enter {\bf \verb{--{with-postgresql} since the configure program will
+need only enter {\bf \verb:--:with-postgresql} since the configure program will
 search all the standard locations. If you install PostgreSQL in your home
 directory or some other non-standard directory, you will need to provide the
-full path with the {\bf \verb{--{with-postgresql} option. 
+full path with the {\bf \verb:--:with-postgresql} option. 
 
 Installing and configuring PostgreSQL is not difficult but can be confusing
 the first time. If you prefer, you may want to use a package provided by your
@@ -54,7 +54,7 @@ a running PostgreSQL, and you should have configured, built and installed {\bf
 Bacula}. If not, please complete these items before proceeding. 
 
 Please note that the {\bf ./configure} used to build {\bf Bacula} will need to
-include {\bf \verb{--{with-postgresql=PostgreSQL-directory}, where {\bf
+include {\bf \verb:--:with-postgresql=PostgreSQL-directory}, where {\bf
 PostgreSQL-directory} is the directory name that you specified on the
 ./configure command for configuring PostgreSQL (if you didn't specify a
 directory or PostgreSQL is installed in a default location, you do not need to
index 8394705eb3ca2770f3eca4f5b29513a5cf924275..5fc182bb149e91eed289e797daab4052844fc71a 100644 (file)
@@ -431,7 +431,8 @@ only if one or more Volumes have been pruned or purged from your catalog so
 that the records on the Volume are no longer in the catalog. 
 
 With some care, it can also be used to synchronize your existing catalog with
-a Volume. Since {\bf bscan} modifies your catalog, we strongly recommend that
+a Volume. Although we have never seen a case of bscan damaging a
+catalog, since bscan modifies your catalog, we recommend that
 you do a simple ASCII backup of your database before running {\bf bscan} just
 to be sure. See 
 \ilink{Compacting Your Database}{CompactingMySQL}. 
@@ -472,15 +473,17 @@ you have provided security on your database, you may need to supply either the
 database name ({\bf -b} option), the user name ({\bf -u} option), and/or the
 password ({\bf -p}) options. 
 
-As an example, let's suppose that you did a backup to Volume ``Vol001'' and
-that sometime later all records of that Volume were pruned or purged from the
-database. By using {\bf bscan} you can recreate the catalog entries for that
-Volume and then use the {\bf restore} command in the Console to restore
+As an example, let's suppose that you did a backup to Volumes ``Vol001'' 
+and ``Vol002'', then sometime later all records of one or both those
+Volumes
+were pruned or purged from the
+database. By using {\bf bscan} you can recreate the catalog entries for
+those Volumes and then use the {\bf restore} command in the Console to restore
 whatever you want. A command something like: 
 
 \footnotesize
 \begin{verbatim}
-bscan -c bacula-sd.conf -v -V Vol001 /dev/nst0
+bscan -c bacula-sd.conf -v -V Vol001\|Vol002 /dev/nst0
 \end{verbatim}
 \normalsize
 
@@ -490,7 +493,7 @@ daemon's conf file, the Volume name, and your tape (or disk) device name. This
 command must read the entire tape, so if it has a lot of data, it may take a
 long time, and thus you might want to immediately use the command listed
 below. Note, if you are writing to a disk file, replace the device name with
-the path to the directory that contains the Volume. This must correspond to
+the path to the directory that contains the Volumes. This must correspond to
 the Archive Device in the conf file. 
 
 Then to actually write or store the records in the catalog, add the {\bf -s}
@@ -498,17 +501,17 @@ option as follows:
 
 \footnotesize
 \begin{verbatim}
- bscan -s -m -c bacula-sd.conf -v -V Vol001 /dev/nst0
+ bscan -s -m -c bacula-sd.conf -v -V Vol001\|Vol002 /dev/nst0
 \end{verbatim}
 \normalsize
 
 When writing to the database, if bscan finds existing records, it will
 generally either update them if something is wrong or leave them alone. Thus
-if the Volume you are scanning is all or partially in the catalog already, no
+if the Volumes you are scanning are all or partially in the catalog already, no
 harm will be done to that existing data. Any missing data will simply be
 added. 
 
-If you have multiple tapes, you can scan them with: 
+If you have multiple tapes, you should scan them with: 
 
 \footnotesize
 \begin{verbatim}
@@ -516,9 +519,16 @@ If you have multiple tapes, you can scan them with:
 \end{verbatim}
 \normalsize
 
-You should, where ever possible try to specify the tapes in the order they are
-written. However, bscan can handle scanning tapes that are not sequential. Any
-incomplete records at the end of the tape will simply be ignored in that case.
+You should, always try to specify the tapes in the order they are written.
+However, bscan can handle scanning tapes that are not sequential.  Any
+incomplete records at the end of the tape will simply be ignored in that
+case.  If you are simply reparing an existing catalog, this may be OK, but
+if you are creating a new catalog from scratch, it will leave your database
+in an incorrect state.  If you do not specify all necessary Volumes on a
+single bscan command, bscan will not be able to correctly restore the
+records that span two volumes.  In other words, it is much better to
+specify two or three volumes on a single bscan command rather than run
+bscan two or three times, each with a single volume.
 
 
 Note, the restoration process using bscan is not identical to the original
@@ -1141,68 +1151,3 @@ internal file type, or the link (if any). Debug levels of 10 or greater cause
 the filename and the path to be separated using the same algorithm that is
 used when putting filenames into the Catalog database. 
 
-\subsection*{bimagemgr}
-\label{bimagemgr}
-\index[general]{Bimagemgr }
-\addcontentsline{toc}{subsection}{bimagemgr}
-
-{\bf bimagemgr} is a utility for those who backup to disk volumes in order to
-commit them to CDR disk, rather than tapes. It is a web based interface
-written in perl, used to monitor when a volume file needs to be burned to
-disk. It requires: 
-
-\begin{itemize}
-\item A web server running on the bacula server 
-\item A CD recorder installed and configured on the bacula server 
-\item The cdrtools package installed on the bacula server. 
-\item perl, perl-DBI module, and either DBD-MySQL or DBD-PostgreSQL modules 
-   \end{itemize}
-
-SQLite databases and DVD burning are not supported by {\bf bimagemgr} at this
-time, but both are planned for future releases. 
-
-\subsubsection*{bimagemgr installation}
-\index[general]{bimagemgr!Installation }
-\index[general]{bimagemgr Installation }
-\addcontentsline{toc}{subsubsection}{bimagemgr Installation}
-
-Please see the README file in the bimagemgr directory of the distribution for
-instructions. 
-
-\subsubsection*{bimagemgr usage}
-\index[general]{bimagemgr!Usage }
-\index[general]{bimagemgr Usage }
-\addcontentsline{toc}{subsubsection}{bimagemgr Usage}
-
-Calling the program in your web browser, e.g. {\tt
-http://localhost/cgi-bin/bimagemgr.pl} will produce a display as shown below
-in Figure 1. The program will query the bacula database and display all volume
-files with the date last written and the date last burned to disk. If a volume
-needs to be burned (last written is newer than last burn date) a ``Burn''
-button will be displayed in the rightmost column. 
-
-\addcontentsline{lof}{figure}{Bacula CD Image Manager}
-\includegraphics{./bimagemgr1.eps} \\Figure 1 
-
-Place a blank CDR disk in your recorder and click the ``Burn'' button. This will
-cause a pop up window as shown in Figure 2 to display the burn progress. 
-
-\addcontentsline{lof}{figure}{Bacula CD Image Burn Progress Window}
-\includegraphics{./bimagemgr2.eps} \\Figure 2 
-
-When the burn finishes the pop up window will display the results of cdrecord
-as shown in Figure 3. Close the pop up window and refresh the main window. The
-last burn date will be updated and the ``Burn'' button for that volume will
-disappear. Should you have a failed burn you can reset the last burn date of
-that volume by clicking its ``Reset'' link. 
-
-\addcontentsline{lof}{figure}{Bacula CD Image Burn Results}
-\includegraphics{./bimagemgr3.eps} \\Figure 3 
-
-In the bottom row of the main display window are two more buttons labeled
-``Burn Catalog'' and ``Blank CDRW''. ``Burn Catalog'' will place a copy of
-your bacula catalog on a disk. If you use CDRW disks rather than CDR then
-``Blank CDRW'' allows you to erase the disk before re-burning it. Regularly
-committing your backup volume files and your catalog to disk with {\bf
-bimagemgr} ensures that you can rebuild easily in the event of some disaster
-on the bacula server itself. 
index 105c1f1659d393d862ac549265b017fc654eaaad..0237dd5add5d5d512d600718c5ebeff67b99d524 100644 (file)
@@ -23,7 +23,7 @@ you want, based on the current state of Bacula.
 \addcontentsline{toc}{subsection}{Python Configuration}
 
 Python must be enabled during the configuration process by adding
-a \verb?--?with-python, and possibly specifying an alternate
+a \verb:--:with-python, and possibly specifying an alternate
 directory if your Python is not installed in a standard system
 location. If you are using RPMs you will need the python-devel package
 installed.
@@ -33,9 +33,11 @@ runs in Bacula's address space, so even though it is an interpreted
 language, it is very efficient.
 
 When the Director starts, it looks to see if you have a {\bf
-Scripts Directory} defined, if so, it looks in that directory for
-a file named {\bf DirStartUp}. If it is found, Bacula will pass this
-file to Python for execution.
+Scripts Directory} Directive defined, if so, it looks in that directory for
+a file named {\bf DirStartUp.py}. If it is found, Bacula will pass this
+file to Python for execution. The {\bf Scripts Directory} is a new
+directive that you add to the Director resource of your bacula-dir.conf
+file.
 
 \subsection*{Bacula Events}
 \index[general]{Bacula Events}
@@ -62,7 +64,7 @@ There are four Python objects that you will need to work with:
 \item [The Bacula Object]
    The Bacula object is created by the Bacula daemon (the Director
    in the present case) when the daemon starts. It is available to
-   the Python startup script, {\bf DirStartup}, by importing the
+   the Python startup script, {\bf DirStartup.py}, by importing the
    Bacula definitions with {\bf import bacula}. The methods
    available with this object are described below. 
 
@@ -187,18 +189,22 @@ The following are the methods (subroutines) provided within the
 directory by the {\bf job} object.
 \begin{description}
 \item [set_events] The set_events takes a single
-argument, which is the instantation of the Job Events class
-that contains the methods that you want called. The method
-names that will be called must correspond to the Bacula
-defined events. You may define additional methods but Bacula
-will not use them.
+   argument, which is the instantation of the Job Events class
+   that contains the methods that you want called. The method
+   names that will be called must correspond to the Bacula
+   defined events. You may define additional methods but Bacula
+   will not use them.
 \item [run] The run method takes a single string
-argument, which is the run command (same as in the Console)
-that you want to submit to start a new Job. The value
-returned by the run method is the JobId of the job that
-started, or -1 if there was an error.
+   argument, which is the run command (same as in the Console)
+   that you want to submit to start a new Job. The value
+   returned by the run method is the JobId of the job that
+   started, or -1 if there was an error.
 \item [write] The write method is used to be able to send
-print output to the Job Report. This will be described later.
+   print output to the Job Report. This will be described later.
+\item [DoesVolumeExist] The DoesVolumeExist takes a single
+   string argument, which is the Volume name, and returns 
+   1 if the volume exists in the Catalog and 0 if the volume
+   does not exist.
 \end{description}
 
 The following attributes are read/write within the Director 
@@ -230,8 +236,10 @@ for the {\bf job} object.
 \item [WorkingDir]
 \item [Version] tuple consisting of (Version, Build-date)
 \item [CatalogRes] tuple consisting of (DBName, Address, User,
-  Password, Socket, Port) taken from the Catalog resource for
-  the Job.
+  Password, Socket, Port, Database Vendor) taken from the Catalog resource 
+   for the Job with the exception of Database Vendor, which is
+   one of the following: MySQL, PostgreSQL, SQLite, Internal,
+   depending on what database you configured.
 \end{description}
 
 The following write-only attributes are available within the
@@ -243,6 +251,27 @@ Director:
    NewVolume event.
 \end{description}
 
+\subsection*{Python Console Command}
+\index[general]{Python Console Command}
+\index[general]{Console Command!Python}
+\addcontentsline{toc}{subsection}{Python Console Command}
+
+There is a new Console command named {\bf python}. It takes
+a single argument {\bf restart}. Example:
+\begin{verbatim}
+  python restart
+\end{verbatim}
+
+This command restarts the Python interpreter in the Director.
+This can be useful when you are modifying the DirStartUp script,
+because normally Python will cache it, and thus the
+script will be read one time.
+
+
+\subsection*{Python Example}
+\index[general]{Python Example}
+\index[general]{Example!Python}
+\addcontentsline{toc}{subsection}{Python Example}
 
 An example script for the Director startup file is provided in
 {\bf examples/python/DirStartup.py} as follows:
index 2e751c53d1227030349aa940b5cda9fe55f0689d..b61648a2af016e121cc10fc185db74116e6655b8 100644 (file)
@@ -77,9 +77,9 @@ Bacula, you must create valid configuration files for the Director, the File
 daemon, the Storage daemon, and the Console programs. If you have followed our
 recommendations, default configuration files as well as the daemon binaries
 will be located in your installation directory. In any case, the binaries are
-found in the directory you specified on the {\bf \verb{--{sbindir} option to the {\bf
+found in the directory you specified on the {\bf \verb:--:sbindir} option to the {\bf
 ./configure} command, and the configuration files are found in the directory
-you specified on the {\bf \verb{--{sysconfdir} option. 
+you specified on the {\bf \verb:--:sysconfdir} option. 
 
 When initially setting up Bacula you will need to invest a bit of time in
 modifying the default configuration files to suit your environment. This may
@@ -98,22 +98,22 @@ The Console program is used by the administrator to interact with the Director
 and to manually start/stop Jobs or to obtain Job status information. 
 
 The Console configuration file is found in the directory specified on the {\bf
-\verb{--{sysconfdir} option that you specified on the {\bf ./configure} command and
+\verb:--:sysconfdir} option that you specified on the {\bf ./configure} command and
 by default is named {\bf console.conf}.
 
-If you choose to build the GNOME console with the {\bf \verb{--{enable-gnome} option,
+If you choose to build the GNOME console with the {\bf \verb:--:enable-gnome} option,
 you also find a default configuration file for it, named {\bf
 gnome-console.conf}.
 
 The same applies to the wxWidgets console, which is build with the {\bf
-\verb{--{enable-wx-console} option, and the name of the default configuration file
+\verb:--:enable-wx-console} option, and the name of the default configuration file
 is, in this case, {\bf wx-console.conf}.
 
 Normally, for first time users, no change is needed to these files. Reasonable
 defaults are set. 
 
 \subsubsection*{
-\ilink{Configuring the Monitor Program}{_ChapterStart35}}
+\ilink{Configuring the Monitor Program}{_MonitorChapter}}
 \index[general]{Program!Configuring the Monitor }
 \index[general]{Configuring the Monitor Program }
 \addcontentsline{toc}{subsubsection}{Configuring the Monitor Program}
@@ -132,7 +132,7 @@ status for each of the daemons. The image shows the status for the Storage
 daemon (MainSD) that is currently selected. 
 
 The Monitor configuration file is found in the directory specified on the {\bf
-\verb{--{sysconfdir} option that you specified on the {\bf ./configure} command and
+\verb:--:sysconfdir} option that you specified on the {\bf ./configure} command and
 by default is named {\bf tray-monitor.conf}. Normally, for first time users,
 you just need to change the permission of this file to allow non-root users to
 run the Monitor, as this application must run as the same user as the
@@ -151,7 +151,7 @@ request of the Director, finds the files to be backed up and sends them (their
 data) to the Storage daemon. 
 
 The File daemon configuration file is found in the directory specified on the
-{\bf \verb{--{sysconfdir} option that you specified on the {\bf ./configure} command.
+{\bf \verb:--:sysconfdir} option that you specified on the {\bf ./configure} command.
 By default, the File daemon's configuration file is named {\bf
 bacula-fd.conf}. Normally, for first time users, no change is needed to this
 file. Reasonable defaults are set. However, if you are going to back up more
@@ -169,7 +169,7 @@ The Director is the central control program for all the other daemons. It
 schedules and monitors all jobs to be backed up. 
 
 The Director configuration file is found in the directory specified on the
-{\bf \verb{--{sysconfdir} option that you specified on the {\bf ./configure} command.
+{\bf \verb:--:sysconfdir} option that you specified on the {\bf ./configure} command.
 Normally the Director's configuration file is named {\bf bacula-dir.conf}. 
 
 In general, the only change you must make is modify the FileSet resource so
@@ -204,7 +204,7 @@ data from a File daemon and placing it on Storage media, or in the case of a
 restore request, to find the data and send it to the File daemon. 
 
 The Storage daemon's configuration file is found in the directory specified on
-the {\bf \verb{--{sysconfdir} option that you specified on the {\bf ./configure}
+the {\bf \verb:--:sysconfdir} option that you specified on the {\bf ./configure}
 command. By default, the Storage daemon's file is named {\bf bacula-sd.conf}.
 Edit this file to contain the correct Archive device names for any tape
 devices that you have. If the configuration process properly detected your
index 65752797bf908d8b327f76a6a9d990b71429996c..b829db7fcb47f99e33beb6be62b62d93b92a313b 100644 (file)
@@ -54,7 +54,7 @@ built-in.
 Bacula}
 
 TCP Wrappers are implemented if you turn them on when configuring ({\bf
-./configure \verb{--{with-libwrap}). With this code enabled, you may control who may
+./configure \verb:--:with-libwrap}). With this code enabled, you may control who may
 access your daemons. This control is done by modifying the file: {\bf
 /etc/hosts.allow}. The program name that {\bf Bacula} uses when applying these
 access restrictions is the name you specify in the daemon configuration file.
index 3982b77e5b7e5e373f34a4b0e894be21da5321a0..d94a5683065d2eddcd539601fe981cbf525c436d 100644 (file)
@@ -13,7 +13,7 @@
 \addcontentsline{toc}{subsection}{Installing and Configuring SQLite -- Phase
 I}
 
-If you use the {\bf ./configure \verb{--{with-sqlite} statement for configuring {\bf
+If you use the {\bf ./configure \verb:--:with-sqlite} statement for configuring {\bf
 Bacula}, you will need SQLite version 2.8.16 or later installed. Our standard
 location (for the moment) for SQLite is in the dependency package {\bf
 depkgs/sqlite-2.8.16}. Please note that the version will be updated as new
@@ -44,7 +44,7 @@ At this point, you should return to completing the installation of {\bf
 Bacula}. 
 
 Please note that the {\bf ./configure} used to build {\bf Bacula} will need to
-include {\bf \verb{--{with-sqlite}. 
+include {\bf \verb:--:with-sqlite}. 
 
 \subsection*{Installing and Configuring SQLite -- Phase II}
 \label{phase2}
index 2de0d06fd5695a422f04f9a2b1d9040ea4a223dd..6c165016b8c93350b1eb4062735e1fbddf5b3da2 100644 (file)
@@ -597,7 +597,7 @@ Volume.
 
 You should protect your Catalog database. If you are using SQLite, make sure
 that the working directory is readable only by root (or your Bacula userid),
-and ensure that {\bf bacula.db} has permissions {\bf -rw-r\verb{--{r\verb{--{} (i.e. 640) or
+and ensure that {\bf bacula.db} has permissions {\bf -rw-r\verb:--:r\verb:--:} (i.e. 640) or
 more strict. If you are using MySQL or PostgreSQL, please note that the Bacula
 setup procedure leaves the database open to anyone. At a minimum, you should
 assign the user {\bf bacula} a userid and add it to your Director's
index 041e17f6f49e2a5eb76f08d52d1ebaad2ec02469..f52cc2a6de57219b151a344ae08c7f7875b77d00 100644 (file)
@@ -69,7 +69,7 @@ you will not want to use {\bf startmysql} or {\bf stopmysql}. If you are
 running this in production, you will probably want to find some way to
 automatically start MySQL or PostgreSQL after each system reboot. 
 
-If you are using SQLite (i.e. you specified the {\bf \verb{--{with-sqlite=xxx} option
+If you are using SQLite (i.e. you specified the {\bf \verb:--:with-sqlite=xxx} option
 on the {\bf ./configure} command, you need do nothing. SQLite is automatically
 started by {\bf Bacula}. 
 
@@ -127,7 +127,7 @@ from the top level directory, simply enter:
 
 Note, on 1.32 versions and lower, the command name is {\bf console} rather
 than bconsole. Alternatively to running the command line console, if you have
-GNOME installed and used the {\bf \verb{--{enable-gnome} on the configure command,
+GNOME installed and used the {\bf \verb:--:enable-gnome} on the configure command,
 you may use the GNOME Console program: 
 
 ./gnome-console 
@@ -198,7 +198,7 @@ Type {\bf help} to see a list of available commands:
 \normalsize
 
 Details of the console program's commands are explained in the 
-\ilink{Console Chapter}{_ChapterStart23} of this manual. 
+\ilink{Console Chapter}{_ConsoleChapter} of this manual. 
 
 \subsection*{Running a Job}
 \label{Running}
@@ -209,7 +209,7 @@ Details of the console program's commands are explained in the
 At this point, we assume you have done the following: 
 
 \begin{itemize}
-\item Configured Bacula with {\bf ./configure \verb{--{your-options} 
+\item Configured Bacula with {\bf ./configure \verb:--:your-options} 
 \item Built Bacula using {\bf make} 
 \item Installed Bacula using {\bf make install} 
 \item Have created your database with, for example,  {\bf
@@ -1347,4 +1347,4 @@ attributes used when creating a Volume).
 It is also possible to add media to the pool without physically labeling the
 Volumes. This can be done with the {\bf add} command. For more information,
 please see the 
-\ilink{Console Chapter}{_ChapterStart23} of this manual. 
+\ilink{Console Chapter}{_ConsoleChapter} of this manual. 
index 431bbce0577aa172f6ec2a3970437dd810964a53..cfeb2317a4cdc91f542dbfaef8ab08f914552fb5 100644 (file)
@@ -589,7 +589,7 @@ In order to avoid option clashes between the options necessary for {\bf
 Bacula} to run on Windows and the standard Bacula options, all Windows
 specific options are signaled with a forward slash character (/), while as
 usual, the standard Bacula options are signaled with a minus (-), or a minus
-minus (\verb{--{). All the standard Bacula options can be used on the Windows
+minus (\verb:--:). All the standard Bacula options can be used on the Windows
 version. In addition, the following Windows only options are implemented: 
 
 \begin{description}