-
Updated May 13th 2020
- Download latest version source from https://www.bacula.org/source-download-center/ (v9.6.3)
Configure will not build cleanly due to reliance on libmysqlclient_r.a (bug 2520)(Update:May 13th 2020)- Make sure mysql_config is in the PATH since configure needs it .i.e. /usr/mysql/5.7/(Update:May 13th 2020)
- Locations:
- application location: /opt/bacula963 and a symbolic link to /opt/bacula
- data and working file location: /var/share/bacula
- Setup MySQL database
- Download/Install MTX: Media Changer Tools (v1.3.12)
- Setup configuration files to start backing up your system...See next blog
- Things to do/fix:
- create SMF service
- build under solaris-userland, but major problems with bacula configure
$ export PATH=/usr/bin:/usr/sbin:/usr/gnu/bin:/opt/developerstudio/bin:/usr/mysql/5.7/bin
$ pkg list mysql-57 gcc/gcc-c++-7
NAME (PUBLISHER) VERSION IFO
database/mysql-57 5.7.28-11.4.17.0.1.2.0 i--
developer/gcc/gcc-c++-7 7.3.0-11.4.15.0.1.4.0 i--
# Dirty fix for configure needing libmysqlclient_r.so
$ cd /usr/mysql/5.7/lib; ln -s amd64/libmysqlclient.so libmysqlclient_r.so
$ cd /var/tmp
$ gzip -dc /tmp/bacula-9.6.3.tar.gz | gtar xf -
$ cd bacula-9.6.3
$ PREFIX=/opt/bacula963
$ DATAROOTDIR=/var/share/bacula
CFLAGS="-g -O2 -Wall -m64" \
LDFLAGS="-m64" \
./configure \
--sbindir=${PREFIX}/bin \
--sysconfdir=${PREFIX}/etc \
--docdir=${PREFIX}/html \
--htmldir=${PREFIX}/html \
--with-working-dir=${DATAROOTDIR}/working \
--with-pid-dir=/var/run \
--with-logdir=${DATAROOTDIR}/log \
--with-archivedir=${DATAROOTDIR}/backup \
--with-scriptdir=${PREFIX}/scripts \
--with-plugindir=${PREFIX}/plugins \
--libdir=${PREFIX}/lib \
--enable-smartalloc \
--enable-conio \
--datadir=${PREFIX} \
--infodir=${PREFIX}/info \
--localedir=${PREFIX}/locale \
--mandir=${PREFIX}/man \
--docdir=${PREFIX}/doc \
--enable-largefile \
--with-mysql \
--with-dump-email=backup@dcs.bbk.ac.uk \
--with-job-email=backup@dcs.bbk.ac.uk \
--with-smtp-host=smtp.dcs.bbk.ac.uk \
--with-db-name=baculadb \
--with-db-user=bacula \
--with-db-password=MySQLPassword \
--with-baseport=9101
....
Configuration on Fri Feb 28 12:31:52 GMT 2020:
Host: i386-pc-solaris2.11 -- solaris 5.11
Bacula version: Bacula 9.6.3 (09 March 2020)
Source code location: .
Install binaries: /opt/bacula963/bin
Install libraries: /opt/bacula963/lib
Install config files: /opt/bacula963/etc
Scripts directory: /opt/bacula963/scripts
Archive directory: /var/share/bacula/backup
Working directory: /var/share/bacula/working
PID directory: /var/run
Subsys directory: /var/run/subsys
Man directory: /opt/bacula963/man
Data directory: /usr/share
Plugin directory: /opt/bacula963/plugins
C Compiler: gcc 7.3.0
C++ Compiler: /usr/bin/g++ 7.3.0
Compiler flags: -g -O2 -Wall -m64 -x c++ -fno-strict-aliasing -fno-exceptions -fno-rtti
Linker flags: -m64
Libraries: -lpthread -lintl -lresolv -lrt
Statically Linked Tools: no
Statically Linked FD: no
Statically Linked SD: no
Statically Linked DIR: no
Statically Linked CONS: no
Database backends: MySQL
Database port:
Database name: baculadb
Database user: bacula
Database SSL options:
Job Output Email: backup@dcs.bbk.ac.uk
Traceback Email: backup@dcs.bbk.ac.uk
SMTP Host Address: smtp.dcs.bbk.ac.uk
Director Port: 9101
File daemon Port: 9102
Storage daemon Port: 9103
Director User:
Director Group:
Storage Daemon User:
Storage DaemonGroup:
File Daemon User:
File Daemon Group:
Large file support: yes
Bacula conio support: yes -lncurses
readline support: no
TCP Wrappers support: no
TLS support: yes
Encryption support: yes
ZLIB support: yes
LZO support: no
enable-smartalloc: yes
enable-lockmgr: no
bat support: no
client-only: no
build-dird: yes
build-stored: yes
Plugin support: yes
AFS support: no
ACL support: yes
XATTR support: yes
systemd support: no
Batch insert enabled: MySQL << Very Important
Plugins:
- Docker: no
$ gmake
..
$ sudo gmake install
...
Now you need to Create the MySQL user & database. There are scripts but this may but if your database is remote then they may not work.
mysql> CREATE DATABASE IF NOT EXISTS baculadb;
mysql> CREATE USER bacula IDENTIFIED BY "MySQLPassword";
mysql> GRANT ALL PRIVILEGES ON baculadb@"%" IDENTIFIED BY "MySQLPassword";
$ sh /opt/bacula/scripts/make_mysql_tables -h MySQLServer -u bacula -D baculadb -pMySQLPassword
Lastly we need to alter ./scripts/mtx-changer since it needs to use gsed and not sed
$ gsed -i 's/ sed / gsed /g' /opt/bacula963/scripts/mtx-changer
Now test your default configuartion
$ /opt/bacula/bin/bacula-dir -tc /opt/bacula/etc/bacula-dir.conf
$ /opt/bacula/bin/bacula-sd -tc /opt/bacula/etc/bacula-sd.conf
$ /opt/bacula/bin/bacula-fd -tc /opt/bacula/etc/bacula-fd.conf
$ /opt/bacula/bin/bacula start
If all has gone well you now have bacula software running, but worst luck that is the easy part, since now you have to start the configuration. See Next post...
A quick footnote is to download and install the tape software which will handle autochanger etc...
$ gzip -dc mtx-1.3.12.tar.gz | tar txf -
$ cd mtx-1.3.12
$ ./configure --prefix=/opt/bacula --mandir=/opt/bacula/man
$ gmake
$ gmake install
If you have a tape drive you can give it a test?
$ /opt/bacula/sbin/mtx -f /dev/scsi/changer/c10t500308C38CDAB001d1 inquiry
Product Type: Medium Changer
Vendor ID: 'QUANTUM '
Product ID: 'Scalar i40-i80 '
Revision: '190G'
Attached Changer API: No
No comments:
Post a Comment