Bacula-Backup-Server unter Ubuntu 20.04 installieren

Bacula ist ein Open-Source-Backup-Tool, das zur Sicherung und Wiederherstellung von Daten über das Netzwerk verwendet werden kann. Es ist ein einfaches und leicht zu bedienendes Tool und bietet viele fortschrittliche Speicherverwaltungsfunktionen, die Ihnen helfen, Ihre verlorenen Dateien einfach zu sichern und wiederherzustellen. Es unterstützt Linux-, Windows- und MacOS-Backup-Client und unterstützt außerdem eine breite Palette von Backup-Geräten. Bacula besteht aus mehreren Komponenten, einschließlich Bacula-Verzeichnis, Bacula, Konsole, Bacula-Speicher, Bacula-Datei und Bacula-Katalog. Jede Komponente ist für die Verwaltung bestimmter Aufträge verantwortlich.

In diesem Tutorial zeigen wir Ihnen, wie Sie ein Backup-Backup-System unter Ubuntu 20.04 installieren und konfigurieren.

Voraussetzungen

  • Ein Server mit Ubuntu 20.04 mit mindestens 2 GB RAM.
  • Der Server ist mit einem Root-Passwort konfiguriert.

Erste Schritte

Zuerst müssen Sie Ihr System auf die neueste stabile Version aktualisieren. Sie können es mit dem folgenden Befehl aktualisieren:

apt-get update -y

Sobald alle Pakete aktualisiert sind, können Sie mit dem nächsten Schritt fortfahren.

Bacula installieren

Standardmäßig ist das Bacula-Paket im Standard-Repository von Ubuntu 20.04 verfügbar. Sie können es einfach mit dem folgenden Befehl installieren:

apt-get install bacula -y

Während der Installation werden Sie aufgefordert, den Mail-Server wie unten gezeigt auszuwählen:

Postfix-Konfiguration

Wählen Sie den gewünschten Mail-Server aus und klicken Sie auf die Schaltfläche Ok. Sie werden gebeten, Ihren System-Mail-Namen wie unten gezeigt anzugeben:

System-Mail-Name

Geben Sie Ihren System-Mail-Namen an und klicken Sie auf die Schaltfläche Ok. Sie werden gebeten, eine Datenbank für Bacula wie unten gezeigt zu konfigurieren:

Bacula directorore Postgres

Klicken Sie auf die Schaltfläche Ja. Sie werden gebeten, den Host des PostgreSQL-Servers wie unten gezeigt auszuwählen:

PostgreSQL-Datenbank-Host

Wählen Sie localhost und klicken Sie auf die Schaltfläche Ok. Sie werden gebeten, das PostgreSQL-Passwort wie unten gezeigt einzugeben:

PostgreSQL-Kennwort

Geben Sie Ihr gewünschtes Passwort ein und klicken Sie auf die Schaltfläche Ok, um die Installation fortzusetzen.

Sobald das Bacula-Paket installiert ist, können Sie mit dem nächsten Schritt fortfahren.

Bacula-Speicher konfigurieren

Bevor Sie beginnen, erstellen Sie ein Verzeichnis zum Speichern der Sicherungsdateien. Sie können es mit dem folgenden Befehl erstellen:

mkdir /backup

Als nächstes ändern Sie den Eigentümer des Bacula-Verzeichnisses in Bacula-Benutzer und -Gruppe mit folgendem Befehl:

chown -R bacula:bacula /backup

Als nächstes müssen Sie die Standardkonfigurationsdatei des Bacula-Speichers bearbeiten und das Gerät und den Speicherort des Speichers definieren.

nano /etc/bacula/bacula-sd.conf

Entfernen oder kommentieren Sie die anderen Abschnitte „Device {“ und „Autochanger {“ aus und fügen Sie die folgenden Zeilen hinzu:

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

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Starten Sie dann den Bacula-Speicherdienst mit dem folgenden Befehl neu:

systemctl restart bacula-sd.service

Sie können nun den Status des Bacula-Speicherdienstes mit folgendem Befehl überprüfen:

systemctl status bacula-sd

Sie sollten die folgende Ausgabe erhalten:

? 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-Direktor konfigurieren

Als nÃ?chstes mÃ?ssen Sie die Konfigurationsdatei des Bacula-Direktors bearbeiten und Ihren Speicherort angeben. Sie können sie mit dem folgenden Befehl bearbeiten:

nano /etc/bacula/bacula-dir.conf

Fügen Sie die folgenden Zeilen hinzu, einschließlich Gerätename, Speichername, Passwort, Job, etc.

Storage {
Name = ubuntu2004-sd  # Must be equal to the "Name" parameter of the "Storage" section in the /etc/bacula/bacula-sd.conf file
Address = 127.0.0.1
Password = "aFEH-0a3QycsbYQVcoy_VoUMhAHJQ00CD" # Password must match the password in the /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"
}

Speichern und schließen Sie die Datei, wenn Sie fertig sind und starten Sie den Bacula-Director-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart bacula-dir

Sie können den Status des Bacula-Direktor-Dienstes auch mit dem folgenden Befehl überprüfen:

systemctl status bacula-dir

Sie sollten die folgende Ausgabe erhalten:

? 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.

Backup-Job verifizieren

Zu diesem Zeitpunkt ist Bacula installiert und so konfiguriert, dass es täglich um 6:00 Uhr läuft. Lassen Sie uns nun die Bacula-Konsole verwenden, um unseren ersten Backup-Job auszuführen.

bconsole

Sobald die Verbindung hergestellt ist, sollten Sie die folgende Ausgabe erhalten:

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

Als nächstes führen Sie den folgenden Befehl aus, um den Backup-Job zu starten:

*run

Sie werden aufgefordert, den Backup-Job wie unten gezeigt auszuwählen:

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

Geben Sie 2 ein, um das LocalBackup auszuwählen, das Sie in der Konfigurationsdatei definiert haben, und drücken Sie Enter. Sie sollten die folgende Ausgabe sehen:

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.

An diesem Punkt wird der Backup-Job gestartet. Sie können den Status des Backup-Jobs mit dem folgenden Befehl überprüfen:

*status

Sie werden aufgefordert, den Status der folgenden Komponenten auszuwählen:

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

Geben Sie 1 ein und drücken Sie Enter, um den Status des Director zu überprüfen. Sie sollten die folgende Ausgabe sehen:

ubuntu2004-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

====

Führen Sie als nächstes den Befehl status erneut aus und überprüfen Sie den Status des Bacula-Speichers.

*status

Sie sollten die folgende Ausgabe sehen: Sie werden aufgefordert, den Statusbefehl erneut auszuführen und den Status des Bacula-Speichers zu überprüfen:

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.
====

Als nächstes verlassen Sie die Bacula-Konsole mit dem folgenden Befehl:

*exit

Als nächstes überprüfen Sie das Backup-Verzeichnis mit dem folgenden Befehl:

ls /backup/

Sie sollten sehen, dass das Backup von Vol-0001 erstellt wurde:

Vol-0001

Schlussfolgerung

Herzlichen Glückwunsch! Sie haben das Bacula-Backup erfolgreich auf dem Ubuntu 20.04-Server installiert und konfiguriert. Sie können nun den Bacula-Client auf dem entfernten Rechner installieren und Ihr Client-System einfach sichern. Zögern Sie nicht, mich zu fragen, wenn Sie Fragen haben.

Das könnte dich auch interessieren …