本文主要讲述Bacula以及Bacula-GUI的安装过程。
配置软件源
在http://mirrors.163.com/.help/centos.html下载CentOS6的YUM源配置文件CentOS6-Base-163.repo,将该文件上传到服务器上的/etc/yum.repos.d/目录下,同时将其他的repo文件都修改为不以repo结尾的文件名,只采用163这个软件源。
更新系统
# yum makecache
# yum update
# reboot
安装Bacula
服务器端
安装MySQL数据库
# yum install mysql-server
安装MySQL的开发库,Bacula安装依赖这个库
# yum install mysql-devel
启动MySQL数据库,并设置为自启动
# /etc/init.d/mysqld start
# chkconfig mysqld on
# chkconfig save
Bacula-7.0.5源代码安装
# yum install gcc gcc-c++
# tar xvfz bacula-7.0.5.tar.gz
# cd bacula-7.0.5
# ./configure --prefix=/opt/bacula --with-mysql
# make -j4 && make install
初始化Bacula的数据库
# cd /opt/bacula/etc
# ./create_mysql_database
# ./grant_mysql_privileges
# ./make_mysql_tables
启动Bacula的服务进程
# cd /opt/bacula/etc
# ./bacula start
安装Bacula-GUI
准备安装文件
# tar xvfz bacula-gui-7.0.5.tar.gz
# cd bacula-gui-7.0.5
安装HTTPD及PHP环境
# yum install httpd php php-common php-pdo php-pgsql php-mysql php-mbstring php-bcmath php-xml
配置SeLinux
# vi /etc/selinux/config
......
SELINUX=disabled
......
配置完SeLinux后,重启服务器
# reboot
设置sudo环境
# vi /etc/sudoers
......
#
# Disable "ssh hostname sudo <cmd>", because it will show the password in clear.
# You have to run "ssh -t hostname sudo <cmd>".
#
# Defaults requiretty # 注释掉改行
......
apache ALL=(ALL) NOPASSWD: ALL # 增加用户apache权限配置,允许apache执行所有的命令,不需要密码。
创建Web应用的用户
# htpasswd -c /etc/httpd/passwords admin
配置HTTPD,新增一个虚拟主机的配置
# cd /etc/httpd/conf.d/
# vi bacula.conf
<VirtualHost *:80>
DocumentRoot /var/www/baculum
ServerName baculum.abc.local
<Directory /var/www/baculum>
AllowOverride All
AuthType Basic
AuthName MyPrivateFile
AuthUserFile /etc/httpd/passwords
Require valid-user
</Directory>
</VirtualHost>
虚拟主机的配置,使用/etc/httpd/passwords里面的用户进行认证。
拷贝文件到/var/www/baculum
# cd bacula-gui-7.0.5
# cd baculum
# mkdir -p /var/www/baculum
# cp -R * /var/www/baculum/
注意隐藏文件.htaccess,这个文件需要拷贝过去
# cp .htaccess /var/www/baculum
确保在/var/www/baculum/目录下的./assets,./protected/Data,./protected/runtime三个目录具有写的权限。
# cd /var/www/baculum
# chown -R apache:apache assets/
# chown -R apache:apache ./protected/Data/
# chown -R apache:apache ./protected/runtime/
启动HTTPD服务
# service httpd start
访问Bacula-GUI
http://[IP]
输入创建的用户,以及密码,进入配置界面。
配置MySQL数据库链接的时候,请注意php-mysql是否安装。
配置bconsole的时候,请注意SeLinux,以及/etc/sudoers的配置,同时先启动bacula的服务进程。
需要关注的是apache用户要有权限运行bconsole命令,同时无需密码。
进入Bacula-GUI的主界面。