開発者ドキュメント

Ubuntu12.04VPSへのBaculaのインストールと設定

ステータス:非推奨

この記事では、サポートされなくなったバージョンのUbuntuについて説明します。 現在Ubuntu12.04を実行しているサーバーを運用している場合は、サポートされているバージョンのUbuntuにアップグレードまたは移行することを強くお勧めします。

理由:
Ubuntu 12.04は2017年4月28日に保守終了(EOL)に達しました and no longer receives security patches or updates. This guide is no longer maintained.

代わりに参照してください:
このガイドは参照として役立つ場合がありますが、他のUbuntuリリースでは機能しない場合があります。 可能な場合は、使用しているUbuntuのバージョン用に作成されたガイドを使用することを強くお勧めします。 ページ上部の検索機能を使用して、より新しいバージョンを見つけることができます。

の意味

このチュートリアルでは、ユーザーが入力またはカスタマイズする必要のある行はになります。 残りはほとんどコピーアンドパスタブルである必要があります。

序章

Baculaは、クライアントサーバーモデルを活用してローカルバックアップとリモートバックアップを処理できる高度なバックアップソリューションです。 バックアップ環境を完全に制御できる非常に柔軟な構成オプションがあります。

このガイドでは、Ubuntu12.04VPSのルートファイルシステム全体をバックアップします。

このガイドの更新版はここにあります: Ubuntu14.04にBaculaサーバーをインストールする方法。

MySQLのインストール

BaculaはSQLデータベースを使用して情報を管理します。 このチュートリアルではMySQLを使用します。

Ubuntu 12.04 VPSの場合、このセットアップを事前にインストールする必要があります。そうしないと、Baculaスイートのインストール中に次のエラーが発生します。

An error occurred while installing the database:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) 

この状況を回避するには、Baculaコンポーネントをインストールする前にMySQLをインストールするだけです。

sudo apt-get update
sudo apt-get install mysql-server

データベース管理者のパスワードを入力して確認するように求められます。 続行するにはパスワードを入力してください。

Baculaのインストール

次に、Baculaコンポーネントをインストールします。

sudo apt-get install bacula-server bacula-client

baculaのデータベースを設定するように求められます。 「yes」を選択して、dbconfig-commonがデータベースを自動的に構成できるようにします。

プロンプトが表示されたら、MySQLのインストール時に選択したデータベース管理者パスワードを入力します。 次に、bacula-director-mysqlのアプリケーションパスワードを要求します。 「Enter」または「Return」を押して、ランダムなパスワードを生成します。

ファイルシステムの構成

次に、バックアップポイントと復元ポイントとして機能するディレクトリをいくつか作成する必要があります。

「mkdir」コマンドで「-p」フラグを使用すると、ターゲットディレクトリとともに必要な親ディレクトリが作成されます。

sudo mkdir -p /bacula/backup /bacula/restore

baculaプロセスのみがこれらの場所にアクセスできるように、ファイルのアクセス許可を変更する必要があります。

sudo chown -R bacula:bacula /bacula
sudo chmod -R 700 /bacula

Baculaの設定

Baculaには、正しく機能するために独立して構成する必要のあるいくつかのコンポーネントがあります。 設定ファイルはすべて/etc / bacula/ディレクトリにあります。

bacula-dir.confの設定

bacula-dir.confファイルを編集することから始めます。

sudo nano /etc/bacula/bacula-dir.conf

このガイドで実行するバックアップのために、いくつかの異なるセクションを変更する必要があります。

まず、「標準復元テンプレート」セクションを検索します。 [ジョブ]設定で、 Where パラメーターを変更して、作成した復元ポイントをポイントします。

Job {
  Name = "RestoreFiles"
  Type = Restore
  Client=Blank-fd
  FileSet="Full Set"
  Storage = File
  Pool = Default
  Messages = Standard
  Where = /bacula/restore
}

次に、「バックアップするファイルのリスト」セクションを検索します。 「FileSet」設定の下に、gzipを使用してアーカイブを圧縮するオプションを追加します。

次に、「File =」パラメータを使用して、バックアップする対象を正確に指定します。 このセクションには、それぞれ異なるパスを持つ複数の「File=」宣言を含めることができます。

このガイドでは、ルート(/)ファイルシステム全体をバックアップします。 それを反映するようにパラメータを変更します。

Include {
    Options {
      signature = MD5
      compression = GZIP
    }
# 
#  Put your list of files here, preceded by 'File =', one per line
#    or include an external list with:
#
#    File = file-name
#
#  Note: / backs up everything on the root partition.
#    if you have other partitions such as /usr or /home
#    you will probably want to add them too.
#
#  By default this is defined to point to the Bacula binary
#    directory to give a reasonable FileSet to backup to
#    disk storage during initial testing.
#
    File = /
  }

最後に、バックアップから除外するファイルパスを追加します。 これは、FileSetディレクトリの Exclusive セクションで、Includeセクションで使用したのと同じ「File=」構文を使用して実行されます。

ここでは通常、デフォルトが適切ですが、アーカイブディレクトリへのパスを変更する必要があります。 バックアップフォルダをバックアップしたくありません。 2番目の「File=」を変更して、ルートBaculaファイルのパスを反映します。

Exclude {
    File = /var/lib/bacula
    File = /bacula
    File = /proc
    File = /tmp
    File = /.journal
    File = /.fsck
  }

ファイルを保存して閉じます。

bacula-sd.confの設定

次に編集する必要のあるファイルは、bacula-sd.confファイルです。 これにより、baculaがバックアップを保存する領域が定義されます。

sudo権限でbacula-sd.confファイルを開きます。

sudo nano /etc/bacula/bacula-sd.conf

[このストレージデーモンでサポートされるデバイス]セクションの[デバイス]構成で、アーカイブデバイスを変更して、前に設定したバックアップの場所を反映します。

Device {
  Name = FileStorage
  Media Type = File
  Archive Device = /bacula/backup
  LabelMedia = yes;                   # lets Bacula label unlabeled media
  Random Access = Yes;
  AutomaticMount = yes;               # when device opened, read it
  RemovableMedia = no;
  AlwaysOpen = no;
}

ファイルを保存して閉じます。

構成構文の確認

続行する前に、使用した構成オプションがbaculaによって認識されていることを確認してください。 baculaの内部テストユーティリティを使用して、変更したファイルに構文エラーがないことを確認できます。

まず、BaculaDirectorの構成を確認します。

sudo bacula-dir -tc /etc/bacula/bacula-dir.conf

コマンドが出力を返さずに実行された場合、構成ファイルは構文的に正しいです。 次に、Baculaストレージ構成を確認します。

sudo bacula-sd -tc /etc/bacula/bacula-sd.conf

繰り返しますが、出力がない場合は、構成ファイルが有効であることを示しています。

この時点で、変更を反映させるために変更したBaculaサービスを再起動します。

sudo service bacula-sd restart
sudo service bacula-director restart

これで、バックアップをテストする準備が整いました。

バックアップのテスト

内部コンソールを介してBaculaと対話します。 これには、「bconsole」コマンドでアクセスできます。

sudo bconsole

プロンプトのアスタリスク(*)が付いたBaculaコンソールにドロップされます。 「label」コマンドを発行することから始めます。 作成されるアーカイブファイルの名前を入力するように求められます。

label
Automatically selected Catalog: MyCatalog
Using Catalog "MyCatalog"
Automatically selected Storage: File
Enter new Volume name: MyArchiveName

バックアップ用のストレージ「プール」の種類を選択します。 バックアップはファイルとして保存されるため、#2を選択します。

2: File

Baculaは、バックアップ用のデータをどのように書き込みたいかを認識しました。 これで、バックアップを実行して、正しく機能することをテストできます。

run
A job name must be specified.
The defined Job resources are:
     1: BackupClient1
     2: BackupCatalog
     3: RestoreFiles
Select Job resource (1-3):

#1を選択して、構成したバックアップを選択します。

1: BackupClient1

プロンプトで「yes」と入力してバックアップを実行します。

yes

Baculaはあなたにメッセージがあることを教えてくれます。 メッセージは、バックアップによって生成された出力になります。 次のように入力して、メッセージにエラーがないか確認します。

messages

いくつかの出力行が表示されます。 バックアップの結果を示す要約が表示されるまで、もう一度確認してください。 数分かかる場合があります。 「終了:バックアップOK」と表示されます。 エラーが発生していないことを確認してください。

復元のテスト

バックアップが作成されたので、正しく復元できることを確認することが重要です。 バキュラコンソールで、次のように入力します。

restore all

選択メニューが表示され、さまざまなオプションが表示されます。 最新のバックアップを復元したいので、オプション5を選択します。

5: Select the most recent backup for a client

これにより、バックアップしたディレクトリ構造全体を含む仮想ファイルツリーに移動します。 このインターフェイスを使用すると、復元するファイルにマークを付けたり、マークを外したりする簡単なコマンドを使用できます。

「すべてを復元」するように指定したため、バックアップされたすべてのファイルが復元用に事前に選択されています。

選択を微調整したい場合は、「ls」および「cd」コマンドでファイルをナビゲートして一覧表示し、「mark」で復元するファイルにマークを付け、「unmark」でファイルのマークを外すことができます。 コマンドの完全なリストは、コンソールに「help」と入力すると利用できます。

help

終了したら、次のように入力してファイル選択を終了します。

done

復元することを確認します。

yes

再度、復元が完了したら、メッセージにエラーがないか確認してください。

messages

要約には、「終了:復元OK」という行が含まれている必要があります。 終了したら、「exit」と入力してBaculaコンソールを終了します。

exit

ファイルシステムの確認

バックアップが期待どおりに完了したことを確認するには、バックアップディレクトリの内容を一覧表示します。 ディレクトリ構造は「bacula」ユーザーが所有しているため、sudoを使用する必要があります。

sudo ls /bacula/backup

選択したアーカイブ名のファイルが表示されます。

次に、復元ポイントを確認する必要があります。 復元ポイントディレクトリの内容を一覧表示します。

sudo ls /bacula/restore

bacula-dir.conf ファイルの「Exclude」セクションにリストされているファイルとディレクトリを除いて、ルートファイル構造のミラーが表示されます。

これで、ローカルファイルシステムをバックアップできる基本的なBaculaセットアップができました。 Baculaはリモートバックアップのための強力なソリューションでもあります。 bacula を使用してリモートバックアップを構成する方法については、ここをクリックしてください。

ジャスティン・エリングウッド
モバイルバージョンを終了