开源备份新选择Bacula

如果你正在寻找一个好的开源备份解决方案,那么今天就是你的幸运日。对于磁带备份和D2D备份,Bacula是目前一个很受欢迎并且性能良好的开源应用。在上篇中,我们将介绍Bacula的入门使用、Bacula的不同之处以及基本的安装和架构。并不是说这篇文章是一个总的指南手册,但是能为那些还未体验过Bacula强大在线服务用户一个大体的介绍。
Bacula基本功能和服务
Bacula采用了三种服务:存储导向器(bacula-sd)、文件导向器(bacula-fd)以导向器本身(bacula-dir)。存储导向器辅助数据存储和数据恢复,同时可以作为物理存储介质。文件导向器是针对用户方面的,安装在需要备份的设备上,bacula导向器是所有备份活动的管理者和协调者。你将使用Bacula导向器(bacula-dir)来架构存储池、存储任务以及自动规划备份流程,Bacula控制台(bconsole)提供界面并对其实施控制。
准备事项和SQL安装阶段一
有一些准备措施是很必要的,这取决于你采用的操作系统。如果你的操作系统不包括mtx(现有大多数操作系统都支持)或者你想要采用SQLite,最简单的做法就是下载depkgs,然后创建一个/bacula目录,你可以将bacula和depkgs源代码解包到这个目录下。将depkgs解包到这个目录并且运行:
make sqlite
make mtx
Bacula数据库最常用的就是MySQL,这样我们就不用再安装特定的数据库。使用MySQL的时候,确定使用mysql层级和libz层级的封装来获得Bacula所需的SQL头文件以及mysqlclient的gzip压缩包。如果你正在安装MySQL by .rpm,那么你需要:
mysql-.rpm
mysql-server-.rpm
mysql-devel-.rpm
如果从源代码安装,然后从你保存源代码的目录下解包文件,运行:
./configure –enable-thread-safe-client –prefix=mysql-directory
你在目录哪个位置保存mysql-directory,就在这个位置上安装mysql。通常系统中采用的是/usr/local/mysql,运行安装,最后运行:
./scripts/mysql_install_db
这就创建好可以控制用户访问的SQL数据库。
安装Bacula
下一步,下载bacula源,在开始创建的/bacula目录下解包归档文件。更改目录运行:
./configure
采用bacula文档中提到的选项。从这些基本选项开始安装,例如,从基本的Red Hat安装开始:
CFLAGS=”-g -Wall” ./configure
–prefix=/usr
–sbindir=/usr/sbin
–sysconfdir=/etc/bacula
–with-scriptdir=/etc/bacula
–enable-smartalloc
–enable-bat
–with-qwt=$HOME/bacula/depkgs/qwt
–with-mysql=mysql-directory
–with-working-dir=/var/bacula
–with-pid-dir=/var/run
–enable-conio
确定其中包括了你开始安装mysql时的目录。如果你接下来你需要修改其中一些选项的话,你从头使用./make distclean,然后再次运行./configure选择你需要的选项。完成了这些操作之后,运行安装。
根据Bacula安装手册,你可以根据需要对Bacula配置文件进行定制化。这些文件的配置主要取决于你的备份介质或者磁带设备、目标文件地址以及你的备份计划。刚开始是默认模式,你启动了Bacula之后可以对这些配置文件进行定制化设定。最后你可能会把大多数时间花在安装bacula-dir.conf上,因为这涉及对任务、计划以及存储池的定义和控制。
Bacula就绪可以运行,这里有一个测试配置文件的小技巧,那就是先运行一些带-t选项的服务:
./bacula-dir -t /etc/bacula/bacula-dir.conf
最后运行结果要么是配置文件正确,要么是出现一个提示架构文件错误位置的信息。
在配置文件过程中,有时候会出现一个麻烦的问题,那就是随机生产的密码必须在配置文件获得通过。如果更改密码或者没有通过认证,那么导向器服务就无法启动。另外一个备受争议的架构难题就是配置Bacula磁带设备。Bacula列出了支持的磁带设备,我强烈建议你在使用Bacula之前要对你的磁带驱动器进行测试。
SQL安装阶段二
启动mysql然后变更bacula安装目录。这样你会看到用于创建和控制Bacula数据库的脚本。你需要运行的脚本包括:./grant_mysql_privileges、./create_mysql_database以及./make_mysql_tables。这些脚本将认证MySQL中bacula用户的权限并且创建bacula书库和表格。另外如果你的mysql库不是位于/usr/lib或者/usr/local/lib.下的,你可能还需要编辑/etc/ld.so.conf和运行/sbin/ldconfig。
最后,运行Bacula
正如上面我们提到的,运行-t选项来测试每个配置文件和服务。修改了所有错误之后,你就可以启动Bacula了:./bacula/start,并且通过bconsole启动程序界面。
WatchStor.com

飞行者  发表于: 2009-12-01

我要回答

电子邮件地址不会被公开。 必填项已用*标注

敬请读者进行回答,本站保留删除与本问题无关和不雅内容的权力。

相关推荐