Bacula, network-based backup, recovery & verification system	
http://www.bacula.org
===============================================================================

The 'bacula-common' package provides some of the common infrastructure
for Bacula.  You can find Bacula READMEs and other documentation files
there.

DFSG-FREE PACKAGE
-----------------

The SHA-1 implementation in upstream sources (src/lib/sha1.{h,c}) is
directly taken from RFC 3174 "US Secure Hash Algorithm 1 (SHA1)".
Given that the Debian considers RFCs non-free according to the Debian
Free Software Guidelines 3 and 6, the offending files were removed
from the upstream sources.

Please note that thanks to a patch by Alexander Golovko there was no
loss of functionality: luckily, the SHA-1 implementation provided by
the OpenSSL library is compatible with the own in Bacula.  The fact
that Bacula is already linked with OpenSSL also means that nothing
changed for the Debian package.

Please see the following bug report for a complete explanation:

  <http://bugs.debian.org/658326>

BASIC INFORMATION
-----------------

To use bacula you must install one of the flavors of director,
depending on your preferred database, onto a server.

You must also install bacula-sd on the machine where you will be
storing your backed-up data.  And you'll need bacula-fd on any machine
that you want to back up.

The installation will run the necessary daemons automatically, but to
get any backups working you must customize the relevant configuration
files in /etc/bacula as described in the bacula manual.  Once you have
edited the files you should issue an appropriate /etc/init.d/bacula-xx
force-reload.

NETWORK ENABLING
----------------

By default, Debian's Bacula packages install config files in which the
servers listen only on localhost by default.  If you want to be able
to do backups over the network, you'll need to find the lines in
bacula-dir.conf, bacula-sd.conf, and bacula-fd.conf that reference
127.0.0.1 and remove them.

Using a hostname in the listen addresses (DirAddress, SDAddress,
FDAddress) will only work if they are resolvable on startup, this is
not the case if using NetworkManager.

PACKAGES
========

The virtual package 'bacula-director' is provided by

	- bacula-director-sqlite3
	- bacula-director-mysql
	- bacula-director-pgsql

These binaries have been compiled against the database indicated
in the package's name.

CONSOLE
=======

The package bacula-console provides the administration console for
Bacula, so that users can contact the director.

The BAT graphical admin console is contained in the
bacula-console-qt package.

There are no wrappers for bacula-console-qt since it
will likely be run from the corresponding
launchers with appropriate '-c /etc/bacula/<flavor>.conf' arguments.
The convenient '.menu' files are provided, too.

USERS & SECURITY
================

The passwords in the configuration files in /etc/bacula have been
auto-generated individually during installation. They are saved in
/etc/bacula/common_default_passwords.

The installation will create a bacula user on the system, and the
daemons and RunBefore/RunAfter jobs will run as that user.  However,
the file daemon run as root, as will your ClientRunBefore/After
jobs. File daemon can use linux capabilities(7) for drop root
privileges, but it require root privileges for correctly restore
original files permissions. For run file daemon without root 
privileges you can add ARGS="-k -u <username>" into
/etc/default/bacula-fd. This is linux specific feature. Installation 
of a director will ask you for a database user to use.

You can run Bacula consoles as any user, but the user you use will
need to be able to read the console config files.  These files are, by
default, under /etc/bacula.  You'll need to specify the config file
with -c for any of the consoles.

PERFORMANCE NOTES
=================

This was announced on Bacula's website with the release of Bacula 5.0.1:

 Some of you have encountered performance problems with your
 database (mainly with MySQL) with Bacula version 5.0.0.  This is
 mainly because we've changed the SQL query used for restore,
 accurate jobs and base jobs.  We have extensively tested this
 change, and though it should be a little bit slower than the previous
 versions, on a well configured database it should run
 extremely well.  

 We strongly recommend to avoid the temptation to add new indexes.
 In general, these will cause very significant performance
 problems in other areas.  A better approch is to carefully check
 that all your MySQL memory configuation parameters are are
 suitable for the size of your installation.  If you backup
 millions of files, you need to adapt the database memory
 configuration parameters concerning sorting, joining and global
 memory.  By default, sort and join parameters are very small
 (sometimes 8Kb), and having sufficient memory specified by those
 parameters is extremely important to run fast.  

 If adjusting your MySQL memory configuration values does not
 solve your problem, you can also consider switching to
 PostgreSQL, which performs much better with Bacula on big
 installations (many millions of files per Job).  However for
 large installations, you will also need to adjust the default
 PostgreSQL memory configuration parameters.

from http://www.bacula.org/en/?page=news

POSTGRESQL NOTES
================

The PostgreSQL Bacula packages are designed to work with PostgreSQL 8.4.
If you are using an older version, you may need to edit some scripts
in /etc/bacula/scripts so that it uses the correct version of the
PostgreSQL binaries.  As it is possible to have multiple PostgreSQL
versions on a single Debian system, we cannot handle this in a completely
automated way.

UPGRADES
========

Debian packages will, unless you have asked them not to, attempt to
automatically upgrade your catalog during a major Bacula upgrade.

However, please be sure to examine /usr/share/doc/bacula-common/ReleaseNotes
for potential changes in the configuration files.

CATALOG BACKUPS
===============

Please see the comments in the bacula-dir.conf file regarding the
make_catalog_backup script for information on tailoring it for your own
particular environment.

FURTHER READING
===============

See the Bacula documentation on the upstream author's website,
http://www.bacula.org.

-- John Goerzen

based on a file by Jose Luis Tallon

 -- Carsten Leonhardt <leo@debian.org>, Sat, 15 Aug 2015 19:21:12 +0200
