Bacula Backup Server installeren op Ubuntu 20.04

Bacula is een open-source backup gereedschap dat gebruikt kan worden om gegevens over het hele netwerk te backuppen en terug te zetten. Het is een eenvoudig en gemakkelijk te gebruiken gereedschap, en biedt veel geavanceerde functies voor opslagbeheer die je helpen om gemakkelijk je verloren bestanden te back-uppen en terug te halen. Het ondersteunt Linux, Windows en macOS backup client en ondersteunt ook een brede reeks backup apparaten. Bacula is opgebouwd uit verschillende componenten, waaronder, Bacula directory, Bacula, console, Bacula opslag, Bacula bestand en Bacula catalogus. Elke component is verantwoordelijk voor het beheer van specifieke opdrachten.

In deze handleiding laten we je zien hoe je Backup backup systeem op Ubuntu 20.04 installeert en configureert.

Vereisten

  • Een server met Ubuntu 20.04 met minimaal 2 GB RAM.
  • Een root wachtwoord is de server geconfigureerd.

Aan de slag

Eerst moet je je systeem bijwerken naar de laatste stabiele versie. Je kunt het bijwerken met het volgende commando:

apt-get update -y

Als alle pakketten zijn bijgewerkt, kun je verder gaan met de volgende stap.

Installeer Bacula

Standaard is het Bacula pakket beschikbaar in de Ubuntu 20.04 standaard repository. Je kunt het eenvoudig installeren met het volgende commando:

apt-get install bacula -y

Tijdens de installatie wordt je gevraagd de mailserver te kiezen, zoals hieronder:

Postfix configuratie

Kies de gewenste mailserver en klik op de Ok knop. Je wordt gevraagd je systeem mail naam op te geven zoals hieronder:

Naam systeemmail

Geef je systeem mail naam op en klik op de Ok knop. Je wordt gevraagd een database voor bacula in te stellen zoals hieronder:

Bacula directore Postgres

Klik op de Ja knop. Je wordt gevraagd de host van de PostgreSQL server te kiezen zoals hieronder:

PostgreSQL databank host

Kies localhost en klik op de Ok knop. Je wordt gevraagd een PostgreSQL wachtwoord op te geven zoals hieronder:

PostgreSQL wachtwoord

Geef het gewenste wachtwoord en klik op de Ok knop om verder te gaan met de installatie.

Als het Bacula pakket geïnstalleerd is, kun je verder gaan met de volgende stap.

Configureer Bacula opslag

Maak, voor je begint, een map aan om de backup bestanden in op te slaan. Je kunt die aanmaken met het volgende commando:

mkdir /backup

Verander vervolgens het eigendom van de bacula directory in bacula gebruiker en groep met het volgende commando:

chown -R bacula:bacula /backup

Vervolgens moet je het standaard configuratiebestand voor de bacula opslag bewerken en het apparaat en de plaats van de opslag bepalen.

nano /etc/bacula/bacula-sd.conf

Verwijder of becommentarieer andere “Device {” en “Autochanger {” secties en voeg de volgende regels toe:

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
}

Sla het bestand op en sluit het als je klaar bent. Herstart dan de Bacula opslagdienst met het volgende commando:

systemctl restart bacula-sd.service

Je kunt nu de status van de Bacula opslag controleren met het volgende commando:

systemctl status bacula-sd

Je zou de volgende uitvoer moeten krijgen:

? 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 Director configureren

Vervolgens moet je het Bacula director configuratiebestand bewerken en je opslaglocatie opgeven. Je kunt het bewerken met het volgende commando:

nano /etc/bacula/bacula-dir.conf

Voeg de volgende regels toe, waaronder, Apparaatnaam, Opslagnaam, Wachtwoord, Taak, enz.

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"
}

Bewaar en sluit het bestand als je klaar bent en herstart dan de Bacula director dienst om de wijzigingen toe te passen:

systemctl restart bacula-dir

Je kunt ook de status van de Bacula director dienst controleren met het volgende commando:

systemctl status bacula-dir

Je zou de volgende uitvoer moeten krijgen:

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

Verifieer Backup Job

Op dit punt is Bacula geïnstalleerd en ingesteld om dagelijks om 6:00 te draaien. Laten we nu de Bacula Console gebruiken om onze eerste backup opdracht uit te voeren.

bconsole

Eenmaal verbonden zou je de volgende uitvoer moeten krijgen:

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

Voer vervolgens het volgende commando uit om de backup job te starten:

*run

Je wordt gevraagd de backup job te kiezen zoals hieronder:

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

Type 2 om de LocalBackup te kiezen die je in het configuratiebestand gedefinieerd hebt en druk op Enter. Je zou de volgende uitvoer moeten zien:

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.

Op dit punt is de Backup job gestart. Je kunt de status van de backup opdracht controleren met het volgende commando:

*status

Je wordt gevraagd de status van de volgende componenten te selecteren:

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

Type 1 en druk op Enter om de status van de Director te controleren. Je zou de volgende uitvoer moeten zien:

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

====

Voer vervolgens het status commando nogmaals uit en controleer de status van de Bacula opslag.

*status

Je zou de volgende uitvoer moeten zien:

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

Verlaat vervolgens de Bacula console met het volgende commando:

*exit

Controleer vervolgens de back-up map met het volgende commando:

ls /backup/

Je zou moeten zien dat Vol-0001 back-up is gemaakt:

Vol-0001

Conclusie

Gefeliciteerd! Je hebt met succes Bacula backup geïnstalleerd en geconfigureerd op Ubuntu 20.04 server. Je kunt nu Bacula client op de externe machine installeren en gemakkelijk een backup maken van je client systeem. Voel je vrij me te vragen als je vragen hebt.