バックアップ · 3 min read · Dec 08, 2025

Ubuntu 20.04にBaculaバックアップサーバーをインストールする

Baculaは、ネットワークを介してデータをバックアップおよび復元するために使用できるオープンソースのバックアップツールです。シンプルで使いやすく、多くの高度なストレージ管理機能を提供し、失われたファイルを簡単にバックアップおよび復元するのに役立ちます。Linux、Windows、macOSのバックアップクライアントをサポートし、幅広いバックアップデバイスにも対応しています。Baculaは、Baculaディレクトリ、Baculaコンソール、Baculaストレージ、Baculaファイル、Baculaカタログなど、いくつかのコンポーネントで構成されています。各コンポーネントは、特定のジョブを管理する責任があります。

このチュートリアルでは、Ubuntu 20.04にBaculaバックアップシステムをインストールおよび構成する方法を示します。

前提条件

  • 最低2GBのRAMを搭載したUbuntu 20.04を実行しているサーバー。
  • サーバーにルートパスワードが設定されています。

始めに

まず、システムを最新の安定版に更新する必要があります。以下のコマンドで更新できます:

apt-get update -y

すべてのパッケージが更新されたら、次のステップに進むことができます。

Baculaのインストール

デフォルトでは、BaculaパッケージはUbuntu 20.04のデフォルトリポジトリにあります。以下のコマンドを使用して簡単にインストールできます:

apt-get install bacula -y

インストール中に、以下のようにメールサーバーを選択するように求められます:

Postfix configuration

希望するメールサーバーを選択し、Okボタンをクリックします。次に、以下のようにシステムメール名を提供するように求められます:

System mail name

システムメール名を提供し、Okボタンをクリックします。次に、以下のようにbacula用のデータベースを構成するように求められます:

Bacula directore Postgres

Yesボタンをクリックします。次に、以下のようにPostgreSQLサーバーのホストを選択するように求められます:

PostgreSQL database host

localhostを選択し、Okボタンをクリックします。次に、以下のようにPostgreSQLパスワードを提供するように求められます:

PostgreSQL password

希望するパスワードを提供し、インストールを続行するためにOkボタンをクリックします。

Baculaパッケージがインストールされたら、次のステップに進むことができます。

Baculaストレージの構成

始める前に、バックアップファイルを保存するためのディレクトリを作成します。以下のコマンドで作成できます:

mkdir /backup

次に、以下のコマンドでbaculaディレクトリの所有権をbaculaユーザーとグループに変更します:

chown -R bacula:bacula /backup

次に、baculaストレージのデフォルト構成ファイルを編集し、ストレージのデバイスと場所を定義する必要があります。

nano /etc/bacula/bacula-sd.conf

他の「Device {」および「Autochanger {」セクションを削除またはコメントアウトし、以下の行を追加します:

Device {
Name = Local-device
Media Type = File
Archive Device = /backup
LabelMedia = yes; # Baculaがラベルのないメディアにラベルを付けることを許可
Random Access = Yes;
AutomaticMount = yes; # デバイスが開かれたときに読み取る
RemovableMedia = no;
AlwaysOpen = no;
Maximum Concurrent Jobs = 5
}

完了したらファイルを保存して閉じます。その後、以下のコマンドを使用してBaculaストレージサービスを再起動します:

systemctl restart bacula-sd.service

以下のコマンドを使用してBaculaストレージのステータスを確認できます:

systemctl status bacula-sd

以下の出力が得られるはずです:

? bacula-sd.service - Bacula Storage Daemon service
     Loaded: loaded (/lib/systemd/system/bacula-sd.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2020-10-06 09:32:43 UTC; 8s ago
       Docs: man:bacula-sd(8)
    Process: 10687 ExecStartPre=/usr/sbin/bacula-sd -t -c $CONFIG (code=exited, status=0/SUCCESS)
   Main PID: 10688 (bacula-sd)
      Tasks: 2 (limit: 4691)
     Memory: 1.0M
     CGroup: /system.slice/bacula-sd.service
             ??10688 /usr/sbin/bacula-sd -fP -c /etc/bacula/bacula-sd.conf

Oct 06 09:32:43 ubuntu2004 systemd[1]: Starting Bacula Storage Daemon service...
Oct 06 09:32:43 ubuntu2004 systemd[1]: Started Bacula Storage Daemon service.

Baculaディレクターの構成

次に、Baculaディレクターの構成ファイルを編集し、ストレージの場所を提供する必要があります。以下のコマンドで編集できます:

nano /etc/bacula/bacula-dir.conf

以下の行を追加します。デバイス名、ストレージ名、パスワード、ジョブなどを含みます。

Storage {
Name = ubuntu2004-sd  # /etc/bacula/bacula-sd.confファイルの「Storage」セクションの「Name」パラメータと等しくする必要があります
Address = 127.0.0.1
Password = "aFEH-0a3QycsbYQVcoy_VoUMhAHJQ00CD" # パスワードは/etc/bacula/bacula-sd.confのパスワードと一致する必要があります
Device = Local-device
Media Type = File
}

FileSet {
Name = "Local-file"
Include {
Options {
signature = MD5
}
File = /etc 
}
}

Schedule {
Name = "LocalDaily"
Run = Full daily at 06:00
}

Job {
Name = "LocalBackup"
JobDefs = "DefaultJob"
Enabled = yes
Level = Full
FileSet = "Local-file"
Schedule = "LocalDaily"
Storage = ubuntu2004-sd
Write Bootstrap = "/var/lib/bacula/LocalhostBackup.bsr"
}

完了したらファイルを保存して閉じ、変更を適用するためにBaculaディレクターサービスを再起動します:

systemctl restart bacula-dir

以下のコマンドを使用してBaculaディレクターサービスのステータスも確認できます:

systemctl status bacula-dir

以下の出力が得られるはずです:

? bacula-director.service - Bacula Director Daemon service
     Loaded: loaded (/lib/systemd/system/bacula-director.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2020-10-06 09:32:43 UTC; 9s ago
       Docs: man:bacula-dir(8)
    Process: 10667 ExecStartPre=/usr/sbin/bacula-dir -t -c $CONFIG (code=exited, status=0/SUCCESS)
   Main PID: 10683 (bacula-dir)
      Tasks: 3 (limit: 4691)
     Memory: 2.1M
     CGroup: /system.slice/bacula-director.service
             ??10683 /usr/sbin/bacula-dir -fP -c /etc/bacula/bacula-dir.conf

Oct 06 09:32:43 ubuntu2004 systemd[1]: Starting Bacula Director Daemon service...
Oct 06 09:32:43 ubuntu2004 systemd[1]: Started Bacula Director Daemon service.

バックアップジョブの確認

この時点で、Baculaはインストールされ、毎日6:00に実行されるように構成されています。次に、Baculaコンソールを使用して最初のバックアップジョブを実行します。

bconsole

接続されると、以下の出力が得られるはずです:

Connecting to Director localhost:9101
1000 OK: 103 ubuntu2004-dir Version: 9.4.2 (04 February 2019)
Enter a period to cancel a command.

次に、以下のコマンドを実行してバックアップジョブを開始します:

*run

以下のようにバックアップジョブを選択するように求められます:

Automatically selected Catalog: MyCatalog
Using Catalog "MyCatalog"
A job name must be specified.
The defined Job resources are:
     1: BackupClient1
     2: LocalBackup
     3: BackupCatalog
     4: RestoreFiles
Select Job resource (1-4): 2

2を入力して、設定ファイルで定義したLocalBackupを選択し、Enterを押します。以下の出力が表示されるはずです:

Run Backup job
JobName:  LocalBackup
Level:    Full
Client:   ubuntu2004-fd
FileSet:  Local-file
Pool:     File (From Job resource)
Storage:  ubuntu2004-sd (From Job resource)
When:     2020-10-06 09:50:47
Priority: 10
OK to run? (yes/mod/no): yes
Job queued. JobId=3
You have messages.

この時点で、バックアップジョブが開始されます。以下のコマンドを使用してバックアップジョブのステータスを確認できます:

*status

以下のコンポーネントのステータスを選択するように求められます:

Status available for:
     1: Director
     2: Storage
     3: Client
     4: Scheduled
     5: Network
     6: All
Select daemon type for status (1-6): 1

1を入力してEnterを押すと、ディレクターのステータスが確認できます。以下の出力が表示されるはずです:

ubunt2004-dir Version: 9.4.2 (04 February 2019) x86_64-pc-linux-gnu ubuntu 20.04
Daemon started 06-Oct-20 09:50, conf reloaded 06-Oct-2020 09:50:27
 Jobs: run=1, running=0 mode=0,0
 Heap: heap=274,432 smbytes=106,782 max_bytes=135,168 bufs=343 max_bufs=377
 Res: njobs=4 nclients=1 nstores=3 npools=3 ncats=1 nfsets=3 nscheds=3

Scheduled Jobs:
Level          Type     Pri  Scheduled          Job Name           Volume
===================================================================================
Full           Backup    10  07-Oct-20 06:00    LocalBackup        Vol-0001
====

Running Jobs:
Console connected at 06-Oct-20 09:50
No Jobs running.
====

Terminated Jobs:
 JobId  Level      Files    Bytes   Status   Finished        Name 
====================================================================
     1  Full       2,262    2.875 M  OK       06-Oct-20 09:50 LocalBackup

====

次に、statusコマンドを再度実行し、Baculaストレージのステータスを確認します。

*status

以下の出力が表示されるはずです:

Status available for:
     1: Director
     2: Storage
     3: Client
     4: Scheduled
     5: Network
     6: All
Select daemon type for status (1-6): 2
The defined Storage resources are:
     1: File1
     2: ubuntu2004-sd
Select Storage resource (1-2): 1
Connecting to Storage daemon File1 at localhost:9103

ubuntu2004-sd Version: 9.4.2 (04 February 2019) x86_64-pc-linux-gnu ubuntu 20.04
Daemon started 06-Oct-20 09:50. Jobs: run=1, running=0.
 Heap: heap=106,496 smbytes=369,301 max_bytes=567,404 bufs=90 max_bufs=110
 Sizes: boffset_t=8 size_t=8 int32_t=4 int64_t=8 mode=0,0 newbsr=0
 Res: ndevices=1 nautochgr=0

Running Jobs:
No Jobs running.
====

Jobs waiting to reserve a drive:
====

Terminated Jobs:
 JobId  Level    Files      Bytes   Status   Finished        Name 
===================================================================
     3  Full      2,262    3.156 M  OK       06-Oct-20 09:50 LocalBackup
====

Device status:

Device File: "Local-device" (/backup) is not open.
   Available Space=93.95 GB
==
====

Used Volume status:
====

Attr spooling: 0 active jobs, 454,546 bytes; 1 total jobs, 454,546 max bytes.
====

次に、以下のコマンドでBaculaコンソールから退出します:

*exit

次に、以下のコマンドでバックアップディレクトリを確認します:

ls /backup/

Vol-0001バックアップが作成されていることが確認できるはずです:

Vol-0001

結論

おめでとうございます!Ubuntu 20.04サーバーにBaculaバックアップを正常にインストールおよび構成しました。リモートマシンにBaculaクライアントをインストールし、クライアントシステムを簡単にバックアップできます。質問があればお気軽にお尋ねください。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。