Bacula
# Bacula

Bacula ist eine freie Software, um Daten in einem Rechnernetz mit heterogenen Clients zu sichern, wiederherzustellen oder zu überprüfen. Technisch gesehen ist es ein netzwerkfähiges Datensicherungsprogramm mit Client/Server-Architektur.

Bacula unterstützt neben Linux-, Unix-, macOS- und Windows-Backup-Clients eine Reihe von professionellen Backup-Geräten einschließlich Tape-Libraries. Administratoren und Betreiber können das System über eine Konsole, Grafische Benutzeroberfläche oder Web-Schnittstelle steuern; die Konfiguration erfolgt in Textdateien. Als Backend für die Speicherung von Meta-Informationen werden die Datenbanksysteme MySQL, PostgreSQL und SQLite verwendet.

2007 wurde Bacula gemeinsam mit Amanda und BackupPC als eine der drei meist bekannten Open-Source Backup-Utilities genannt.

## Struktur

Bacula besteht im Prinzip aus drei Daemons, die die Funktionen für Datensicherung und -wiederherstellung bereitstellen. Die Daemons kommunizieren über TCP/IP, auch wenn Bacula auf einer einzigen Maschine installiert ist:

### Director

    Der Director ist die zentrale Steuereinheit, in der die meisten Einstellungen zum Backup und Restore gespeichert sind. Im Director werden die übrigen Daemons definiert und das Verhalten der Daemons gesteuert.

### Storage Daemon

    Der Storage Daemon erlaubt den Zugriff auf Tape-Libraries, Bandlaufwerke und Festplatten als Sicherungsziele und nimmt die Anweisungen des Directors entgegen, von welchem File Daemon gesichert oder zu welchem rückgesichert werden soll.

### File Daemon

    Der File Daemon ist auf den Clients installiert und nimmt die Anweisungen des Directors entgegen, welche Dateien über welchen Storage Daemon gesichert oder rückgesichert werden sollen.

### Catalog

    Der Catalog ist eine Datenbank, die alle Sicherungen aufzeichnet und das Rücksichern einzelner Dateien oder Verzeichnisse sowie das Erstellen von Reports ermöglicht.

Zuletzt besteht Bacula aus einem weiteren Element, der bconsole. Über diese Kommandozeile erhält man Zugriff auf den Director und kann manuell Daten sichern oder rücksichern, Bänder labeln, und neben vielen weiteren Operationen sich beispielsweise einen Überblick über gelaufene Sicherungen geben lassen. Neben der Kommandozeile mit bconsole gibt es ein GUI namens BAT sowie mehrere Web-Frontends, von denen bweb das funktional umfangreichste ist.

