Bacula and Bacula-Web GUI OS X install/build HowTo
Bacula is an Open Source network based backup solution, separated into different programs/deamons. You are able to backup, recover and verify computers of different kinds across a network.
Howto Setup Bacula on OS X 10.5
This HOWTO is based on a Mac OS X 10.5 Server installation, but should also work on newer versions.
Prepare MySQL
Configure your MySQL installation via Serveradmin.
Download missing MySQL libraries and install them. http://support.apple.com/kb/TA25017?viewlocale=en_US
Don't forget to install the latest XCode from Apple.
Build Bacula from source
Download the latest Bacula source files from http://sourceforge.net/projects/bacula/files/bacula/ (bacula-X.X.X.tar.gz).
Untar and configure with the following options.
./configure --prefix=/usr/local --with-working-dir=/var/bacula/working --with-openssl --sysconfdir=/usr/local/etc --mandir=/usr/local/share/man --with-tcp-wrappers --enable-smartalloc --disable-largefile --disable-nls --with-python --with-mysql
Build and install it.
make sudo make install
Create LaunchDaemon startup scripts for: FileDaemon in /Library/LaunchDaemons/bacula-fd
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>org.bacula.bacula-fd</string> <key>ProgramArguments</key> <array> <string>/usr/local/sbin/bacula-fd</string> <string>-f</string> <string>-c</string> <string>/usr/local/etc/bacula-fd.conf</string> </array> <key>RunAtLoad</key> <true/> <key>UserName</key> <string>root</string> </dict> </plist>
StorageDaemon in /Library/LaunchDaemons/bacula-sd
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>org.bacula.bacula-sd</string> <key>ProgramArguments</key> <array> <string>/usr/local/sbin/bacula-sd</string> <string>-c</string> <string>/usr/local/etc/bacula-sd.conf</string> </array> <key>RunAtLoad</key> <true/> <key>UserName</key> <string>root</string> </dict> </plist>
DirectorDaemon in /Library/LaunchDaemons/bacula-dir
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>org.bacula.bacula-dir</string> <key>ProgramArguments</key> <array> <string>/usr/local/sbin/bacula-dir</string> <string>-c</string> <string>/usr/local/etc/bacula-dir.conf</string> </array> <key>RunAtLoad</key> <true/> <key>UserName</key> <string>root</string> </dict> </plist>
Discussion