$OpenBSD: README-server,v 1.3 2013/01/15 12:46:53 ajacoutot Exp $

+-----------------------------------------------------------------------
| Running bacula-server-5.2.12p0-sqlite3 on OpenBSD
+-----------------------------------------------------------------------

Note: If upgrading from a version older than 5.2.0, a database upgrade
is necessary (see the /usr/local/libexec/bacula/update_* scripts).
Also, the Director and Storage Daemons must be upgraded at the same
time, but older File Daemons can be used with 5.2.x.

The official Bacula documentation can be found at:
    http://bacula.org/5.2.x-manuals/en/main/main/index.html

Setting up the database for the Bacula Director
===============================================

In this documentation, it is assumed the PostgreSQL administrator user
is 'postgres' and the MySQL one is 'root'; adapt accordingly to your
setup.
Replace 'dbpassword' with the bacula DB user password (configured in
/etc/bacula/bacula-dir.conf).

While SQLite3 may be of interest for quickly testing a setup, it is
usually not advised to use it in production but rather go for a full
RDBMS like PostgreSQL or MySQL.

PostgreSQL
----------

Assuming you have an administrative account named `postgres',
you can create the 'bacula' user like this:

    $ createuser -U postgres --pwprompt --no-superuser \
      --createdb --no-createrole bacula

Creating the database and tables:
    $ cd /usr/local/libexec/bacula
    $ ./create_bacula_database -U bacula
    $ ./make_bacula_tables -U bacula
    $ ./grant_bacula_privileges -U bacula

MySQL
-----

Creating the DB, table and bacula user.
    $ cd /usr/local/libexec/bacula
    $ ./create_bacula_database -u root -p
    $ ./make_bacula_tables -u root -p
    $ ./grant_bacula_privileges -u root -p

Setting up the bacula DB user password.
    $ mysql -u root -p bacula
    mysql> GRANT ALL PRIVILEGES ON `bacula` . *
        -> TO 'bacula'@'localhost' IDENTIFIED BY 'dbpassword';
    mysql> QUIT

SQLite3
-------

Creating the DB and tables (default to /var/bacula/bacula.db).
    $ cd /usr/local/libexec/bacula
    $ sudo -u _bacula ./make_bacula_tables

Device permissions
==================

The Bacula user needs access to its storage device(s):

* when backup is stored on disk, the mount points must be accessible in
rw mode by the "_bacula-sd" user.

* when backup is stored on tape, the corresponding device node(s) must
be accessible in rw mode by the "_bacula" user.
e.g. for an autochanger, add the following lines in rc.conf.local(5)
chgrp _bacula /dev/ch0
chgrp _bacula /dev/nrst0
