Webacula installation on Ubuntu
Webacula installation on Ubuntu
Last Updated on Tuesday, 30 October 2012 16:15 Friday, 01 April 2011 06:12
Bacula is a backup program enabling you to backup, restore, and verify data across your network
Webacula is a Web interface for the Bacula backup system.
- Bacula binaries installed
- Zend Framework version 1.10.0 or later
- PHP 5.2.4 or later with PDO extension active.
- Apache and mod rewrite. Or equivalent web-server, for example, nginx and ngx http rewrite module
- Installed php-gd package
- Installed http://php.net/dom for use the RSS feed
- Browser compatibility: all jQuery UI plugins are tested for IE 6.0+, Firefox 3+, Safari 3.1+, Opera 9.6+, Google Chrome
- Webacula version 5.5
- Ubuntu Karmic Koala (this procedure is suited for Debian as well)
The basic features of the program :
- Bacula and Webacula ACLs (Access Control Lists) implemented. ACLs stored in Bacula database in Webacula tables
- Full supported MySQL, PostgreSQL and Sqlite databases
- Run Job Restore all files or selected files from Job by JobId
- Restore the most recent backup for a client
- Restore backup for a client before a specified time
- Show Timeline for Jobs Mount, umount Storages
- Show Jobs which executed with errors Show a condition of your Volumes
- Show scheduled Jobs (at 24 hours forward)
- Show all running Jobs Show terminated Jobs (executed in last 24 hours)
- Search Jobs on several conditions Web (ajax) terminal to Bacula Console The detailed information on Pools, Volumes, Storages and Clients Logbook. Logbook - is simple electronic journal of backups.
- Records in logbook are insert, modify, delete manually by the operator.
- Records can contain links (usual web-links on which it is possible to click) to Bacula Jobs or links to other records of this logbook. In logbook insert records, for example, about Jobs, failures of the equipment, supernumerary situations, etc.
- RSS feed Multilingual support - standard gettext (*.mo) files.
- Currently supported languages: English, French, German, Italian, Portuguese Brazil, Russian, Spanish. For web designers : now very easy to create new skins Major version number of Webacula will match the version number of Bacula
Make the directory tree
Log as root and make the following directory /usr/share/webacula/. Copy Webacula distribution to this directory.
The resulting tree should look like
Some directory description:
- application/ All source code. Should be available to reading for the Web- server and no access through the client Web-browser.
- html/ Public code. Should be available to reading for the Web-server and for the client Web-browser.
- data/ IMPORTANT. This directory, subdirectory and les in it must NOT be available to access through the client Web-browser.
- data/cache/ Cache directory for Zend Cache. Should be available to writing the Web-server and no access through the client Web-browser.
- data/session/ Storage for PHP session. Should be available to writing the Web-server and no access through the client Web-browser. 5
- data/tmp/ This directory which will be saved the le, which contains a list of les to Job restore. This directory and les in it should be available to read from the Bacula Director and to writing from the Web-server. And no access through the client Web-browser.
Specify the parameters to connect to the Catalog database, timezone and other in application/config.ini
Find below my configuration for a MySQL database configuration
- Define PDF_MYSQL tu use MySql in the db.adapter parameter.
- Define your database password in db.config.password.
- Remove the sudo command in bacula.sudo (not needed thanks to the configuration below)
- Redefine the bconcole bin according to Ubuntu installation of bacula. bacula.bconsole parameter should be /usr/bin/bconsole instead of /sbin/bconsole
Create system group account (It should be already created) :
In order to make sure you have proper web access, you must also add the web user (www-data) to the bacula group.
Add apache to group:
Setup bconsole can be executed under Apache webserver.
Install Zend using Synaptic of apt-get
Remove the preconfigured Zend folder :
Assuming your Zend framework library has been install in /usr/share/php/libzend-framework-php/
Create a symbolic link to the Zend-Framework :
Configure an alias. If you are using virtual hosts your webacula application will be accessible whatever the domain you are using.
Apache configuration file : /etc/apache2/apache.conf
- Define the alias name (Line 14)
- Put in comment the mod rewrite module if you have it already enabled (Line 8)
- Define the "Allow from" according to the ip addresses you will use to administer your backup system
- Edit RewriteBase parameter if necessary.
Increase values in /etc/php.ini :
To show messages of the Job output, you must make changes in bacula-dir.conf le :
and restart Bacula Director.
If you enjoyed this tutorial and want to promote it don't hesitate to click on