[Linux][Backup] Bacula3.0.1-1(インストール)

結構面白いソフトウェアを見つけた。と言うかじつは昔トライして失敗したソフトウェアなのだけど。

名前は「Bacula」。データプロテクションソフトウェアで、なんとオープンソース。概念はNetVaultやNetBackupにどこか似ている感じがして、造りとしてはなかなか面白いように見受けられる。逆に、Windows専門のARCServeやBackup Execに慣れ親しんでいる人にはちょっと扱いづらいかもしれない(特にWindows版は驚くほどタコだった)。が、特に個人とかで、ン十万もかけてデータプロテクションソフトウェアを購入している人(んなやついねぇよ)には朗報かもしれない。

一時は「バックアップできてもリストアできない」という涙々なもバグもあったのだけど、さすがにメジャーバージョン上がってるなら解消されているだろうーと、かなり個人的には楽観的(笑)

本記事ではBaculaのインストールについて書いてみようと思う。

今回の環境として、OSはCentOS5.3-32bitを、HardwareはVMware上の仮想マシンを使用する。

まずはリポジトリDBとなるMySQLの導入を行う。

[root@demeter ~]# yum -y install mysql-server

そしてMySQLを起動。

[root@demeter ~]# /etc/rc.d/init.d/mysqld start
MySQL データベースを初期化中:  Installing MySQL system tables…

・・・・・・・・・・(中略)・・・・・・・・・・
Please report any problems with the /usr/bin/mysqlbug script!

The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at http://shop.mysql.com
[  OK  ]
MySQL を起動中:                                            [  OK  ]
[root@demeter ~]# chkconfig mysqld on

MySQLサーバにログインしてみる。

[root@demeter ~]# mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.0.77 Source distribution

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.

mysql> select user,host,password from mysql.user;
・・・・・(出力結果省略:表が崩れちゃいました^^; )・・・・・

・・・・・(passwordの列がカラになっていることを確認してください)・・・・
5 rows in set (0.00 sec)

これでリポジトリDBの準備は出来あがったので、他の前提パッケージを導入する。

[root@demeter ~]# yum -y install ncurses-devel libxml2-devel zlib-devel openssl-devel pango-devel atk-devel libtermcap-devel gtk2-devel libgnomeui-devel ORBit2-devel libart_lgpl-devel libbonobo-devel libbonoboui-devel GConf2-devel freetype-devel mysql-devel

BaculaのSRPMをゲットします。

[root@demeter ~]# wget http://nchc.dl.sourceforge.net/sourceforge/bacula/bacula-3.0.1-1.src.rpm

ゲットしたSRPMをベースにしてリビルド処理を開始します。

[root@demeter ~]# rpmbuild –rebuild –define “build_centos5 1” –define “build_mysql5 1” –define “nobuild_gconsole 0” bacula-3.0.1-1.src.rpm

これでバイナリを含めたRPMファイルが配置されます。RPMファイルは本ケースの場合、32bitモードでのコンパイルであるため、/usr/src/redhat/RPMS/i386 以下に配置されます。

[root@demeter i386]# ls
bacula-client-3.0.1-1.i386.rpm     bacula-mysql-3.0.1-1.i386.rpm
bacula-debuginfo-3.0.1-1.i386.rpm  bacula-updatedb-3.0.1-1.i386.rpm
bacula-mtx-3.0.1-1.i386.rpm

というわけで、これらRPMをインストールしていきます。今回の場合はどうやら以下のモノだけでよさそうです。

  • bacula-mtx-3.0.1-1.i386.rpm
  • bacula-mysql-3.0.1-1.i386.rpm
  • bacula-updatedb-3.0.1-1.i386.rpm

[root@demeter i386]# rpm -ivh bacula-mtx-*.rpm
準備中…                ########################################### [100%]
1:bacula-mtx             ########################################### [100%]

[root@demeter i386]# rpm -ivh bacula-mysql*.rpm
準備中…                ########################################### [100%]
1:bacula-mysql           ########################################### [100%]
Hmm, doesn’t look like you have an existing database.
Granting privileges for MySQL user bacula…
Host    User    Password        Select_priv     Insert_priv     Update_priv     Delete_priv    Create_priv     Drop_priv       Reload_priv     Shutdown_priv   Process_priv  File_priv        Grant_priv      References_priv Index_priv      Alter_priv      Show_db_priv   Super_priv      Create_tmp_table_priv   Lock_tables_priv        Execute_priv  Repl_slave_priv  Repl_client_priv        Create_view_priv        Show_view_priv  Create_routine_priv    Alter_routine_priv      Create_user_priv        ssl_type        ssl_cipher     x509_issuer     x509_subject    max_questions   max_updates     max_connectionmax_user_connections
localhost       root            Y       Y       Y       Y       Y       Y       Y     0
demeter.bluecore.net    root            Y       Y       Y       Y       Y       Y     0
127.0.0.1       root            Y       Y       Y       Y       Y       Y       Y     0
%       bacula          N       N       N       N       N       N       N       N     0
localhost       bacula          N       N       N       N       N       N       N     0
Privileges for bacula granted on bacula.
Creating MySQL bacula database…
Creation of bacula database succeeded.
Creating bacula tables…
Creation of Bacula MySQL tables succeeded.
[root@demeter i386]#
[root@demeter i386]# rpm -ivh bacula-updatedb*.rpm
準備中…                ########################################### [100%]
1:bacula-updatedb        ########################################### [100%]
The database update scripts were installed to /usr/lib/bacula/updatedb
[root@demeter i386]#

この状態でMySQLサーバにログインしてみる。

[root@demeter i386]# mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 16
Server version: 5.0.77 Source distribution

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.

mysql> select user,host,password from mysql.user;

こうすると、bacula@%ってユーザとbacula@localhostってユーザが追加されている事が分かる。必要テーブルが導入されたという形になるので、せめてrootだけはパスワードロックをかけるようにする。

mysql> set password for root@localhost=password(‘<なんか適当なパスワード>‘);

mysql> set password for root@’demeter.bluecore.net’=password(‘<なんか適当なパスワード>‘);

mysql> set password for root@’127.0.0.1’=password(‘<なんか適当なパスワード>‘);

一応これでプログラムの導入は完了。次回は超基本的な設定事項について記載する。

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.