Backup

Bacula – network backup solution

Bacula is a set of computer programs for the backup, recovery, and verification of computer data across a network of computers of different kinds.

Bacula is relatively easy to use and efficient, while offering many advanced storage management features that make it easy to find and recover lost or damaged files.

Bacula is made up of the following five major components or services: Director, Console, File, Storage, and Monitor services.

The Bacula Director service supervises all the backup, restore, verify and archive operations. The Bacula Console service allows the administrator or user to communicate with the Bacula Director Currently, the Bacula Console is available in three versions: text-based console interface, GNOME-based interface, and a wxWidgets graphical interface.

The Bacula File service (also known as the Client program) is installed on the machine to be backed up. The Bacula Storage services consist of the software programs that perform the storage and recovery of the file attributes and data to the physical backup media or volumes.

The Catalog services are comprised of the software programs responsible for maintaining the file indexes and volume databases for all files backed up.

Key Features

  • Backup and restore clients of any type ensuring that all attributes of files are properly saved and restored.
  • Multi-volume backups supported.
  • A full comprehensive SQL standard database of all files backed up. This permits online viewing of files saved on any particular Volume.
  • Automatic pruning of the database (removal of old records) thus simplifying database administration.
  • Any SQL database engine can be used making Bacula very flexible. Drivers currently exist for MySQL, PostgreSQL, and SQLite.
  • Built-in Job scheduler.
  • Rescue CD for Linux systems

Features in more detail:

  • Job Control
    • Network backup/restore with centralized Director.
    • Internal scheduler for automatic Job execution.
    • Scheduling of multiple Jobs at the same time.
    • You may run one Job at a time or multiple simultaneous Jobs (sometimes called multiplexing).
    • Job sequencing using priorities.
    • Console interface to the Director allowing complete control. A shell, GNOME
      GUI and wxWidgets GUI versions of the Console program are available. Note, the GNOME GUI program currently offers very few additional features over the shell program. With version 2.2.0, a much more complete GUI interface has been written, which is called the Bacula Admistration Tool, or bat.
  • Security
    • Verification of files previously cataloged, permitting a Tripwire like capability (system break-in detection).
    • CRAM-MD5 password authentication between each component (daemon).
    • Configurable TLS (SSL) communications encryption between each component.
    • Configurable Data (on Volume) encryption on a Client by Client basis.
    • Computation of MD5 or SHA1 signatures of the file data if requested.
  • Restore Features
    • Restore of one or more files selected interactively either for the current backup or a backup prior to a specified time and date.
    • Restore of a complete system starting from bare metal. This is mostly automated for Linux systems and partially automated for Solaris. See Disaster Recovery Using Bacula. This is also reported to work on Win2K/XP systems.
    • Listing and Restoration of files using stand-alone bls and bextract tool programs. Among other things, this permits extraction of files when Bacula and/or the catalog are not available. Note, the recommended way to restore files is using the restore command in the Console. These programs are designed for use as a last resort.
    • Ability to restore the catalog database rapidly by using bootstrap files (previously saved).
    • Ability to recreate the catalog database by scanning backup Volumes using the bscan program.
  • SQL Catalog
    • Catalog database facility for remembering Volumes,
      Pools, Jobs, and Files backed up.
    • Support for MySQL, PostgreSQL, and SQLite Catalog databases.
    • User extensible queries to the MySQL, PostgreSQL and SQLite databases.
  • Advanced Volume and Pool Management
    • Labeled Volumes, preventing accidental overwriting (at least by Bacula).
    • Any number of Jobs and Clients can be backed up to a single Volume. That is, you can backup and restore Linux, Unix, Sun, and Windows machines to the same Volume.
    • Multi-volume saves. When a Volume is full, Bacula automatically requests the next Volume and continues the backup.
    • Pool and Volume library management providing Volume flexibility (e.g. monthly, weekly, daily Volume sets, Volume sets segregated by Client, …).
    • Machine independent Volume data format. Linux, Solaris, and Windows clients can all be backed up to the same Volume if desired.
    • The Volume data format is upwards compatible so that old Volumes can always be read.
    • A flexible message handler including routing of messages from any daemon back to the Director and automatic email reporting.
    • Data spooling to disk during backup with subsequent write to tape from the spooled disk files. This prevents tape “shoe shine” during Incremental/Differential backups.
  • Advanced Support for most Storage Devices
    • Autochanger support using a simple shell interface that can interface to virtually any autoloader program. A script for mtx is provided.
    • Support for autochanger barcodes — automatic tape labeling from barcodes.
    • Automatic support for multiple autochanger magazines either using barcodes or by reading the tapes.
    • Support for multiple drive autochangers.
    • Raw device backup/restore. Restore must be to the same device.
    • All Volume blocks (approximately 64K bytes) contain a data checksum.
    • Migration support — move data from one Pool to another or one Volume to another.
    • Supports writing to DVD.
  • Miscellaneous
    • Multi-threaded implementation.
    • A comprehensive and extensible configuration file for each daemon.

Website: blog.bacula.org
Support: Documentation, GitLab Code Repository
Developer: Bacula Development Team
License: AGLP v3

Bacula

Bacula is written in C and C++. Learn C with our recommended free books and free tutorials. Learn C++ with our recommended free books and free tutorials.


Related Software

Backup Tools
resticFast, efficient and secure backup software
BorgDeduplicating backup software
DuplicityEncrypted bandwidth-efficient backup
TimeShiftTakes regular incremental snapshots of the filesystem
DuplicatiStore encrypted backups online
bupBackup a system based on the git packfile format
Déjà DupHides the complexity of doing backups the Right Way
BaculaNetwork backup, recovery and verification
KopiaSecure backup/restore tool that allows you to create encrypted snapshots
ClonezillaOffers similar functionality to Symantec Ghost
BareosBackup Archiving Recovery Open Sourced
rsyncFast remote file copy program
BackupPCHigh-performance, enterprise-grade system for backing up PCs
VortaDesktop client for Borg Backup
BackrestWeb UI and orchestrator for restic backup
Back in TimeEquivalent of OS X's Time Machine
UrBackupEasy to setup open source client/server backup system
Rescuezilla Easy backup, recovery & bare metal restore
Mondo RescueA powerful disaster recovery suite
KBackupBackup program targeted at non-computer experts
rsnapshotLocal and remote filesystem snapshot utility
AmandaAdvanced Maryland Automatic Network Disk Archiver
FOGCloning / imaging solution / rescue suite
PartcloneProvides utilities to save and restore used blocks on a partition
XtraBackupBackup tool for InnoDB and XtraDB databases
PlakarScalable backup solution
kupBackup scheduler for the Plasma desktop
BURPUses librsync to save network traffic and space
BtrbkBackup tool for btrfs subvolumes
Pika BackupApp focused on backups of personal data
PINGAlso offers similar functionality to Symantec Ghost
darFull featured archiver with support for differential backups
tarTar archiving utility
Cedar BackupLocal and remote backups to CD or DVD media
shallow-backupGit-integrated backup tool
ArchiveKeepKeeps your files archived in multiple places
ZnapZendZFS centric backup tool
VykarFast, encrypted, deduplicated backups in Rust

Read our verdict in the software roundup.


Best Free and Open Source Software Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.

This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk.

You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more.

Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form.
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments