\index[general]{General }
\addcontentsline{toc}{subsection}{General}
-In general, you will need the Bacula source release, and if you want to run a
-Windows client, you will need the Bacula Windows binary release. However,
-Bacula needs certain third party packages (such as {\bf SQLite}, {\bf MySQL}, or
-{\bf PostgreSQL}
-to build properly depending on the options you specify. To simplify your task,
-we have combined a number of these packages into two {\bf depkgs} releases
-(Dependency Packages). This can vastly simplify your life by providing you
-with all the necessary packages rather than requiring you to find them on the
-Web, load them, and install them.
+In general, you will need the Bacula source release, and if you want to run
+a Windows client, you will need the Bacula Windows binary release.
+However, Bacula needs certain third party packages (such as {\bf MySQL},
+{\bf PostgreSQL}, or {\bf SQLite} to build properly depending on the
+options you specify. Normally, {\bf MySQL} and {\bf PostgreSQL} are
+packages that can be installed on your distribution. However, if you do
+not have them, to simplify your task, we have combined a number of these
+packages into two {\bf depkgs} releases (Dependency Packages). This can
+vastly simplify your life by providing you with all the necessary packages
+rather than requiring you to find them on the Web, load them, and install
+them.
\subsection*{Source Release Files}
\index[general]{Source Files}
\item [winbacula-1.38.0.exe]
This file is the 32 bit Windows installer for installing
the Windows client (File daemon) on a Windows machine.
+ Beginning with Bacula version 1.39.20, this executable will
+ also load the Win32 Director and the Win32 Storage daemon.
\end{description}
If you are upgrading from one Bacula version to another, you should first
carefully read the ReleaseNotes of all versions between your current version
and the version to which you are upgrading. If the Bacula catalog database has
-been upgraded, you will either need to reinitialize your database starting
+been upgraded (as it is almost every major release),
+you will either need to reinitialize your database starting
from scratch, or save an ASCII copy of your database, then proceed to upgrade
it. This is normally done after Bacula is build and installed by:
{\bf make uninstall} before doing an upgrade. In fact, if you do so, you will
most likely delete all your conf files, which could be disastrous.
The normal procedure during an upgrade is simply:
+
\begin{verbatim}
./configure (your options)
make
make install
\end{verbatim}
-In general none of your existing .conf or .sql files will be overwritten.
+In general none of your existing .conf or .sql files will be overwritten,
+and you must do both the {\bf make} and {\bf make install} commands, a
+{\bf make install} without the preceding {\bf make} will not work.
+
For additional information on upgrading, please see the \ilink{Upgrading Bacula
Versions}{upgrading} in the Tips chapter of this manual.
to time, the current makeup is the following:
\addcontentsline{lot}{table}{Dependency Packages}
-\begin{longtable}{|l|l|l|l|}
+\begin{longtable}{|l|l|l|}
\hline
\multicolumn{1}{|c| }{\bf 3rd Party Package } & \multicolumn{1}{c| }{\bf
-depkgs } & \multicolumn{1}{c| }{\bf depkgs1 } & \multicolumn{1}{c| }{\bf
-depkgs-win32 } \\
- \hline {SQLite } & \multicolumn{1}{c| }{X } & \multicolumn{1}{c| }{- } &
-\multicolumn{1}{c| }{- } \\
- \hline {mtx } & \multicolumn{1}{c| }{X } & \multicolumn{1}{c| }{- } &
-\multicolumn{1}{c| }{- } \\
- \hline {readline } & \multicolumn{1}{c| }{- } & \multicolumn{1}{c| }{X } &
-\multicolumn{1}{c| }{- } \\
- \hline {pthreads } & \multicolumn{1}{c| }{- } & \multicolumn{1}{c| }{- } &
-\multicolumn{1}{c| }{X } \\
- \hline {zlib } & \multicolumn{1}{c| }{- } & \multicolumn{1}{c| }{- } &
-\multicolumn{1}{c| }{X } \\
- \hline {wxWidgets } & \multicolumn{1}{c| }{- } & \multicolumn{1}{c| }{- } &
-\multicolumn{1}{c| }{X }
-\\ \hline
+depkgs } & \multicolumn{1}{c| }{\bf depkgs1 } \\
+ \hline {SQLite } & \multicolumn{1}{c| }{X } & \multicolumn{1}{c| }{- } \\
+ \hline {SQLite3 } & \multicolumn{1}{c| }{X } & \multicolumn{1}{c| }{- } \\
+ \hline {mtx } & \multicolumn{1}{c| }{X } & \multicolumn{1}{c| }{- } \\
+ \hline {readline } & \multicolumn{1}{c| }{- } & \multicolumn{1}{c| }{X } \\
+ \hline {pthreads } & \multicolumn{1}{c| }{- } & \multicolumn{1}{c| }{- } \\
+ \hline {zlib } & \multicolumn{1}{c| }{- } & \multicolumn{1}{c| }{- } \\
+ \hline {wxWidgets } & \multicolumn{1}{c| }{- } & \multicolumn{1}{c| }{- } \\
+ \hline
\end{longtable}
with valuable information about your SCSI tape drive (e.g. compression,
min/max block sizes, ...).
-The {\bf depkgs-win32} package contains the source code for the pthreads,
-zlib, and wxWidgets libraries used by the native Win32 client program. It
-will only be needed if you intend to build the Win32 client from source.
+The {\bf depkgs-win32} package is deprecated and no longer used in
+Bacula version 1.39.x and later. It was previously used to build
+the native Win32 client program, but this program is now built on Linux
+systems using cross-compiling. All the tools and third party libraries
+are automatically downloaded by executing the appropriate scripts. See
+src/win32/README.mingw32 for more details.
\subsection*{Supported Operating Systems}
\label{Systems}
The basic installation is rather simple.
\begin{enumerate}
-\item Install and build any {\bf depkgs} as noted above.
+\item Install and build any {\bf depkgs} as noted above. This
+ should be unnecessary on most modern Operating Systems.
\item Configure and install MySQL or PostgreSQL (if desired).
\ilink{Installing and Configuring MySQL Phase I}{_ChapterStart} or
\ilink{Installing and Configuring PostgreSQL Phase
And you have already installed the additional rpms noted above.
\item As an alternative to MySQL and PostgreSQL, configure and install SQLite,
- which is part of the {\bf depkgs}.
+ which is part of the {\bf depkgs} and also available with most modern
+ Operating Systems.
\ilink{Installing and Configuring SQLite}{_ChapterStart33}. SQLite is
probably not suited to a fair size production environment because it
tends to be slow compared to MySQL and it has few or poor tools for
repairing database damage.
-
\item Detar the Bacula source code preferably into the {\bf bacula} directory
discussed above.
configure} statement to ensure that the modules you want are built and that
everything is placed into the correct directories.
-For example, on RedHat, one could use the following:
+For example, on Fedora, RedHat, or SuSE one could use the following:
\footnotesize
\begin{verbatim}
--sysconfdir=$HOME/bacula/bin \
--with-pid-dir=$HOME/bacula/bin/working \
--with-subsys-dir=$HOME/bacula/bin/working \
- --with-mysql=$HOME/mysql \
+ --with-mysql \
--with-working-dir=$HOME/bacula/bin/working \
--with-dump-email=$USER
\end{verbatim}
\footnotesize
\begin{verbatim}
LDFLAGS="-lssl -lcyrpto" \
- ./configure \
- <your-options>
+ ./configure <your-options>
\end{verbatim}
\normalsize
package will gobble up prompts.
readline is no longer supported after version 1.34. The code within Bacula
-remains, so it should be usable, and if users submit patches for it, I will
+remains, so it should be usable, and if users submit patches for it, we will
be happy to apply them. However, due to the fact that each version of
readline seems to be incompatible with previous versions, and that there
-are significant differences between systems, I can no longer afford to
+are significant differences between systems, we can no longer afford to
support it.
\subsection*{What Database to Use?}
{-}{-}with-postgresql, otherwise the ./configure will fail.
\item [ {-}{-}with-openssl=\lt{}path\gt{}]
- This configuration option is necessary if you want to enable TLS (ssl)
- in Bacula. Normally, the {\bf path} specification is not necessary since
+ This configuration option is necessary if you want to enable TLS (ssl),
+ which encrypts the communications within
+ Bacula or if you want to use File Daemon PKI data encryption.
+ Normally, the {\bf path} specification is not necessary since
the configuration searches for the OpenSSL libraries in standard system
locations. Enabling OpenSSL in Bacula permits secure communications
- between the daemons. For more information on using TLS, please see the
- \ilink{Bacula TLS}{_ChapterStart61} chapter of this manual.
+ between the daemons and/or data encryption in the File daemon.
+ For more information on using TLS, please see the
+ \ilink{Bacula TLS -- Communications Encryption}{CommEncryption} chapter
+ of this manual.
+ For more information on using PKI data encryption, please see the
+ \ilink{Bacula PKI -- Data Encryption}{DataEncryption}
+ chapter of this manual.
+
\item [ {-}{-}with-python=\lt{}path\gt{}]
On SuSE, the libwrappers libraries needed to link Bacula are
contained in the tcpd-devel package. On RedHat the package is named
- tcp_wrappers.
+ tcp\_wrappers.
\item [ {-}{-}with-working-dir=\lt{}working-directory-path\gt{} ]
\index[general]{{-}{-}with-working-dir }